[Python-modules-commits] [python-gammu] 01/01: Imported Upstream version 2.0

Michal Cihar nijel at moszumanska.debian.org
Tue Apr 14 07:05:20 UTC 2015


This is an automated email from the git hooks/post-receive script.

nijel pushed a commit to branch master
in repository python-gammu.

commit 33d639a58f20ab1fcb590b484c24252e1d92f445
Author: Michal Čihař <michal at cihar.com>
Date:   Tue Apr 14 09:04:54 2015 +0200

    Imported Upstream version 2.0
---
 AUTHORS                                    |    3 +
 COPYING                                    |  340 ++
 MANIFEST.in                                |    8 +
 PKG-INFO                                   |   73 +
 README.rst                                 |   49 +
 examples/__init__.py                       |    0
 examples/addcontacts.py                    |   32 +
 examples/addfile.py                        |   43 +
 examples/backup_convertor.py               |   15 +
 examples/batteryinfo.py                    |   19 +
 examples/data/cgi.jpg                      |  Bin 0 -> 10294 bytes
 examples/debugging.py                      |   35 +
 examples/dialvoice.py                      |   26 +
 examples/doc-exceptions.py                 |   18 +
 examples/dummy_phone.py                    |  222 +
 examples/filesystem_test.py                |  264 ++
 examples/getallcalendar.py                 |   37 +
 examples/getallmemory.py                   |   42 +
 examples/getallmemory_nonext.py            |   39 +
 examples/getallsms.py                      |   42 +
 examples/getallsms_decode.py               |   64 +
 examples/getalltodo.py                     |   34 +
 examples/getdiverts.py                     |   18 +
 examples/incoming.py                       |   63 +
 examples/listfilesystem.py                 |  133 +
 examples/mass_sms.py                       |   27 +
 examples/pdu_decoder.py                    |   16 +
 examples/read_sms_backup.py                |   57 +
 examples/savesmspercontact.py              |  157 +
 examples/sendlongsms.py                    |   57 +
 examples/sendsms.py                        |   38 +
 examples/service_numbers.py                |   87 +
 examples/setdiverts.py                     |   24 +
 examples/sms_replier.py                    |   83 +
 examples/smsbackup.py                      |   15 +
 examples/smsd_inject.py                    |   20 +
 examples/smsd_state.py                     |    9 +
 examples/vcs.py                            |   58 +
 examples/worker.py                         |  104 +
 gammu/__init__.py                          |   37 +
 gammu/data.py                              |  527 +++
 gammu/exception.py                         |   44 +
 gammu/smsd.py                              |   25 +
 gammu/src/convertors/backup.c              |  251 ++
 gammu/src/convertors/base.c                |  371 ++
 gammu/src/convertors/bitmap.c              |  494 +++
 gammu/src/convertors/calendar.c            |  700 +++
 gammu/src/convertors/call.c                |  107 +
 gammu/src/convertors/diverts.c             |  166 +
 gammu/src/convertors/file.c                |  351 ++
 gammu/src/convertors/memory.c              |  705 +++
 gammu/src/convertors/misc.c                |  176 +
 gammu/src/convertors/ringtone.c            |  640 +++
 gammu/src/convertors/sms.c                 | 2153 +++++++++
 gammu/src/convertors/string.c              |  158 +
 gammu/src/convertors/time.c                |  264 ++
 gammu/src/convertors/todo.c                |  436 ++
 gammu/src/convertors/wap.c                 |  195 +
 gammu/src/data.c                           |   59 +
 gammu/src/errors.c                         |  156 +
 gammu/src/gammu.c                          | 6595 ++++++++++++++++++++++++++++
 gammu/src/misc.c                           |   57 +
 gammu/src/smsd.c                           |  323 ++
 gammu/worker.py                            |  344 ++
 include/convertors.h                       |  433 ++
 include/data.h                             |   30 +
 include/errors.h                           |   73 +
 include/misc.h                             |   52 +
 python_gammu.egg-info/PKG-INFO             |   73 +
 python_gammu.egg-info/SOURCES.txt          |   88 +
 python_gammu.egg-info/dependency_links.txt |    1 +
 python_gammu.egg-info/top_level.txt        |    1 +
 setup.cfg                                  |    5 +
 setup.py                                   |  135 +
 test/__init__.py                           |    0
 test/data/02.vcs                           |   18 +
 test/data/UK32Holidays.ics                 |  554 +++
 test/data/bug-779.vcf                      |   99 +
 test/data/gammu.vcf                        |   16 +
 test/data/k770.vcs                         |   30 +
 test/data/rrule.ics                        |   41 +
 test/data/sqlite.sql                       |  149 +
 test/test_backup.py                        |  124 +
 test/test_config.py                        |  128 +
 test/test_data.py                          |   30 +
 test/test_dummy.py                         |  359 ++
 test/test_errors.py                        |   33 +
 test/test_sms.py                           |  189 +
 test/test_smsd.py                          |  102 +
 test/test_worker.py                        |  344 ++
 90 files changed, 20812 insertions(+)

diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..f493af0
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,3 @@
+Michal Čihař <michal at cihar.com>
+Marcin Wiącek <marcin at mwiacek.com>
+...and many other contributors.
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..7a8e8ab
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,340 @@
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+

+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+

+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+

+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+

+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+

+	    How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/MANIFEST.in b/MANIFEST.in
new file mode 100644
index 0000000..9877d8a
--- /dev/null
+++ b/MANIFEST.in
@@ -0,0 +1,8 @@
+include AUTHORS
+include COPYING
+include README.rst
+include include/*.h
+recursive-include examples *.py
+recursive-include test *.py
+include test/data/*.*
+include examples/data/*.jpg
diff --git a/PKG-INFO b/PKG-INFO
new file mode 100644
index 0000000..c3dc381
--- /dev/null
+++ b/PKG-INFO
@@ -0,0 +1,73 @@
+Metadata-Version: 1.1
+Name: python-gammu
+Version: 2.0
+Summary: Gammu bindings
+Home-page: http://wammu.eu/python-gammu/
+Author: Michal Čihař
+Author-email: michal at cihar.com
+License: GPLv2
+Download-URL: http://wammu.eu/download/gammu/
+Description: python-gammu
+        ============
+        
+        .. image:: https://travis-ci.org/gammu/python-gammu.svg?branch=master
+            :target: https://travis-ci.org/gammu/python-gammu
+        
+        .. image:: https://www.codacy.com/project/badge/c7e87df480fb4609aa48482873f5c46b
+            :target: https://www.codacy.com/public/michal_2/python-gammu_2
+        
+        .. image:: https://scrutinizer-ci.com/g/gammu/python-gammu/badges/quality-score.png?b=master
+           :target: https://scrutinizer-ci.com/g/gammu/python-gammu/?branch=master
+        
+        .. image:: https://landscape.io/github/gammu/python-gammu/master/landscape.svg?style=flat
+           :target: https://landscape.io/github/gammu/python-gammu/master
+        
+        .. image:: https://coveralls.io/repos/gammu/python-gammu/badge.svg
+            :target: https://coveralls.io/r/gammu/python-gammu
+        
+        .. image:: https://buildtimetrend.herokuapp.com/badge/gammu/python-gammu/latest
+            :target: https://buildtimetrend.herokuapp.com/dashboard/gammu/python-gammu
+        
+        Python bindings for Gammu library.
+        
+        Homepage
+        ========
+        
+        <http://wammu.eu/python-gammu/>
+        
+        License
+        =======
+        
+        GNU GPL version 2.
+        
+        Documentation
+        =============
+        
+        Please see included python documentation::
+        
+            >>> import gammu
+            >>> help(gammu)
+        
+        Alternatively you can use Sphinx to generate browsable version, which is
+        also available on-line at <http://wammu.eu/docs/manual/>.
+        
+        Feedback and bug reports
+        ========================
+        
+        Any feedback is welcome, see <http://wammu.eu/support/> for information
+        how to contact developers.
+        
+Keywords: mobile,phone,SMS,contact,gammu,calendar,todo
+Platform: Linux
+Platform: Mac OSX
+Platform: Windows XP/2000/NT
+Platform: Windows 95/98/ME
+Classifier: Development Status :: 5 - Production/Stable
+Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: Operating System :: Microsoft :: Windows :: Windows 95/98/2000
+Classifier: Operating System :: Microsoft :: Windows :: Windows NT/2000
+Classifier: Operating System :: POSIX
+Classifier: Operating System :: Unix
+Classifier: Programming Language :: Python
+Classifier: Programming Language :: C
+Classifier: Topic :: Communications :: Telephony
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..25f4293
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,49 @@
+python-gammu
+============
+
+.. image:: https://travis-ci.org/gammu/python-gammu.svg?branch=master
+    :target: https://travis-ci.org/gammu/python-gammu
+
+.. image:: https://www.codacy.com/project/badge/c7e87df480fb4609aa48482873f5c46b
+    :target: https://www.codacy.com/public/michal_2/python-gammu_2
+
+.. image:: https://scrutinizer-ci.com/g/gammu/python-gammu/badges/quality-score.png?b=master
+   :target: https://scrutinizer-ci.com/g/gammu/python-gammu/?branch=master
+
+.. image:: https://landscape.io/github/gammu/python-gammu/master/landscape.svg?style=flat
+   :target: https://landscape.io/github/gammu/python-gammu/master
+
+.. image:: https://coveralls.io/repos/gammu/python-gammu/badge.svg
+    :target: https://coveralls.io/r/gammu/python-gammu
+
+.. image:: https://buildtimetrend.herokuapp.com/badge/gammu/python-gammu/latest
+    :target: https://buildtimetrend.herokuapp.com/dashboard/gammu/python-gammu
+
+Python bindings for Gammu library.
+
+Homepage
+========
+
+<http://wammu.eu/python-gammu/>
+
+License
+=======
+
+GNU GPL version 2.
+
+Documentation
+=============
+
+Please see included python documentation::
+
+    >>> import gammu
+    >>> help(gammu)
+
+Alternatively you can use Sphinx to generate browsable version, which is
+also available on-line at <http://wammu.eu/docs/manual/>.
+
+Feedback and bug reports
+========================
+
+Any feedback is welcome, see <http://wammu.eu/support/> for information
+how to contact developers.
diff --git a/examples/__init__.py b/examples/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/examples/addcontacts.py b/examples/addcontacts.py
new file mode 100755
index 0000000..2733e4a
--- /dev/null
+++ b/examples/addcontacts.py
@@ -0,0 +1,32 @@
+#!/usr/bin/env python
+
+from __future__ import print_function
+import gammu
+import sys
+
+
+def main():
+    if len(sys.argv) != 3:
+        print(
+            'This requires two parameters: '
+            'memory_type and backup file (eg. vcard)!'
+        )
+        sys.exit(1)
+
+    state_machine = gammu.StateMachine()
+    state_machine.ReadConfig()
+    state_machine.Init()
+
+    memory = sys.argv[1]
+    filename = sys.argv[2]
+
+    backup = gammu.ReadBackup(filename)
+
+    for item in backup['PhonePhonebook']:
+        item['MemoryType'] = memory
+        loc = state_machine.AddMemory(item)
+        print(('Added item to location %d' % loc))
+
+
+if __name__ == '__main__':
+    main()
diff --git a/examples/addfile.py b/examples/addfile.py
new file mode 100755
index 0000000..0abad89
--- /dev/null
+++ b/examples/addfile.py
@@ -0,0 +1,43 @@
+#!/usr/bin/env python
+
+from __future__ import print_function
+import gammu
+import os
+import sys
+
+
+def main():
+    if len(sys.argv) != 3:
+        print('This requires two parameters: file to upload and path!')
+        sys.exit(1)
+
+    with open(sys.argv[1], 'rb') as handle:
+        data = handle.read()
+
+    state_machine = gammu.StateMachine()
+    state_machine.ReadConfig()
+    state_machine.Init()
+
+    # Check AddFilePart
+    print("\n\nExpection: Put specified file onto Memorycard on phone")
+    file_f = {
+        "ID_FullName": sys.argv[2],
+        "Name": os.path.basename(sys.argv[1]),
+        "Buffer": data,
+        "Protected": 0,
+        "ReadOnly": 0,
+        "Hidden": 0,
+        "System": 0,
+        'Finished': 0,
+        'Folder': 0,
+        'Level': 0,
+        'Type': 'Other',
+        "Pos": 0,
+    }
+
+    while not file_f['Finished']:
+        file_f = state_machine.AddFilePart(file_f)
+
+
+if __name__ == "__main__":
+    main()
diff --git a/examples/backup_convertor.py b/examples/backup_convertor.py
new file mode 100755
index 0000000..b5c353f
--- /dev/null
+++ b/examples/backup_convertor.py
@@ -0,0 +1,15 @@
+#!/usr/bin/env python
+
+from __future__ import print_function
+import gammu
+
+import sys
+if len(sys.argv) != 3:
+    print(
+        'This requires two parameter with file names!'
+        ' First is input, second output.'
+    )
+    sys.exit(1)
+
+backup = gammu.ReadBackup(sys.argv[1])
+gammu.SaveBackup(sys.argv[2], backup)
diff --git a/examples/batteryinfo.py b/examples/batteryinfo.py
new file mode 100755
index 0000000..68ce7dd
--- /dev/null
+++ b/examples/batteryinfo.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+
+from __future__ import print_function
+import gammu
+import sys
+
+state_machine = gammu.StateMachine()
+if len(sys.argv) >= 2:
+    state_machine.ReadConfig(Filename=sys.argv[1])
+    del sys.argv[1]
+else:
+    state_machine.ReadConfig()
+state_machine.Init()
+
+status = state_machine.GetBatteryCharge()
+
+for x in status:
+    if status[x] != -1:
+        print(("%20s: %s" % (x, status[x])))
diff --git a/examples/data/cgi.jpg b/examples/data/cgi.jpg
new file mode 100644
index 0000000..f17e417
Binary files /dev/null and b/examples/data/cgi.jpg differ
diff --git a/examples/debugging.py b/examples/debugging.py
new file mode 100755
index 0000000..c584e67
--- /dev/null
+++ b/examples/debugging.py
@@ -0,0 +1,35 @@
+#!/usr/bin/env python
+
+from __future__ import print_function
+import gammu
+import sys
+
+
+def main():
+    # Global debug level
+    gammu.SetDebugFile(sys.stderr)
+    gammu.SetDebugLevel('textall')
+
+    state_machine = gammu.StateMachine()
+    state_machine.ReadConfig()
+
+    # Use global debug stub regardless configuration
+    c = state_machine.GetConfig(0)
+    c['UseGlobalDebugFile'] = True
+    state_machine.SetConfig(0, c)
+
+    state_machine.Init()
+
+    manufacturer = state_machine.GetManufacturer()
+    model = state_machine.GetModel()
+    imei = state_machine.GetIMEI()
+    firmware = state_machine.GetFirmware()
+    print('Phone infomation:')
+    print(('%-15s: %s' % ('Manufacturer', manufacturer)))
+    print(('%-15s: %s (%s)' % ('Model', model[0], model[1])))
+    print(('%-15s: %s' % ('IMEI', imei)))
+    print(('%-15s: %s' % ('Firmware', firmware[0])))
+
+
+if __name__ == '__main__':
+    main()
diff --git a/examples/dialvoice.py b/examples/dialvoice.py
new file mode 100755
index 0000000..8a125f0
--- /dev/null
+++ b/examples/dialvoice.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python
+
+from __future__ import print_function
+import gammu
+import sys
+
+# Create object for talking with phone
+state_machine = gammu.StateMachine()
+
+# Read the configuration (~/.gammurc or from command line)
+if len(sys.argv) >= 2:
+    state_machine.ReadConfig(Filename=sys.argv[1])
+    del sys.argv[1]
+else:
+    state_machine.ReadConfig()
+
+# Connect to the phone
+state_machine.Init()
+
+# Check whether we have a number to dial
+if len(sys.argv) != 2:
+    print('Usage: dialvoice.py NUMBER')
+    sys.exit(1)
+
+# Dial a number
+state_machine.DialVoice(sys.argv[1])
diff --git a/examples/doc-exceptions.py b/examples/doc-exceptions.py
new file mode 100755
index 0000000..1e4f152
--- /dev/null
+++ b/examples/doc-exceptions.py
@@ -0,0 +1,18 @@
+#!/usr/bin/env python
+
+from __future__ import print_function
+import gammu.exception
+
+
+def main():
+    for exc in sorted(gammu.exception.__all__):
+        print('.. exception:: gammu.{0}'.format(exc))
+        print()
+        doc = getattr(gammu.exception, exc).__doc__
+        for doc in doc.splitlines():
+            print('    {0}'.format(doc))
+        print()
+
+
+if __name__ == '__main__':
+    main()
diff --git a/examples/dummy_phone.py b/examples/dummy_phone.py
new file mode 100755
index 0000000..93060e7
--- /dev/null
+++ b/examples/dummy_phone.py
@@ -0,0 +1,222 @@
+#!/usr/bin/env python
+# -*- coding: UTF-8 -*-
+# vim: expandtab sw=4 ts=4 sts=4:
+#
+# Copyright © 2003 - 2015 Michal Čihař <michal at cihar.com>
+#
+# This file is part of Gammu <http://wammu.eu/>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+'''
+python-gammu - Test script to test several Gammu operations
+(usually using dummy driver, but it depends on config)
+'''
+
+from __future__ import print_function
+import gammu
+import sys
+
+
+def get_all_memory(state_machine, memory_type):
+    status = state_machine.GetMemoryStatus(Type=memory_type)
+
+    remain = status['Used']
+
+    start = True
+
+    while remain > 0:
+        if start:
+            entry = state_machine.GetNextMemory(Start=True, Type=memory_type)
+            start = False
+        else:
+            entry = state_machine.GetNextMemory(
+                Location=entry['Location'], Type=memory_type
+            )
+        remain = remain - 1
+
+        print()
+        print(('%-15s: %d' % ('Location', entry['Location'])))
+        for v in entry['Entries']:
+            if v['Type'] in ('Photo'):
+                print(('%-15s: %s...' % (v['Type'], repr(v['Value'])[:30])))
+            else:
+                print((
+                    '%-15s: %s' % (v['Type'], str(v['Value']).encode('utf-8'))
+                ))
+
+
+def get_all_calendar(state_machine):
+    status = state_machine.GetCalendarStatus()
+
+    remain = status['Used']
+
+    start = True
+
+    while remain > 0:
+        if start:
+            entry = state_machine.GetNextCalendar(Start=True)
+            start = False
+        else:
+            entry = state_machine.GetNextCalendar(Location=entry['Location'])
+        remain = remain - 1
+
+        print()
+        print(('%-20s: %d' % ('Location', entry['Location'])))
+        print(('%-20s: %s' % ('Type', entry['Type'])))
+        for v in entry['Entries']:
+            print(('%-20s: %s' % (v['Type'], str(v['Value']).encode('utf-8'))))
+
+
+def get_battery_status(state_machine):
+    status = state_machine.GetBatteryCharge()
+
+    for x in status:
+        if status[x] != -1:
+            print(("%20s: %s" % (x, status[x])))
+
+
+def get_all_sms(state_machine):
+    status = state_machine.GetSMSStatus()
+
+    remain = status['SIMUsed'] + status['PhoneUsed'] + status['TemplatesUsed']
+
+    start = True
+
+    while remain > 0:
+        if start:
+            sms = state_machine.GetNextSMS(Start=True, Folder=0)
+            start = False
+        else:
+            sms = state_machine.GetNextSMS(
+                Location=sms[0]['Location'], Folder=0
+            )
+        remain = remain - len(sms)
+
+    return sms
+
+
+def print_sms_header(message, folders):
+    print()
+    print('%-15s: %s' % ('Number', message['Number'].encode('utf-8')))
+    print('%-15s: %s' % ('Date', str(message['DateTime'])))
+    print('%-15s: %s' % ('State', message['State']))
+    print('%-15s: %s %s (%d)' % (
+        'Folder',
+        folders[message['Folder']]['Name'].encode('utf-8'),
+        folders[message['Folder']]['Memory'].encode('utf-8'),
+        message['Folder']
+    ))
+    print('%-15s: %s' % ('Validity', message['SMSC']['Validity']))
+
+
+def print_all_sms(sms, folders):
+    for m in sms:
+        print_sms_header(m, folders)
+        print('\n%s' % m['Text'].encode('utf-8'))
+
+
+def link_all_sms(sms, folders):
+    data = gammu.LinkSMS([[msg] for msg in sms])
+
+    for x in data:
+        v = gammu.DecodeSMS(x)
+
+        m = x[0]
+        print_sms_header(m, folders)
+        loc = []
+        for m in x:
+            loc.append(str(m['Location']))
+        print('%-15s: %s' % ('Location(s)', ', '.join(loc)))
+        if v is None:
+            print('\n%s' % m['Text'].encode('utf-8'))
+        else:
+            for e in v['Entries']:
+                print()
+                print('%-15s: %s' % ('Type', e['ID']))
+                if e['Bitmap'] is not None:
+                    for bmp in e['Bitmap']:
+                        print('Bitmap:')
+                        for row in bmp['XPM'][3:]:
+                            print(row)
+                    print()
+                if e['Buffer'] is not None:
+                    print('Text:')
+                    print(e['Buffer'].encode('utf-8'))
+                    print()
... 20443 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-gammu.git



More information about the Python-modules-commits mailing list