Commit Graph
22 Commits
Author SHA1 Message Date
Aleksander Morgado f419f56628 build: drop autotools 2022-11-07 14:26:02 +00:00
Iñigo Martínez 3974b8b98f build,meson: Sort files alphabetically 2021-10-14 07:57:55 +00:00
Aleksander Morgado 2e44a5921b build,meson: add sms-c examples to build 2021-09-08 11:43:55 +02:00
Aleksander Morgado 86421f06bd examples: new SMS sending example in C using the async API 2021-09-08 11:21:45 +02:00
Aleksander Morgado ccc7989324 examples: new SMS sending example in C using the sync API 2021-09-08 11:21:45 +02:00
Aleksander Morgado 6175cf562f examples,modem-watcher-python: also monitor modem state updates
$ sudo ./modem-watcher-python
  [ModemWatcher] ModemManager 1.16.6 service is available in bus
  [ModemWatcher] /org/freedesktop/ModemManager1/Modem/0: modem managed by ModemManager [015805000283080]: foxconn (MBIM [105B:E0AB])
  [ModemWatcher] /org/freedesktop/ModemManager1/Modem/0: modem state updated: disabled -> enabling (user-requested)
  [ModemWatcher] /org/freedesktop/ModemManager1/Modem/0: modem state updated: enabling -> enabled (user-requested)
  [ModemWatcher] /org/freedesktop/ModemManager1/Modem/0: modem state updated: enabled -> registered (unknown)
2021-06-21 11:22:29 +02:00
Yegor Yefremov 297a8c85ae examples: sms: resolve PEP8 issues
Use autopep8 utility to resolve issues like spaces before brackets
and wrong hanging indentation.

Also treat objects like boolean variables to check whether they are
None or not.
2021-02-25 14:14:55 +01:00
Yegor Yefremov cc07d21410 examples: network-scan: get rid of global variables
Move the code into the main() routine.
2021-02-24 14:59:48 +01:00
Yegor Yefremov 69926d9335 examples: modem-watcher: get rid of global variables
Move the code into the main() routine and pass main_loop as
a parameter to the signal handler.
2021-02-15 21:10:34 +01:00
Yegor Yefremov e685ce9ce5 examples: ModemWatcher: convert comments in the doc strings
Move comments under the class and method definitions.

Also rework boolean handling.
2021-02-15 21:10:26 +01:00
Yegor Yefremov 3a32409000 examples: network-scan: enable modem before the network scan
Otherwise we get the following exception:

Traceback (most recent call last):
  File "/root/network-scan-python", line 57, in <module>
    networks = modem3gpp.scan_sync()
gi.repository.GLib.Error: mm_core_error_quark: GDBus.Error:org.freedesktop.ModemManager1.Error.Core.WrongState: Cannot scan networks: not enabled yet (8)
2021-02-14 23:35:54 +01:00
Yegor Yefremov c7d0defdde examples: network-scan: resolve PEP8 issues
Use autopep8 utility to resolve issues like spaces before brackets
and wrong hanging indentation.

Also treat objects like boolean variables to check whether they are
None or not.
2021-02-14 23:35:49 +01:00
Aleksander Morgado 12329ac788 examples,python: ignore scan operation in modems without 3GPP interface
Traceback (most recent call last):
    File "/home/aleksander/Development/foss/ModemManager/examples/network-scan-python/./network-scan-python", line 46, in <module>
      modem3gpp.set_default_timeout(300000)
  AttributeError: 'NoneType' object has no attribute 'set_default_timeout'
2021-02-13 11:24:24 +01:00
Aleksander Morgado dd3310132f examples,python: fix undefined NameError in modem watcher example
$ ./modem-watcher-python
  [ModemWatcher] ModemManager 1.15.0 service is available in bus
  [ModemWatcher] QUALCOMM INCORPORATED (0) modem managed by ModemManager [863974040050058]: /org/freedesktop/ModemManager1/Modem/0
  [ModemWatcher] Sierra Wireless Inc. (Sierra Wireless EM7345 4G LTE) modem managed by ModemManager [013937003110648]: /org/freedesktop/ModemManager1/Modem/1
  Traceback (most recent call last):
    File "/home/aleksander/Development/foss/ModemManager/examples/modem-watcher-python/./modem-watcher-python", line 35, in <module>
      watcher = ModemWatcher.ModemWatcher()
    File "/home/aleksander/Development/foss/ModemManager/examples/modem-watcher-python/ModemWatcher.py", line 48, in __init__
      self.on_name_owner(self.manager, None)
    File "/home/aleksander/Development/foss/ModemManager/examples/modem-watcher-python/ModemWatcher.py", line 85, in on_name_owner
      self.set_available()
    File "/home/aleksander/Development/foss/ModemManager/examples/modem-watcher-python/ModemWatcher.py", line 64, in set_available
      self.on_object_added(self.manager, obj)
    File "/home/aleksander/Development/foss/ModemManager/examples/modem-watcher-python/ModemWatcher.py", line 101, in on_object_added
      modem_index(obj.get_object_path()))
  NameError: name 'modem_index' is not defined
2021-02-13 11:12:49 +01:00
Yegor Yefremov 16d1cf3318 examples: rework imports
Remove unused imports and fix import sorting using isort utility.
2021-02-13 11:09:59 +01:00
Aleksander Morgado fcbffbd123 libmm-glib,3gpp: make MMModem3gppNetwork a boxed type
So that bindings know how to free the list of structs.

This commit ends up triggering an API break in the bindings generated
via GObject introspection, because the methods to access the items of
a MMModem3gppNetwork are no longer treated as Modem3gpp class methods.

E.g. instead of:
  ModemManager.Modem3gpp.network_get_operator_code(network)
We should now do:
  network.get_operator_code()

There is no API break in libmm-glib.
2019-12-13 18:04:02 +01:00
Aleksander Morgado 248cd55f0e examples: new network-scan-python example
This is currently not working completely ok because python doesn't
know how to free the GList of MMModem3gppNetwork elements.

  /org/freedesktop/ModemManager1/Modem/1: starting network scan...
  21403: Orange - Orange (unknown, forbidden)
  21401: vodafone ES - vodafone ES (unknown, forbidden)
  21403: Orange - Orange (unknown, forbidden)
  21403: Orange - Orange (unknown, forbidden)
  21401: vodafone ES - vodafone ES (unknown, forbidden)
  21404: Yoigo - Yoigo (unknown, forbidden)
  21401: vodafone ES - vodafone ES (unknown, forbidden)
  21404: Yoigo - Yoigo (unknown, forbidden)
  21407: Movistar - Movistar (unknown, available)
  21407: Movistar - Movistar (unknown, available)
  21407: Movistar - Movistar (unknown, current)
  free(): invalid pointer
  Aborted
2019-12-13 17:36:06 +01:00
Aleksander Morgado 479590412e examples,watcher: print runtime MM version 2019-01-13 17:36:14 +01:00
Aleksander Morgado dbb05afba8 examples: avoid warning in modem-watcher-python example
PyGIWarning: ModemManager was imported without specifying a version first. Use gi.require_version('ModemManager', '1.0') before import to ensure that the right version gets loaded.
2016-07-25 13:17:48 +02:00
Aleksander Morgado 24fd3ef5fb examples: add SMS sender in python 2016-07-25 12:51:45 +02:00
Aleksander Morgado ae99c452eb examples: add modem watcher example in JS 2014-04-11 10:31:02 +02:00
Aleksander Morgado ebff76cfaa examples: add modem watcher example in python 2014-04-11 10:31:01 +02:00