sdbus-modemmanager 1.0.1__tar.gz → 1.0.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of sdbus-modemmanager might be problematic. Click here for more details.

Files changed (32) hide show
  1. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/PKG-INFO +11 -2
  2. sdbus_modemmanager-1.0.2/sdbus_async/modemmanager/enums.py +247 -0
  3. sdbus_modemmanager-1.0.2/sdbus_block/modemmanager/enums.py +247 -0
  4. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/interfaces_modem.py +30 -6
  5. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_modemmanager.egg-info/PKG-INFO +11 -2
  6. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/setup.py +1 -1
  7. sdbus-modemmanager-1.0.1/sdbus_async/modemmanager/enums.py +0 -126
  8. sdbus-modemmanager-1.0.1/sdbus_block/modemmanager/enums.py +0 -126
  9. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/COPYING.LESSER +0 -0
  10. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/README.md +0 -0
  11. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/__init__.py +0 -0
  12. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/interfaces_bearer.py +0 -0
  13. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/interfaces_call.py +0 -0
  14. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/interfaces_modem.py +0 -0
  15. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/interfaces_root.py +0 -0
  16. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/interfaces_sim.py +0 -0
  17. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/interfaces_sms.py +0 -0
  18. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/objects.py +0 -0
  19. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_async/modemmanager/py.typed +0 -0
  20. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/__init__.py +0 -0
  21. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/interfaces_bearer.py +0 -0
  22. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/interfaces_call.py +0 -0
  23. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/interfaces_root.py +0 -0
  24. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/interfaces_sim.py +0 -0
  25. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/interfaces_sms.py +0 -0
  26. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/objects.py +0 -0
  27. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_block/modemmanager/py.typed +0 -0
  28. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_modemmanager.egg-info/SOURCES.txt +0 -0
  29. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_modemmanager.egg-info/dependency_links.txt +0 -0
  30. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_modemmanager.egg-info/requires.txt +0 -0
  31. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/sdbus_modemmanager.egg-info/top_level.txt +0 -0
  32. {sdbus-modemmanager-1.0.1 → sdbus_modemmanager-1.0.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: sdbus-modemmanager
3
- Version: 1.0.1
3
+ Version: 1.0.2
4
4
  Summary: ModemManager binds for sdbus.
5
5
  Home-page: https://github.com/zhanglongqi/python-sdbus-modemmanager
6
6
  License: LGPL-2.1-or-later
@@ -16,6 +16,15 @@ Requires-Python: >=3.7
16
16
  Description-Content-Type: text/markdown
17
17
  License-File: COPYING.LESSER
18
18
  Requires-Dist: sdbus>=0.8rc2
19
+ Dynamic: classifier
20
+ Dynamic: description
21
+ Dynamic: description-content-type
22
+ Dynamic: home-page
23
+ Dynamic: license
24
+ Dynamic: project-url
25
+ Dynamic: requires-dist
26
+ Dynamic: requires-python
27
+ Dynamic: summary
19
28
 
20
29
  # python-sdbus-modemmanager
21
30
 
@@ -0,0 +1,247 @@
1
+ from enum import IntEnum, IntFlag
2
+
3
+
4
+ class MMModemState(IntEnum):
5
+ """Enumeration of possible modem states.
6
+
7
+ * MM_MODEM_STATE_FAILED: The modem is unusable.
8
+ * MM_MODEM_STATE_UNKNOWN: State unknown or not reportable.
9
+ * MM_MODEM_STATE_INITIALIZING: The modem is currently being initialized.
10
+ * MM_MODEM_STATE_LOCKED: The modem needs to be unlocked.
11
+ * MM_MODEM_STATE_DISABLED: The modem is not enabled and is powered down.
12
+ * MM_MODEM_STATE_DISABLING: The modem is currently transitioning to the MM_MODEM_STATE_DISABLED state.
13
+ * MM_MODEM_STATE_ENABLING: The modem is currently transitioning to the MM_MODEM_STATE_ENABLED state.
14
+ * MM_MODEM_STATE_ENABLED: The modem is enabled and powered on but not registered with a network provider and not available for data connections.
15
+ * MM_MODEM_STATE_SEARCHING: The modem is searching for a network provider to register with.
16
+ * MM_MODEM_STATE_REGISTERED: The modem is registered with a network provider, and data connections and messaging may be available for use.
17
+ * MM_MODEM_STATE_DISCONNECTING: The modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated.
18
+ * MM_MODEM_STATE_CONNECTING: The modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered.
19
+ * MM_MODEM_STATE_CONNECTED: One or more packet data bearers is active and connected.
20
+ """
21
+ MM_MODEM_STATE_FAILED = -1
22
+ MM_MODEM_STATE_UNKNOWN = 0
23
+ MM_MODEM_STATE_INITIALIZING = 1
24
+ MM_MODEM_STATE_LOCKED = 2
25
+ MM_MODEM_STATE_DISABLED = 3
26
+ MM_MODEM_STATE_DISABLING = 4
27
+ MM_MODEM_STATE_ENABLING = 5
28
+ MM_MODEM_STATE_ENABLED = 6
29
+ MM_MODEM_STATE_SEARCHING = 7
30
+ MM_MODEM_STATE_REGISTERED = 8
31
+ MM_MODEM_STATE_DISCONNECTING = 9
32
+ MM_MODEM_STATE_CONNECTING = 10
33
+ MM_MODEM_STATE_CONNECTED = 11
34
+
35
+
36
+ class MMModemStateFailedReason(IntEnum):
37
+ """
38
+ Enumeration of possible errors when the modem is in @MM_MODEM_STATE_FAILED
39
+
40
+ * @MM_MODEM_STATE_FAILED_REASON_NONE: No error.
41
+ * @MM_MODEM_STATE_FAILED_REASON_UNKNOWN: Unknown error.
42
+ * @MM_MODEM_STATE_FAILED_REASON_SIM_MISSING: SIM is required but missing.
43
+ * @MM_MODEM_STATE_FAILED_REASON_SIM_ERROR: SIM is available, but unusable (e.g. permanently locked).
44
+ * @MM_MODEM_STATE_FAILED_REASON_UNKNOWN_CAPABILITIES: Unknown modem capabilities. Since 1.20.
45
+ * @MM_MODEM_STATE_FAILED_REASON_ESIM_WITHOUT_PROFILES: eSIM is not initialized. Since 1.20.
46
+ """
47
+ MM_MODEM_STATE_FAILED_REASON_NONE = 0
48
+ MM_MODEM_STATE_FAILED_REASON_UNKNOWN = 1
49
+ MM_MODEM_STATE_FAILED_REASON_SIM_MISSING = 2
50
+ MM_MODEM_STATE_FAILED_REASON_SIM_ERROR = 3
51
+ MM_MODEM_STATE_FAILED_REASON_UNKNOWN_CAPABILITIES = 4
52
+ MM_MODEM_STATE_FAILED_REASON_ESIM_WITHOUT_PROFILES = 5
53
+
54
+
55
+ class MMModemMode(IntFlag):
56
+ """Bitfield to indicate which access modes are supported, allowed or preferred in a given device.
57
+
58
+ * MM_MODEM_MODE_NONE: None.
59
+ * MM_MODEM_MODE_CS: CSD, GSM, and other circuit-switched technologies.
60
+ * MM_MODEM_MODE_2G: GPRS, EDGE.
61
+ * MM_MODEM_MODE_3G: UMTS, HSxPA.
62
+ * MM_MODEM_MODE_4G: LTE.
63
+ * MM_MODEM_MODE_5G: 5GNR. Since 1.14.
64
+ * MM_MODEM_MODE_ANY: Any mode can be used (only this value allowed for POTS modems).
65
+ """
66
+ MM_MODEM_MODE_NONE = 0
67
+ MM_MODEM_MODE_CS = 1 << 0
68
+ MM_MODEM_MODE_2G = 1 << 1
69
+ MM_MODEM_MODE_3G = 1 << 2
70
+ MM_MODEM_MODE_4G = 1 << 3
71
+ MM_MODEM_MODE_ANY = 0xFFFFFFFF
72
+
73
+
74
+ class MMModemAccessTechnology(IntFlag):
75
+ """
76
+ Describes various access technologies that a device uses when registered with or connected to a network.
77
+
78
+ * @MM_MODEM_ACCESS_TECHNOLOGY_UNKNOWN: The access technology used is unknown.
79
+ * @MM_MODEM_ACCESS_TECHNOLOGY_POTS: Analog wireline telephone.
80
+ * @MM_MODEM_ACCESS_TECHNOLOGY_GSM: GSM.
81
+ * @MM_MODEM_ACCESS_TECHNOLOGY_GSM_COMPACT: Compact GSM.
82
+ * @MM_MODEM_ACCESS_TECHNOLOGY_GPRS: GPRS.
83
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EDGE: EDGE (ETSI 27.007: "GSM w/EGPRS").
84
+ * @MM_MODEM_ACCESS_TECHNOLOGY_UMTS: UMTS (ETSI 27.007: "UTRAN").
85
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSDPA: HSDPA (ETSI 27.007: "UTRAN w/HSDPA").
86
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSUPA: HSUPA (ETSI 27.007: "UTRAN w/HSUPA").
87
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSPA: HSPA (ETSI 27.007: "UTRAN w/HSDPA and HSUPA").
88
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSPA_PLUS: HSPA+ (ETSI 27.007: "UTRAN w/HSPA+").
89
+ * @MM_MODEM_ACCESS_TECHNOLOGY_1XRTT: CDMA2000 1xRTT.
90
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EVDO0: CDMA2000 EVDO revision 0.
91
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EVDOA: CDMA2000 EVDO revision A.
92
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EVDOB: CDMA2000 EVDO revision B.
93
+ * @MM_MODEM_ACCESS_TECHNOLOGY_LTE: LTE (ETSI 27.007: "E-UTRAN")
94
+ * @MM_MODEM_ACCESS_TECHNOLOGY_5GNR: 5GNR (ETSI 27.007: "NG-RAN"). Since 1.14.
95
+ * @MM_MODEM_ACCESS_TECHNOLOGY_LTE_CAT_M: Cat-M (ETSI 23.401: LTE Category M1/M2). Since 1.20.
96
+ * @MM_MODEM_ACCESS_TECHNOLOGY_LTE_NB_IOT: NB IoT (ETSI 23.401: LTE Category NB1/NB2). Since 1.20.
97
+ * @MM_MODEM_ACCESS_TECHNOLOGY_ANY: Mask specifying all access technologies.
98
+ """
99
+ MM_MODEM_ACCESS_TECHNOLOGY_UNKNOWN = 0
100
+ MM_MODEM_ACCESS_TECHNOLOGY_POTS = 1 << 0
101
+ MM_MODEM_ACCESS_TECHNOLOGY_GSM = 1 << 1
102
+ MM_MODEM_ACCESS_TECHNOLOGY_GSM_COMPACT = 1 << 2
103
+ MM_MODEM_ACCESS_TECHNOLOGY_GPRS = 1 << 3
104
+ MM_MODEM_ACCESS_TECHNOLOGY_EDGE = 1 << 4
105
+ MM_MODEM_ACCESS_TECHNOLOGY_UMTS = 1 << 5
106
+ MM_MODEM_ACCESS_TECHNOLOGY_HSDPA = 1 << 6
107
+ MM_MODEM_ACCESS_TECHNOLOGY_HSUPA = 1 << 7
108
+ MM_MODEM_ACCESS_TECHNOLOGY_HSPA = 1 << 8
109
+ MM_MODEM_ACCESS_TECHNOLOGY_HSPA_PLUS = 1 << 9
110
+ MM_MODEM_ACCESS_TECHNOLOGY_1XRTT = 1 << 10
111
+ MM_MODEM_ACCESS_TECHNOLOGY_EVDO0 = 1 << 11
112
+ MM_MODEM_ACCESS_TECHNOLOGY_EVDOA = 1 << 12
113
+ MM_MODEM_ACCESS_TECHNOLOGY_EVDOB = 1 << 13
114
+ MM_MODEM_ACCESS_TECHNOLOGY_LTE = 1 << 14
115
+ MM_MODEM_ACCESS_TECHNOLOGY_5GNR = 1 << 15
116
+ MM_MODEM_ACCESS_TECHNOLOGY_LTE_CAT_M = 1 << 16
117
+ MM_MODEM_ACCESS_TECHNOLOGY_LTE_NB_IOT = 1 << 17
118
+ MM_MODEM_ACCESS_TECHNOLOGY_ANY = 0xFFFFFFFF
119
+
120
+
121
+ class MMModem3gppRegistrationState(IntEnum):
122
+ """
123
+ GSM registration code as defined in 3GPP TS 27.007.
124
+
125
+ * MMModem3gppRegistrationState:
126
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_IDLE: Not registered, not searching for new operator to register.
127
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_HOME: Registered on home network.
128
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_SEARCHING: Not registered, searching for new operator to register with.
129
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_DENIED: Registration denied.
130
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_UNKNOWN: Unknown registration status.
131
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING: Registered on a roaming network.
132
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_HOME_SMS_ONLY: Registered for "SMS only", home network (applicable only when on LTE). Since 1.8.
133
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_SMS_ONLY: Registered for "SMS only", roaming network (applicable only when on LTE). Since 1.8.
134
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_EMERGENCY_ONLY: Emergency services only. Since 1.8.
135
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_HOME_CSFB_NOT_PREFERRED: Registered for "CSFB not preferred", home network (applicable only when on LTE). Since 1.8.
136
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_CSFB_NOT_PREFERRED: Registered for "CSFB not preferred", roaming network (applicable only when on LTE). Since 1.8.
137
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ATTACHED_RLOS: Attached for access to Restricted Local Operator Services (applicable only when on LTE). Since 1.14.
138
+ """
139
+ MM_MODEM_3GPP_REGISTRATION_STATE_IDLE = 0
140
+ MM_MODEM_3GPP_REGISTRATION_STATE_HOME = 1
141
+ MM_MODEM_3GPP_REGISTRATION_STATE_SEARCHING = 2
142
+ MM_MODEM_3GPP_REGISTRATION_STATE_DENIED = 3
143
+ MM_MODEM_3GPP_REGISTRATION_STATE_UNKNOWN = 4
144
+ MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING = 5
145
+ MM_MODEM_3GPP_REGISTRATION_STATE_HOME_SMS_ONLY = 6
146
+ MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_SMS_ONLY = 7
147
+ MM_MODEM_3GPP_REGISTRATION_STATE_EMERGENCY_ONLY = 8
148
+ MM_MODEM_3GPP_REGISTRATION_STATE_HOME_CSFB_NOT_PREFERRED = 9
149
+ MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_CSFB_NOT_PREFERRED = 10
150
+ MM_MODEM_3GPP_REGISTRATION_STATE_ATTACHED_RLOS = 11
151
+
152
+
153
+ class MMModemPowerState(IntEnum):
154
+ """Power state of the modem.
155
+
156
+ * MM_MODEM_POWER_STATE_UNKNOWN Unknown power state.
157
+ * MM_MODEM_POWER_STATE_OFF Off.
158
+ * MM_MODEM_POWER_STATE_LOW Low-power mode.
159
+ * MM_MODEM_POWER_STATE_ON Full power mode.
160
+ """
161
+ MM_MODEM_POWER_STATE_UNKNOWN = 0
162
+ MM_MODEM_POWER_STATE_OFF = 1
163
+ MM_MODEM_POWER_STATE_LOW = 2
164
+ MM_MODEM_POWER_STATE_ON = 3
165
+
166
+
167
+ class MMCallDirection(IntEnum):
168
+ """Direction of the call.
169
+
170
+ * MM_CALL_DIRECTION_UNKNOWN Unknown.
171
+ * MM_CALL_DIRECTION_INCOMING Call from network.
172
+ * MM_CALL_DIRECTION_OUTGOING Call to network.
173
+ """
174
+ MM_CALL_DIRECTION_UNKNOWN = 0
175
+ MM_CALL_DIRECTION_INCOMING = 1
176
+ MM_CALL_DIRECTION_OUTGOING = 2
177
+
178
+
179
+ class MMCallState(IntEnum):
180
+ """State of Call.
181
+
182
+ * MM_CALL_STATE_UNKNOWN Default state for a new outgoing call.
183
+ * MM_CALL_STATE_DIALING Outgoing call started. Wait for free channel.
184
+ * MM_CALL_STATE_RINGING_OUT Outgoing call attached to GSM network, waiting for an answer.
185
+ * MM_CALL_STATE_RINGING_IN Incoming call is waiting for an answer.
186
+ * MM_CALL_STATE_ACTIVE Call is active between two peers.
187
+ * MM_CALL_STATE_HELD Held call (by +CHLD AT command).
188
+ * MM_CALL_STATE_WAITING Waiting call (by +CCWA AT command).
189
+ * MM_CALL_STATE_TERMINATED Call is terminated.
190
+ """
191
+ MM_CALL_STATE_UNKNOWN = 0
192
+ MM_CALL_STATE_DIALING = 1
193
+ MM_CALL_STATE_RINGING_OUT = 2
194
+ MM_CALL_STATE_RINGING_IN = 3
195
+ MM_CALL_STATE_ACTIVE = 4
196
+ MM_CALL_STATE_HELD = 5
197
+ MM_CALL_STATE_WAITING = 6
198
+ MM_CALL_STATE_TERMINATED = 7
199
+
200
+
201
+ class MMCallStateReason(IntEnum):
202
+ """Reason for the state change in the call.
203
+
204
+ * MM_CALL_STATE_REASON_UNKNOWN Default value for a new outgoing call.
205
+ * MM_CALL_STATE_REASON_OUTGOING_STARTED Outgoing call is started.
206
+ * MM_CALL_STATE_REASON_INCOMING_NEW Received a new incoming call.
207
+ * MM_CALL_STATE_REASON_ACCEPTED Dialing or Ringing call is accepted.
208
+ * MM_CALL_STATE_REASON_TERMINATED Call is correctly terminated.
209
+ * MM_CALL_STATE_REASON_REFUSED_OR_BUSY Remote peer is busy or refused call.
210
+ * MM_CALL_STATE_REASON_ERROR Wrong number or generic network error.
211
+ * MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED Error setting up audio channel. Since 1.10.
212
+ * MM_CALL_STATE_REASON_TRANSFERRED Call has been transferred. Since 1.12.
213
+ * MM_CALL_STATE_REASON_DEFLECTED Call has been deflected to a new number. Since 1.12.
214
+ """
215
+ MM_CALL_STATE_REASON_UNKNOWN = 0
216
+ MM_CALL_STATE_REASON_OUTGOING_STARTED = 1
217
+ MM_CALL_STATE_REASON_INCOMING_NEW = 2
218
+ MM_CALL_STATE_REASON_ACCEPTED = 3
219
+ MM_CALL_STATE_REASON_TERMINATED = 4
220
+ MM_CALL_STATE_REASON_REFUSED_OR_BUSY = 5
221
+ MM_CALL_STATE_REASON_ERROR = 6
222
+ MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED = 7
223
+ MM_CALL_STATE_REASON_TRANSFERRED = 8
224
+ MM_CALL_STATE_REASON_DEFLECTED = 9
225
+
226
+
227
+ class MMModemCapability(IntEnum):
228
+ MM_MODEM_CAPABILITY_NONE = 0
229
+ MM_MODEM_CAPABILITY_POTS = 1 << 0
230
+ MM_MODEM_CAPABILITY_CDMA_EVDO = 1 << 1
231
+ MM_MODEM_CAPABILITY_GSM_UMTS = 1 << 2
232
+ MM_MODEM_CAPABILITY_LTE = 1 << 3
233
+ MM_MODEM_CAPABILITY_IRIDIUM = 1 << 5
234
+ MM_MODEM_CAPABILITY_5GNR = 1 << 6
235
+ MM_MODEM_CAPABILITY_TDS = 1 << 7
236
+ MM_MODEM_CAPABILITY_ANY = 0xFFFFFFFF
237
+
238
+ @staticmethod
239
+ def names(value) -> list:
240
+ names = []
241
+ if MMModemCapability.MM_MODEM_CAPABILITY_ANY != value:
242
+ for capability in MMModemCapability:
243
+ if capability & value and capability != MMModemCapability.MM_MODEM_CAPABILITY_ANY:
244
+ names.append(capability.name)
245
+ else:
246
+ names.append(MMModemCapability.MM_MODEM_CAPABILITY_ANY.name)
247
+ return names
@@ -0,0 +1,247 @@
1
+ from enum import IntEnum, IntFlag
2
+
3
+
4
+ class MMModemState(IntEnum):
5
+ """Enumeration of possible modem states.
6
+
7
+ * MM_MODEM_STATE_FAILED: The modem is unusable.
8
+ * MM_MODEM_STATE_UNKNOWN: State unknown or not reportable.
9
+ * MM_MODEM_STATE_INITIALIZING: The modem is currently being initialized.
10
+ * MM_MODEM_STATE_LOCKED: The modem needs to be unlocked.
11
+ * MM_MODEM_STATE_DISABLED: The modem is not enabled and is powered down.
12
+ * MM_MODEM_STATE_DISABLING: The modem is currently transitioning to the MM_MODEM_STATE_DISABLED state.
13
+ * MM_MODEM_STATE_ENABLING: The modem is currently transitioning to the MM_MODEM_STATE_ENABLED state.
14
+ * MM_MODEM_STATE_ENABLED: The modem is enabled and powered on but not registered with a network provider and not available for data connections.
15
+ * MM_MODEM_STATE_SEARCHING: The modem is searching for a network provider to register with.
16
+ * MM_MODEM_STATE_REGISTERED: The modem is registered with a network provider, and data connections and messaging may be available for use.
17
+ * MM_MODEM_STATE_DISCONNECTING: The modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated.
18
+ * MM_MODEM_STATE_CONNECTING: The modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered.
19
+ * MM_MODEM_STATE_CONNECTED: One or more packet data bearers is active and connected.
20
+ """
21
+ MM_MODEM_STATE_FAILED = -1
22
+ MM_MODEM_STATE_UNKNOWN = 0
23
+ MM_MODEM_STATE_INITIALIZING = 1
24
+ MM_MODEM_STATE_LOCKED = 2
25
+ MM_MODEM_STATE_DISABLED = 3
26
+ MM_MODEM_STATE_DISABLING = 4
27
+ MM_MODEM_STATE_ENABLING = 5
28
+ MM_MODEM_STATE_ENABLED = 6
29
+ MM_MODEM_STATE_SEARCHING = 7
30
+ MM_MODEM_STATE_REGISTERED = 8
31
+ MM_MODEM_STATE_DISCONNECTING = 9
32
+ MM_MODEM_STATE_CONNECTING = 10
33
+ MM_MODEM_STATE_CONNECTED = 11
34
+
35
+
36
+ class MMModemStateFailedReason(IntEnum):
37
+ """
38
+ Enumeration of possible errors when the modem is in @MM_MODEM_STATE_FAILED
39
+
40
+ * @MM_MODEM_STATE_FAILED_REASON_NONE: No error.
41
+ * @MM_MODEM_STATE_FAILED_REASON_UNKNOWN: Unknown error.
42
+ * @MM_MODEM_STATE_FAILED_REASON_SIM_MISSING: SIM is required but missing.
43
+ * @MM_MODEM_STATE_FAILED_REASON_SIM_ERROR: SIM is available, but unusable (e.g. permanently locked).
44
+ * @MM_MODEM_STATE_FAILED_REASON_UNKNOWN_CAPABILITIES: Unknown modem capabilities. Since 1.20.
45
+ * @MM_MODEM_STATE_FAILED_REASON_ESIM_WITHOUT_PROFILES: eSIM is not initialized. Since 1.20.
46
+ """
47
+ MM_MODEM_STATE_FAILED_REASON_NONE = 0
48
+ MM_MODEM_STATE_FAILED_REASON_UNKNOWN = 1
49
+ MM_MODEM_STATE_FAILED_REASON_SIM_MISSING = 2
50
+ MM_MODEM_STATE_FAILED_REASON_SIM_ERROR = 3
51
+ MM_MODEM_STATE_FAILED_REASON_UNKNOWN_CAPABILITIES = 4
52
+ MM_MODEM_STATE_FAILED_REASON_ESIM_WITHOUT_PROFILES = 5
53
+
54
+
55
+ class MMModemMode(IntFlag):
56
+ """Bitfield to indicate which access modes are supported, allowed or preferred in a given device.
57
+
58
+ * MM_MODEM_MODE_NONE: None.
59
+ * MM_MODEM_MODE_CS: CSD, GSM, and other circuit-switched technologies.
60
+ * MM_MODEM_MODE_2G: GPRS, EDGE.
61
+ * MM_MODEM_MODE_3G: UMTS, HSxPA.
62
+ * MM_MODEM_MODE_4G: LTE.
63
+ * MM_MODEM_MODE_5G: 5GNR. Since 1.14.
64
+ * MM_MODEM_MODE_ANY: Any mode can be used (only this value allowed for POTS modems).
65
+ """
66
+ MM_MODEM_MODE_NONE = 0
67
+ MM_MODEM_MODE_CS = 1 << 0
68
+ MM_MODEM_MODE_2G = 1 << 1
69
+ MM_MODEM_MODE_3G = 1 << 2
70
+ MM_MODEM_MODE_4G = 1 << 3
71
+ MM_MODEM_MODE_ANY = 0xFFFFFFFF
72
+
73
+
74
+ class MMModemAccessTechnology(IntFlag):
75
+ """
76
+ Describes various access technologies that a device uses when registered with or connected to a network.
77
+
78
+ * @MM_MODEM_ACCESS_TECHNOLOGY_UNKNOWN: The access technology used is unknown.
79
+ * @MM_MODEM_ACCESS_TECHNOLOGY_POTS: Analog wireline telephone.
80
+ * @MM_MODEM_ACCESS_TECHNOLOGY_GSM: GSM.
81
+ * @MM_MODEM_ACCESS_TECHNOLOGY_GSM_COMPACT: Compact GSM.
82
+ * @MM_MODEM_ACCESS_TECHNOLOGY_GPRS: GPRS.
83
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EDGE: EDGE (ETSI 27.007: "GSM w/EGPRS").
84
+ * @MM_MODEM_ACCESS_TECHNOLOGY_UMTS: UMTS (ETSI 27.007: "UTRAN").
85
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSDPA: HSDPA (ETSI 27.007: "UTRAN w/HSDPA").
86
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSUPA: HSUPA (ETSI 27.007: "UTRAN w/HSUPA").
87
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSPA: HSPA (ETSI 27.007: "UTRAN w/HSDPA and HSUPA").
88
+ * @MM_MODEM_ACCESS_TECHNOLOGY_HSPA_PLUS: HSPA+ (ETSI 27.007: "UTRAN w/HSPA+").
89
+ * @MM_MODEM_ACCESS_TECHNOLOGY_1XRTT: CDMA2000 1xRTT.
90
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EVDO0: CDMA2000 EVDO revision 0.
91
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EVDOA: CDMA2000 EVDO revision A.
92
+ * @MM_MODEM_ACCESS_TECHNOLOGY_EVDOB: CDMA2000 EVDO revision B.
93
+ * @MM_MODEM_ACCESS_TECHNOLOGY_LTE: LTE (ETSI 27.007: "E-UTRAN")
94
+ * @MM_MODEM_ACCESS_TECHNOLOGY_5GNR: 5GNR (ETSI 27.007: "NG-RAN"). Since 1.14.
95
+ * @MM_MODEM_ACCESS_TECHNOLOGY_LTE_CAT_M: Cat-M (ETSI 23.401: LTE Category M1/M2). Since 1.20.
96
+ * @MM_MODEM_ACCESS_TECHNOLOGY_LTE_NB_IOT: NB IoT (ETSI 23.401: LTE Category NB1/NB2). Since 1.20.
97
+ * @MM_MODEM_ACCESS_TECHNOLOGY_ANY: Mask specifying all access technologies.
98
+ """
99
+ MM_MODEM_ACCESS_TECHNOLOGY_UNKNOWN = 0
100
+ MM_MODEM_ACCESS_TECHNOLOGY_POTS = 1 << 0
101
+ MM_MODEM_ACCESS_TECHNOLOGY_GSM = 1 << 1
102
+ MM_MODEM_ACCESS_TECHNOLOGY_GSM_COMPACT = 1 << 2
103
+ MM_MODEM_ACCESS_TECHNOLOGY_GPRS = 1 << 3
104
+ MM_MODEM_ACCESS_TECHNOLOGY_EDGE = 1 << 4
105
+ MM_MODEM_ACCESS_TECHNOLOGY_UMTS = 1 << 5
106
+ MM_MODEM_ACCESS_TECHNOLOGY_HSDPA = 1 << 6
107
+ MM_MODEM_ACCESS_TECHNOLOGY_HSUPA = 1 << 7
108
+ MM_MODEM_ACCESS_TECHNOLOGY_HSPA = 1 << 8
109
+ MM_MODEM_ACCESS_TECHNOLOGY_HSPA_PLUS = 1 << 9
110
+ MM_MODEM_ACCESS_TECHNOLOGY_1XRTT = 1 << 10
111
+ MM_MODEM_ACCESS_TECHNOLOGY_EVDO0 = 1 << 11
112
+ MM_MODEM_ACCESS_TECHNOLOGY_EVDOA = 1 << 12
113
+ MM_MODEM_ACCESS_TECHNOLOGY_EVDOB = 1 << 13
114
+ MM_MODEM_ACCESS_TECHNOLOGY_LTE = 1 << 14
115
+ MM_MODEM_ACCESS_TECHNOLOGY_5GNR = 1 << 15
116
+ MM_MODEM_ACCESS_TECHNOLOGY_LTE_CAT_M = 1 << 16
117
+ MM_MODEM_ACCESS_TECHNOLOGY_LTE_NB_IOT = 1 << 17
118
+ MM_MODEM_ACCESS_TECHNOLOGY_ANY = 0xFFFFFFFF
119
+
120
+
121
+ class MMModem3gppRegistrationState(IntEnum):
122
+ """
123
+ GSM registration code as defined in 3GPP TS 27.007.
124
+
125
+ * MMModem3gppRegistrationState:
126
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_IDLE: Not registered, not searching for new operator to register.
127
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_HOME: Registered on home network.
128
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_SEARCHING: Not registered, searching for new operator to register with.
129
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_DENIED: Registration denied.
130
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_UNKNOWN: Unknown registration status.
131
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING: Registered on a roaming network.
132
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_HOME_SMS_ONLY: Registered for "SMS only", home network (applicable only when on LTE). Since 1.8.
133
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_SMS_ONLY: Registered for "SMS only", roaming network (applicable only when on LTE). Since 1.8.
134
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_EMERGENCY_ONLY: Emergency services only. Since 1.8.
135
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_HOME_CSFB_NOT_PREFERRED: Registered for "CSFB not preferred", home network (applicable only when on LTE). Since 1.8.
136
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_CSFB_NOT_PREFERRED: Registered for "CSFB not preferred", roaming network (applicable only when on LTE). Since 1.8.
137
+ * @MM_MODEM_3GPP_REGISTRATION_STATE_ATTACHED_RLOS: Attached for access to Restricted Local Operator Services (applicable only when on LTE). Since 1.14.
138
+ """
139
+ MM_MODEM_3GPP_REGISTRATION_STATE_IDLE = 0
140
+ MM_MODEM_3GPP_REGISTRATION_STATE_HOME = 1
141
+ MM_MODEM_3GPP_REGISTRATION_STATE_SEARCHING = 2
142
+ MM_MODEM_3GPP_REGISTRATION_STATE_DENIED = 3
143
+ MM_MODEM_3GPP_REGISTRATION_STATE_UNKNOWN = 4
144
+ MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING = 5
145
+ MM_MODEM_3GPP_REGISTRATION_STATE_HOME_SMS_ONLY = 6
146
+ MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_SMS_ONLY = 7
147
+ MM_MODEM_3GPP_REGISTRATION_STATE_EMERGENCY_ONLY = 8
148
+ MM_MODEM_3GPP_REGISTRATION_STATE_HOME_CSFB_NOT_PREFERRED = 9
149
+ MM_MODEM_3GPP_REGISTRATION_STATE_ROAMING_CSFB_NOT_PREFERRED = 10
150
+ MM_MODEM_3GPP_REGISTRATION_STATE_ATTACHED_RLOS = 11
151
+
152
+
153
+ class MMModemPowerState(IntEnum):
154
+ """Power state of the modem.
155
+
156
+ * MM_MODEM_POWER_STATE_UNKNOWN Unknown power state.
157
+ * MM_MODEM_POWER_STATE_OFF Off.
158
+ * MM_MODEM_POWER_STATE_LOW Low-power mode.
159
+ * MM_MODEM_POWER_STATE_ON Full power mode.
160
+ """
161
+ MM_MODEM_POWER_STATE_UNKNOWN = 0
162
+ MM_MODEM_POWER_STATE_OFF = 1
163
+ MM_MODEM_POWER_STATE_LOW = 2
164
+ MM_MODEM_POWER_STATE_ON = 3
165
+
166
+
167
+ class MMCallDirection(IntEnum):
168
+ """Direction of the call.
169
+
170
+ * MM_CALL_DIRECTION_UNKNOWN Unknown.
171
+ * MM_CALL_DIRECTION_INCOMING Call from network.
172
+ * MM_CALL_DIRECTION_OUTGOING Call to network.
173
+ """
174
+ MM_CALL_DIRECTION_UNKNOWN = 0
175
+ MM_CALL_DIRECTION_INCOMING = 1
176
+ MM_CALL_DIRECTION_OUTGOING = 2
177
+
178
+
179
+ class MMCallState(IntEnum):
180
+ """State of Call.
181
+
182
+ * MM_CALL_STATE_UNKNOWN Default state for a new outgoing call.
183
+ * MM_CALL_STATE_DIALING Outgoing call started. Wait for free channel.
184
+ * MM_CALL_STATE_RINGING_OUT Outgoing call attached to GSM network, waiting for an answer.
185
+ * MM_CALL_STATE_RINGING_IN Incoming call is waiting for an answer.
186
+ * MM_CALL_STATE_ACTIVE Call is active between two peers.
187
+ * MM_CALL_STATE_HELD Held call (by +CHLD AT command).
188
+ * MM_CALL_STATE_WAITING Waiting call (by +CCWA AT command).
189
+ * MM_CALL_STATE_TERMINATED Call is terminated.
190
+ """
191
+ MM_CALL_STATE_UNKNOWN = 0
192
+ MM_CALL_STATE_DIALING = 1
193
+ MM_CALL_STATE_RINGING_OUT = 2
194
+ MM_CALL_STATE_RINGING_IN = 3
195
+ MM_CALL_STATE_ACTIVE = 4
196
+ MM_CALL_STATE_HELD = 5
197
+ MM_CALL_STATE_WAITING = 6
198
+ MM_CALL_STATE_TERMINATED = 7
199
+
200
+
201
+ class MMCallStateReason(IntEnum):
202
+ """Reason for the state change in the call.
203
+
204
+ * MM_CALL_STATE_REASON_UNKNOWN Default value for a new outgoing call.
205
+ * MM_CALL_STATE_REASON_OUTGOING_STARTED Outgoing call is started.
206
+ * MM_CALL_STATE_REASON_INCOMING_NEW Received a new incoming call.
207
+ * MM_CALL_STATE_REASON_ACCEPTED Dialing or Ringing call is accepted.
208
+ * MM_CALL_STATE_REASON_TERMINATED Call is correctly terminated.
209
+ * MM_CALL_STATE_REASON_REFUSED_OR_BUSY Remote peer is busy or refused call.
210
+ * MM_CALL_STATE_REASON_ERROR Wrong number or generic network error.
211
+ * MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED Error setting up audio channel. Since 1.10.
212
+ * MM_CALL_STATE_REASON_TRANSFERRED Call has been transferred. Since 1.12.
213
+ * MM_CALL_STATE_REASON_DEFLECTED Call has been deflected to a new number. Since 1.12.
214
+ """
215
+ MM_CALL_STATE_REASON_UNKNOWN = 0
216
+ MM_CALL_STATE_REASON_OUTGOING_STARTED = 1
217
+ MM_CALL_STATE_REASON_INCOMING_NEW = 2
218
+ MM_CALL_STATE_REASON_ACCEPTED = 3
219
+ MM_CALL_STATE_REASON_TERMINATED = 4
220
+ MM_CALL_STATE_REASON_REFUSED_OR_BUSY = 5
221
+ MM_CALL_STATE_REASON_ERROR = 6
222
+ MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED = 7
223
+ MM_CALL_STATE_REASON_TRANSFERRED = 8
224
+ MM_CALL_STATE_REASON_DEFLECTED = 9
225
+
226
+
227
+ class MMModemCapability(IntEnum):
228
+ MM_MODEM_CAPABILITY_NONE = 0
229
+ MM_MODEM_CAPABILITY_POTS = 1 << 0
230
+ MM_MODEM_CAPABILITY_CDMA_EVDO = 1 << 1
231
+ MM_MODEM_CAPABILITY_GSM_UMTS = 1 << 2
232
+ MM_MODEM_CAPABILITY_LTE = 1 << 3
233
+ MM_MODEM_CAPABILITY_IRIDIUM = 1 << 5
234
+ MM_MODEM_CAPABILITY_5GNR = 1 << 6
235
+ MM_MODEM_CAPABILITY_TDS = 1 << 7
236
+ MM_MODEM_CAPABILITY_ANY = 0xFFFFFFFF
237
+
238
+ @staticmethod
239
+ def names(value) -> list:
240
+ names = []
241
+ if MMModemCapability.MM_MODEM_CAPABILITY_ANY != value:
242
+ for capability in MMModemCapability:
243
+ if capability & value and capability != MMModemCapability.MM_MODEM_CAPABILITY_ANY:
244
+ names.append(capability.name)
245
+ else:
246
+ names.append(MMModemCapability.MM_MODEM_CAPABILITY_ANY.name)
247
+ return names
@@ -2,7 +2,7 @@ from typing import Any, Dict, List, Optional, Tuple
2
2
 
3
3
  from sdbus import DbusInterfaceCommon, DbusObjectManagerInterface, dbus_method, dbus_property
4
4
 
5
- from .enums import MMModemPowerState, MMModemState
5
+ from .enums import MMModemPowerState, MMModemState, MMModemStateFailedReason, MMModemAccessTechnology, MMModemCapability
6
6
 
7
7
 
8
8
  class MMModemsInterface(DbusObjectManagerInterface):
@@ -123,6 +123,10 @@ class MMModemInterface(DbusInterfaceCommon, interface_name='org.freedesktop.Mode
123
123
  """
124
124
  raise NotImplementedError
125
125
 
126
+ @property
127
+ def state_failed_reason_text(self) -> str:
128
+ return MMModemStateFailedReason(self.state_failed_reason).name
129
+
126
130
  @dbus_property('ub')
127
131
  def signal_quality(self):
128
132
  """
@@ -145,6 +149,26 @@ class MMModemInterface(DbusInterfaceCommon, interface_name='org.freedesktop.Mode
145
149
  def power_state_text(self):
146
150
  return MMModemPowerState(self.power_state).name
147
151
 
152
+ @dbus_property('u')
153
+ def access_technologies(self):
154
+ """
155
+ A MMModemAccessTechnology bitfield that describes the various access technologies
156
+ that device uses when registered with or connected to a network
157
+ """
158
+ raise NotImplementedError
159
+
160
+ @property
161
+ def access_technologies_text(self) -> Optional[str]:
162
+ return MMModemAccessTechnology(self.access_technologies).name
163
+
164
+ @dbus_property('u', property_name='CurrentCapabilities')
165
+ def current_capabilities(self) -> int:
166
+ raise NotImplementedError
167
+
168
+ @property
169
+ def current_capabilities_text(self) -> Tuple[str]:
170
+ return tuple(MMModemCapability.names(self.current_capabilities))
171
+
148
172
 
149
173
  class MMModemMessagingInterface(DbusInterfaceCommon, interface_name='org.freedesktop.ModemManager1.Modem.Messaging'):
150
174
  """The Messaging interface handles sending SMS messages and notification of new incoming messages."""
@@ -274,21 +298,21 @@ class MMModemSignalInterface(DbusInterfaceCommon, interface_name='org.freedeskto
274
298
  A value of 0 disables the retrieval of the values.
275
299
  """
276
300
  raise NotImplementedError
277
-
301
+
278
302
  @dbus_property('a{sv}')
279
303
  def cdma(self) -> Dict[str, Tuple[str, Any]]:
280
304
  """
281
305
  Dictionary of available signal information for the CDMA1x access technology.
282
306
  """
283
307
  raise NotImplementedError
284
-
308
+
285
309
  @dbus_property('a{sv}')
286
310
  def evdo(self) -> Dict[str, Tuple[str, Any]]:
287
311
  """
288
312
  Dictionary of available signal information for the CDMA EV-DO access technology.
289
313
  """
290
314
  raise NotImplementedError
291
-
315
+
292
316
  @dbus_property('a{sv}')
293
317
  def gsm(self) -> Dict[str, Tuple[str, Any]]:
294
318
  """
@@ -302,14 +326,14 @@ class MMModemSignalInterface(DbusInterfaceCommon, interface_name='org.freedeskto
302
326
  Dictionary of available signal information for the UMTS (WCDMA) access technology.
303
327
  """
304
328
  raise NotImplementedError
305
-
329
+
306
330
  @dbus_property('a{sv}')
307
331
  def lte(self) -> Dict[str, Tuple[str, Any]]:
308
332
  """
309
333
  Dictionary of available signal information for the LTE access technology.
310
334
  """
311
335
  raise NotImplementedError
312
-
336
+
313
337
  @dbus_property('a{sv}')
314
338
  def nr5g(self) -> Dict[str, Tuple[str, Any]]:
315
339
  """
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: sdbus-modemmanager
3
- Version: 1.0.1
3
+ Version: 1.0.2
4
4
  Summary: ModemManager binds for sdbus.
5
5
  Home-page: https://github.com/zhanglongqi/python-sdbus-modemmanager
6
6
  License: LGPL-2.1-or-later
@@ -16,6 +16,15 @@ Requires-Python: >=3.7
16
16
  Description-Content-Type: text/markdown
17
17
  License-File: COPYING.LESSER
18
18
  Requires-Dist: sdbus>=0.8rc2
19
+ Dynamic: classifier
20
+ Dynamic: description
21
+ Dynamic: description-content-type
22
+ Dynamic: home-page
23
+ Dynamic: license
24
+ Dynamic: project-url
25
+ Dynamic: requires-dist
26
+ Dynamic: requires-python
27
+ Dynamic: summary
19
28
 
20
29
  # python-sdbus-modemmanager
21
30
 
@@ -5,7 +5,7 @@ setup(
5
5
  description=('ModemManager binds for sdbus.'),
6
6
  long_description=open('README.md').read(),
7
7
  long_description_content_type='text/markdown',
8
- version='1.0.1',
8
+ version='1.0.2',
9
9
  url='https://github.com/zhanglongqi/python-sdbus-modemmanager',
10
10
  project_urls={
11
11
  'Source': 'https://github.com/zhanglongqi/python-sdbus-modemmanager/',
@@ -1,126 +0,0 @@
1
- from enum import Enum, IntEnum, IntFlag
2
-
3
-
4
- class MMModemState(IntEnum):
5
- """Enumeration of possible modem states.
6
-
7
- * MM_MODEM_STATE_FAILED: The modem is unusable.
8
- * MM_MODEM_STATE_UNKNOWN: State unknown or not reportable.
9
- * MM_MODEM_STATE_INITIALIZING: The modem is currently being initialized.
10
- * MM_MODEM_STATE_LOCKED: The modem needs to be unlocked.
11
- * MM_MODEM_STATE_DISABLED: The modem is not enabled and is powered down.
12
- * MM_MODEM_STATE_DISABLING: The modem is currently transitioning to the MM_MODEM_STATE_DISABLED state.
13
- * MM_MODEM_STATE_ENABLING: The modem is currently transitioning to the MM_MODEM_STATE_ENABLED state.
14
- * MM_MODEM_STATE_ENABLED: The modem is enabled and powered on but not registered with a network provider and not available for data connections.
15
- * MM_MODEM_STATE_SEARCHING: The modem is searching for a network provider to register with.
16
- * MM_MODEM_STATE_REGISTERED: The modem is registered with a network provider, and data connections and messaging may be available for use.
17
- * MM_MODEM_STATE_DISCONNECTING: The modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated.
18
- * MM_MODEM_STATE_CONNECTING: The modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered.
19
- * MM_MODEM_STATE_CONNECTED: One or more packet data bearers is active and connected.
20
- """
21
- MM_MODEM_STATE_FAILED = -1,
22
- MM_MODEM_STATE_UNKNOWN = 0,
23
- MM_MODEM_STATE_INITIALIZING = 1,
24
- MM_MODEM_STATE_LOCKED = 2,
25
- MM_MODEM_STATE_DISABLED = 3,
26
- MM_MODEM_STATE_DISABLING = 4,
27
- MM_MODEM_STATE_ENABLING = 5,
28
- MM_MODEM_STATE_ENABLED = 6,
29
- MM_MODEM_STATE_SEARCHING = 7,
30
- MM_MODEM_STATE_REGISTERED = 8,
31
- MM_MODEM_STATE_DISCONNECTING = 9,
32
- MM_MODEM_STATE_CONNECTING = 10,
33
- MM_MODEM_STATE_CONNECTED = 11
34
-
35
-
36
- class MMModemMode(IntEnum):
37
- """Bitfield to indicate which access modes are supported, allowed or preferred in a given device.
38
-
39
- * MM_MODEM_MODE_NONE: None.
40
- * MM_MODEM_MODE_CS: CSD, GSM, and other circuit-switched technologies.
41
- * MM_MODEM_MODE_2G: GPRS, EDGE.
42
- * MM_MODEM_MODE_3G: UMTS, HSxPA.
43
- * MM_MODEM_MODE_4G: LTE.
44
- * MM_MODEM_MODE_5G: 5GNR. Since 1.14.
45
- * MM_MODEM_MODE_ANY: Any mode can be used (only this value allowed for POTS modems).
46
- """
47
- MM_MODEM_MODE_NONE = 0,
48
- MM_MODEM_MODE_CS = 1 << 0,
49
- MM_MODEM_MODE_2G = 1 << 1,
50
- MM_MODEM_MODE_3G = 1 << 2,
51
- MM_MODEM_MODE_4G = 1 << 3,
52
- MM_MODEM_MODE_ANY = 0xFFFFFFFF
53
-
54
-
55
- class MMModemPowerState(IntEnum):
56
- """Power state of the modem.
57
-
58
- * MM_MODEM_POWER_STATE_UNKNOWN Unknown power state.
59
- * MM_MODEM_POWER_STATE_OFF Off.
60
- * MM_MODEM_POWER_STATE_LOW Low-power mode.
61
- * MM_MODEM_POWER_STATE_ON Full power mode.
62
- """
63
- MM_MODEM_POWER_STATE_UNKNOWN = 0,
64
- MM_MODEM_POWER_STATE_OFF = 1,
65
- MM_MODEM_POWER_STATE_LOW = 2,
66
- MM_MODEM_POWER_STATE_ON = 3
67
-
68
-
69
- class MMCallDirection(IntEnum):
70
- """Direction of the call.
71
-
72
- * MM_CALL_DIRECTION_UNKNOWN Unknown.
73
- * MM_CALL_DIRECTION_INCOMING Call from network.
74
- * MM_CALL_DIRECTION_OUTGOING Call to network.
75
- """
76
- MM_CALL_DIRECTION_UNKNOWN = 0,
77
- MM_CALL_DIRECTION_INCOMING = 1,
78
- MM_CALL_DIRECTION_OUTGOING = 2
79
-
80
-
81
- class MMCallState(IntEnum):
82
- """State of Call.
83
-
84
- * MM_CALL_STATE_UNKNOWN Default state for a new outgoing call.
85
- * MM_CALL_STATE_DIALING Outgoing call started. Wait for free channel.
86
- * MM_CALL_STATE_RINGING_OUT Outgoing call attached to GSM network, waiting for an answer.
87
- * MM_CALL_STATE_RINGING_IN Incoming call is waiting for an answer.
88
- * MM_CALL_STATE_ACTIVE Call is active between two peers.
89
- * MM_CALL_STATE_HELD Held call (by +CHLD AT command).
90
- * MM_CALL_STATE_WAITING Waiting call (by +CCWA AT command).
91
- * MM_CALL_STATE_TERMINATED Call is terminated.
92
- """
93
- MM_CALL_STATE_UNKNOWN = 0,
94
- MM_CALL_STATE_DIALING = 1,
95
- MM_CALL_STATE_RINGING_OUT = 2,
96
- MM_CALL_STATE_RINGING_IN = 3,
97
- MM_CALL_STATE_ACTIVE = 4,
98
- MM_CALL_STATE_HELD = 5,
99
- MM_CALL_STATE_WAITING = 6,
100
- MM_CALL_STATE_TERMINATED = 7
101
-
102
-
103
- class MMCallStateReason(IntEnum):
104
- """Reason for the state change in the call.
105
-
106
- * MM_CALL_STATE_REASON_UNKNOWN Default value for a new outgoing call.
107
- * MM_CALL_STATE_REASON_OUTGOING_STARTED Outgoing call is started.
108
- * MM_CALL_STATE_REASON_INCOMING_NEW Received a new incoming call.
109
- * MM_CALL_STATE_REASON_ACCEPTED Dialing or Ringing call is accepted.
110
- * MM_CALL_STATE_REASON_TERMINATED Call is correctly terminated.
111
- * MM_CALL_STATE_REASON_REFUSED_OR_BUSY Remote peer is busy or refused call.
112
- * MM_CALL_STATE_REASON_ERROR Wrong number or generic network error.
113
- * MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED Error setting up audio channel. Since 1.10.
114
- * MM_CALL_STATE_REASON_TRANSFERRED Call has been transferred. Since 1.12.
115
- * MM_CALL_STATE_REASON_DEFLECTED Call has been deflected to a new number. Since 1.12.
116
- """
117
- MM_CALL_STATE_REASON_UNKNOWN = 0,
118
- MM_CALL_STATE_REASON_OUTGOING_STARTED = 1,
119
- MM_CALL_STATE_REASON_INCOMING_NEW = 2,
120
- MM_CALL_STATE_REASON_ACCEPTED = 3,
121
- MM_CALL_STATE_REASON_TERMINATED = 4,
122
- MM_CALL_STATE_REASON_REFUSED_OR_BUSY = 5,
123
- MM_CALL_STATE_REASON_ERROR = 6,
124
- MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED = 7,
125
- MM_CALL_STATE_REASON_TRANSFERRED = 8,
126
- MM_CALL_STATE_REASON_DEFLECTED = 9
@@ -1,126 +0,0 @@
1
- from enum import Enum, IntEnum, IntFlag
2
-
3
-
4
- class MMModemState(IntEnum):
5
- """Enumeration of possible modem states.
6
-
7
- * MM_MODEM_STATE_FAILED: The modem is unusable.
8
- * MM_MODEM_STATE_UNKNOWN: State unknown or not reportable.
9
- * MM_MODEM_STATE_INITIALIZING: The modem is currently being initialized.
10
- * MM_MODEM_STATE_LOCKED: The modem needs to be unlocked.
11
- * MM_MODEM_STATE_DISABLED: The modem is not enabled and is powered down.
12
- * MM_MODEM_STATE_DISABLING: The modem is currently transitioning to the MM_MODEM_STATE_DISABLED state.
13
- * MM_MODEM_STATE_ENABLING: The modem is currently transitioning to the MM_MODEM_STATE_ENABLED state.
14
- * MM_MODEM_STATE_ENABLED: The modem is enabled and powered on but not registered with a network provider and not available for data connections.
15
- * MM_MODEM_STATE_SEARCHING: The modem is searching for a network provider to register with.
16
- * MM_MODEM_STATE_REGISTERED: The modem is registered with a network provider, and data connections and messaging may be available for use.
17
- * MM_MODEM_STATE_DISCONNECTING: The modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated.
18
- * MM_MODEM_STATE_CONNECTING: The modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered.
19
- * MM_MODEM_STATE_CONNECTED: One or more packet data bearers is active and connected.
20
- """
21
- MM_MODEM_STATE_FAILED = -1,
22
- MM_MODEM_STATE_UNKNOWN = 0,
23
- MM_MODEM_STATE_INITIALIZING = 1,
24
- MM_MODEM_STATE_LOCKED = 2,
25
- MM_MODEM_STATE_DISABLED = 3,
26
- MM_MODEM_STATE_DISABLING = 4,
27
- MM_MODEM_STATE_ENABLING = 5,
28
- MM_MODEM_STATE_ENABLED = 6,
29
- MM_MODEM_STATE_SEARCHING = 7,
30
- MM_MODEM_STATE_REGISTERED = 8,
31
- MM_MODEM_STATE_DISCONNECTING = 9,
32
- MM_MODEM_STATE_CONNECTING = 10,
33
- MM_MODEM_STATE_CONNECTED = 11
34
-
35
-
36
- class MMModemMode(IntEnum):
37
- """Bitfield to indicate which access modes are supported, allowed or preferred in a given device.
38
-
39
- * MM_MODEM_MODE_NONE: None.
40
- * MM_MODEM_MODE_CS: CSD, GSM, and other circuit-switched technologies.
41
- * MM_MODEM_MODE_2G: GPRS, EDGE.
42
- * MM_MODEM_MODE_3G: UMTS, HSxPA.
43
- * MM_MODEM_MODE_4G: LTE.
44
- * MM_MODEM_MODE_5G: 5GNR. Since 1.14.
45
- * MM_MODEM_MODE_ANY: Any mode can be used (only this value allowed for POTS modems).
46
- """
47
- MM_MODEM_MODE_NONE = 0,
48
- MM_MODEM_MODE_CS = 1 << 0,
49
- MM_MODEM_MODE_2G = 1 << 1,
50
- MM_MODEM_MODE_3G = 1 << 2,
51
- MM_MODEM_MODE_4G = 1 << 3,
52
- MM_MODEM_MODE_ANY = 0xFFFFFFFF
53
-
54
-
55
- class MMModemPowerState(IntEnum):
56
- """Power state of the modem.
57
-
58
- * MM_MODEM_POWER_STATE_UNKNOWN Unknown power state.
59
- * MM_MODEM_POWER_STATE_OFF Off.
60
- * MM_MODEM_POWER_STATE_LOW Low-power mode.
61
- * MM_MODEM_POWER_STATE_ON Full power mode.
62
- """
63
- MM_MODEM_POWER_STATE_UNKNOWN = 0,
64
- MM_MODEM_POWER_STATE_OFF = 1,
65
- MM_MODEM_POWER_STATE_LOW = 2,
66
- MM_MODEM_POWER_STATE_ON = 3
67
-
68
-
69
- class MMCallDirection(IntEnum):
70
- """Direction of the call.
71
-
72
- * MM_CALL_DIRECTION_UNKNOWN Unknown.
73
- * MM_CALL_DIRECTION_INCOMING Call from network.
74
- * MM_CALL_DIRECTION_OUTGOING Call to network.
75
- """
76
- MM_CALL_DIRECTION_UNKNOWN = 0,
77
- MM_CALL_DIRECTION_INCOMING = 1,
78
- MM_CALL_DIRECTION_OUTGOING = 2
79
-
80
-
81
- class MMCallState(IntEnum):
82
- """State of Call.
83
-
84
- * MM_CALL_STATE_UNKNOWN Default state for a new outgoing call.
85
- * MM_CALL_STATE_DIALING Outgoing call started. Wait for free channel.
86
- * MM_CALL_STATE_RINGING_OUT Outgoing call attached to GSM network, waiting for an answer.
87
- * MM_CALL_STATE_RINGING_IN Incoming call is waiting for an answer.
88
- * MM_CALL_STATE_ACTIVE Call is active between two peers.
89
- * MM_CALL_STATE_HELD Held call (by +CHLD AT command).
90
- * MM_CALL_STATE_WAITING Waiting call (by +CCWA AT command).
91
- * MM_CALL_STATE_TERMINATED Call is terminated.
92
- """
93
- MM_CALL_STATE_UNKNOWN = 0,
94
- MM_CALL_STATE_DIALING = 1,
95
- MM_CALL_STATE_RINGING_OUT = 2,
96
- MM_CALL_STATE_RINGING_IN = 3,
97
- MM_CALL_STATE_ACTIVE = 4,
98
- MM_CALL_STATE_HELD = 5,
99
- MM_CALL_STATE_WAITING = 6,
100
- MM_CALL_STATE_TERMINATED = 7
101
-
102
-
103
- class MMCallStateReason(IntEnum):
104
- """Reason for the state change in the call.
105
-
106
- * MM_CALL_STATE_REASON_UNKNOWN Default value for a new outgoing call.
107
- * MM_CALL_STATE_REASON_OUTGOING_STARTED Outgoing call is started.
108
- * MM_CALL_STATE_REASON_INCOMING_NEW Received a new incoming call.
109
- * MM_CALL_STATE_REASON_ACCEPTED Dialing or Ringing call is accepted.
110
- * MM_CALL_STATE_REASON_TERMINATED Call is correctly terminated.
111
- * MM_CALL_STATE_REASON_REFUSED_OR_BUSY Remote peer is busy or refused call.
112
- * MM_CALL_STATE_REASON_ERROR Wrong number or generic network error.
113
- * MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED Error setting up audio channel. Since 1.10.
114
- * MM_CALL_STATE_REASON_TRANSFERRED Call has been transferred. Since 1.12.
115
- * MM_CALL_STATE_REASON_DEFLECTED Call has been deflected to a new number. Since 1.12.
116
- """
117
- MM_CALL_STATE_REASON_UNKNOWN = 0,
118
- MM_CALL_STATE_REASON_OUTGOING_STARTED = 1,
119
- MM_CALL_STATE_REASON_INCOMING_NEW = 2,
120
- MM_CALL_STATE_REASON_ACCEPTED = 3,
121
- MM_CALL_STATE_REASON_TERMINATED = 4,
122
- MM_CALL_STATE_REASON_REFUSED_OR_BUSY = 5,
123
- MM_CALL_STATE_REASON_ERROR = 6,
124
- MM_CALL_STATE_REASON_AUDIO_SETUP_FAILED = 7,
125
- MM_CALL_STATE_REASON_TRANSFERRED = 8,
126
- MM_CALL_STATE_REASON_DEFLECTED = 9