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