python-gsmmodem-stk
===================
*GSM modem module for Python*
python-gsmmodem is a module that allows easy control of a GSM modem attached
to the system. It also includes a couple of useful commandline utilities for
interacting with a GSM modem.
Its features include:
- simple methods for sending SMS messages, checking signal level, etc
- easy-to-use API for starting and responding to USSD sessions and making voice
calls
- handling incoming phone calls and received SMS messages via callback methods
- support for SMS PDU and text mode
- support for tracking SMS status reports
- wraps AT command errors into Python exceptions by default
- modular design; you easily issue your own AT commands to the modem (with
error checking), or read/write directly from/to the modem if you prefer
- comprehensive test suite
Bundled utilities:
- **GSMTerm**: an easy-to-use serial terminal for communicating with an
attached GSM modem. It features command completion, built-in help for many AT
commands, history, context-aware prompt, etc.
- **sendsms.py**: a simple command line script to send SMS messages
- **identify-modem.py**: simple utility to identify attached modem. Can also be
used to provide debug information used for development of python-gsmmodem.
How to use this package
-----------------------
Go to `examples/` directory in this repo.
Requirements
------------
- Python 3.3 or later
- pySerial
How to install this package
---------------------------
There are multiple ways to install ``python-gsmmodem-stk`` package:
Automatic installation of the latest "stable" release from PyPI
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
::
pip install python-gsmmodem-stk
`pip <http://www.pip-installer.org>`_ will automatically download and install
all dependencies, as required. You can also utilise ``easy_install`` in the
same manner as using ``pip`` above.
If you are utilising ``python-gsmmodem-stk`` as part of another project,
add it to your ``install_requires`` section of your ``setup.py`` file and
upon your project's installation, it will be pulled in automatically.
Manual installation of the latest "stable" release from PyPI
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Download a ``python-gsmmodem-stk`` archive from `PyPI
<https://pypi.python.org/pypi/python-gsmmodem-stk>`_, extract it and install the package with command::
python setup.py install
Note that ``python-gsmmodem-stk`` package relies on ``pySerial`` for serial communications:
https://github.com/pyserial/pyserial
Installation of the latest commit from GitHub
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Clone from GitHub::
git clone https://github.com/strokovnjaka/python-gsmmodem.git
cd python-gsmmodem/
python setup.py install
Note that ``python-gsmmodem-stk`` package relies on ``pySerial`` for serial communications:
https://github.com/pyserial/pyserial
Testing the package
-------------------
.. |Build Status| image:: https://travis-ci.org/babca/python-gsmmodem.svg?branch=master
.. _Build Status: https://travis-ci.org/babca/python-gsmmodem
.. |Coverage Status| image:: https://coveralls.io/repos/github/babca/python-gsmmodem/badge.svg?branch=master
.. _Coverage Status: https://coveralls.io/github/babca/python-gsmmodem?branch=master
|Build Status|_ |Coverage Status|_
To run all unit tests, do::
python setup.py test
Unit test code coverage information may be generated by using `coverage
<https://pypi.python.org/pypi/coverage/>`_. You can execute it directly from
setup.py by doing::
python setup.py coverage
This will run all unit tests and report on code coverage statistics.
Building documentation
----------------------
This package contains `Sphinx <http://sphinx-doc.org>`_-based documentation.
To manually build or test the documentation locally, do the following::
git clone https://github.com/strokovnjaka/python-gsmmodem.git
cd python-gsmmodem
pip install .[doc]
cd doc
make html
For true isolation, you may wish to run the above commands within a
`virtualenv <http://www.virtualenv.org/>`_, which will help you manage
this development installation.
License information
-------------------
Copyright (C) 2013 Francois Aucamp
See AUTHORS for all authors and contact information.
License: GNU Lesser General Public License, version 3 or later; see COPYING
included in this archive for details.
FAQ
---
List all modem ports
~~~~~~~~~~~~~~~~~~~~
You can simply list all ttyUSB devices before and after pluging the modem in.
ls /dev/ttyUSB*
Device or resource busy error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Check running processes. The device could be occupied by another program or another instance of gsmmodem which is still running in the background. Run ``sudo lsof | grep tty``, try to locate the problematic process and ``sudo kill <PID>``.
Raw data
{
"_id": null,
"home_page": "https://github.com/strokovnjaka/python-gsmmodem",
"name": "python-gsmmodem-stk",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "gsm,sms,modem,mobile,phone,usb,serial",
"author": "Francois Aucamp",
"author_email": "francois.aucamp@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/96/1f/0be710d958dedf7c67f4f929ff932cd3446a68ad0b4cbf1fbf049a397af2/python-gsmmodem-stk-0.14.0.tar.gz",
"platform": null,
"description": "python-gsmmodem-stk\n===================\n*GSM modem module for Python*\n\npython-gsmmodem is a module that allows easy control of a GSM modem attached\nto the system. It also includes a couple of useful commandline utilities for\ninteracting with a GSM modem. \n\nIts features include:\n\n- simple methods for sending SMS messages, checking signal level, etc\n- easy-to-use API for starting and responding to USSD sessions and making voice\n calls\n- handling incoming phone calls and received SMS messages via callback methods\n- support for SMS PDU and text mode\n- support for tracking SMS status reports\n- wraps AT command errors into Python exceptions by default\n- modular design; you easily issue your own AT commands to the modem (with\n error checking), or read/write directly from/to the modem if you prefer\n- comprehensive test suite\n\nBundled utilities:\n\n- **GSMTerm**: an easy-to-use serial terminal for communicating with an\n attached GSM modem. It features command completion, built-in help for many AT\n commands, history, context-aware prompt, etc.\n- **sendsms.py**: a simple command line script to send SMS messages\n- **identify-modem.py**: simple utility to identify attached modem. Can also be\n used to provide debug information used for development of python-gsmmodem. \n\nHow to use this package\n-----------------------\n\nGo to `examples/` directory in this repo.\n\n\nRequirements\n------------\n\n- Python 3.3 or later\n- pySerial\n\n\nHow to install this package\n---------------------------\n\nThere are multiple ways to install ``python-gsmmodem-stk`` package:\n\nAutomatic installation of the latest \"stable\" release from PyPI\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n pip install python-gsmmodem-stk\n\n`pip <http://www.pip-installer.org>`_ will automatically download and install\nall dependencies, as required. You can also utilise ``easy_install`` in the\nsame manner as using ``pip`` above. \n\nIf you are utilising ``python-gsmmodem-stk`` as part of another project,\nadd it to your ``install_requires`` section of your ``setup.py`` file and\nupon your project's installation, it will be pulled in automatically.\n\nManual installation of the latest \"stable\" release from PyPI\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nDownload a ``python-gsmmodem-stk`` archive from `PyPI\n<https://pypi.python.org/pypi/python-gsmmodem-stk>`_, extract it and install the package with command::\n\n python setup.py install\n\nNote that ``python-gsmmodem-stk`` package relies on ``pySerial`` for serial communications: \nhttps://github.com/pyserial/pyserial\n\nInstallation of the latest commit from GitHub\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nClone from GitHub::\n\n git clone https://github.com/strokovnjaka/python-gsmmodem.git\n cd python-gsmmodem/\n python setup.py install\n\nNote that ``python-gsmmodem-stk`` package relies on ``pySerial`` for serial communications: \nhttps://github.com/pyserial/pyserial\n\nTesting the package\n-------------------\n\n.. |Build Status| image:: https://travis-ci.org/babca/python-gsmmodem.svg?branch=master\n.. _Build Status: https://travis-ci.org/babca/python-gsmmodem\n\n.. |Coverage Status| image:: https://coveralls.io/repos/github/babca/python-gsmmodem/badge.svg?branch=master\n.. _Coverage Status: https://coveralls.io/github/babca/python-gsmmodem?branch=master\n\n|Build Status|_ |Coverage Status|_\n\nTo run all unit tests, do::\n\n python setup.py test\n\nUnit test code coverage information may be generated by using `coverage\n<https://pypi.python.org/pypi/coverage/>`_. You can execute it directly from\nsetup.py by doing::\n\n python setup.py coverage\n\nThis will run all unit tests and report on code coverage statistics.\n\n\nBuilding documentation\n----------------------\n\nThis package contains `Sphinx <http://sphinx-doc.org>`_-based documentation.\nTo manually build or test the documentation locally, do the following::\n\n git clone https://github.com/strokovnjaka/python-gsmmodem.git\n cd python-gsmmodem\n pip install .[doc]\n cd doc\n make html\n\nFor true isolation, you may wish to run the above commands within a\n`virtualenv <http://www.virtualenv.org/>`_, which will help you manage\nthis development installation.\n\n\nLicense information\n-------------------\n\nCopyright (C) 2013 Francois Aucamp \nSee AUTHORS for all authors and contact information. \n\nLicense: GNU Lesser General Public License, version 3 or later; see COPYING\n included in this archive for details.\n\nFAQ\n---\n\nList all modem ports\n~~~~~~~~~~~~~~~~~~~~\n\nYou can simply list all ttyUSB devices before and after pluging the modem in.\n\n ls /dev/ttyUSB*\n\n\nDevice or resource busy error\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nCheck running processes. The device could be occupied by another program or another instance of gsmmodem which is still running in the background. Run ``sudo lsof | grep tty``, try to locate the problematic process and ``sudo kill <PID>``.\n",
"bugtrack_url": null,
"license": "LGPLv3+",
"summary": "Control an attached GSM modem: send/receive SMS messages, handle calls, etc",
"version": "0.14.0",
"project_urls": {
"Homepage": "https://github.com/strokovnjaka/python-gsmmodem"
},
"split_keywords": [
"gsm",
"sms",
"modem",
"mobile",
"phone",
"usb",
"serial"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7660394dd15417db4104ba04430096829dd2b544270e58dd6477f5e462dbd29f",
"md5": "582161c2d547bf760119d429a8a8160f",
"sha256": "90609a23f964c1c064a3c79959ea6f704289e70ab7f73c0c1310cf606d5fa865"
},
"downloads": -1,
"filename": "python_gsmmodem_stk-0.14.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "582161c2d547bf760119d429a8a8160f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 70233,
"upload_time": "2024-02-07T13:09:46",
"upload_time_iso_8601": "2024-02-07T13:09:46.542867Z",
"url": "https://files.pythonhosted.org/packages/76/60/394dd15417db4104ba04430096829dd2b544270e58dd6477f5e462dbd29f/python_gsmmodem_stk-0.14.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "961f0be710d958dedf7c67f4f929ff932cd3446a68ad0b4cbf1fbf049a397af2",
"md5": "777949b00506dbf5f9cfa1ddc2c78b5d",
"sha256": "f9b5467580c5049b13b1602e10c500fb9f7b3b3389af525af91b110f7d40b002"
},
"downloads": -1,
"filename": "python-gsmmodem-stk-0.14.0.tar.gz",
"has_sig": false,
"md5_digest": "777949b00506dbf5f9cfa1ddc2c78b5d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 118755,
"upload_time": "2024-02-07T13:09:48",
"upload_time_iso_8601": "2024-02-07T13:09:48.456951Z",
"url": "https://files.pythonhosted.org/packages/96/1f/0be710d958dedf7c67f4f929ff932cd3446a68ad0b4cbf1fbf049a397af2/python-gsmmodem-stk-0.14.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-07 13:09:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "strokovnjaka",
"github_project": "python-gsmmodem",
"travis_ci": true,
"coveralls": true,
"github_actions": true,
"requirements": [],
"lcname": "python-gsmmodem-stk"
}