python-gsmmodem-stk


Namepython-gsmmodem-stk JSON
Version 0.14.0 PyPI version JSON
download
home_pagehttps://github.com/strokovnjaka/python-gsmmodem
SummaryControl an attached GSM modem: send/receive SMS messages, handle calls, etc
upload_time2024-02-07 13:09:48
maintainer
docs_urlNone
authorFrancois Aucamp
requires_python
licenseLGPLv3+
keywords gsm sms modem mobile phone usb serial
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage
            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"
}
        
Elapsed time: 2.57336s