DLMS-SPODES-client 0.19.21__py3-none-any.whl → 0.19.23__py3-none-any.whl

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.
Files changed (60) hide show
  1. DLMS_SPODES_client/FCS16.py +39 -39
  2. DLMS_SPODES_client/__init__.py +12 -12
  3. DLMS_SPODES_client/client.py +2091 -2091
  4. DLMS_SPODES_client/gurux_common/enums/TraceLevel.py +21 -21
  5. DLMS_SPODES_client/gurux_dlms/AesGcmParameter.py +37 -37
  6. DLMS_SPODES_client/gurux_dlms/CountType.py +16 -16
  7. DLMS_SPODES_client/gurux_dlms/GXByteBuffer.py +545 -545
  8. DLMS_SPODES_client/gurux_dlms/GXCiphering.py +196 -196
  9. DLMS_SPODES_client/gurux_dlms/GXDLMS.py +426 -426
  10. DLMS_SPODES_client/gurux_dlms/GXDLMSChippering.py +237 -237
  11. DLMS_SPODES_client/gurux_dlms/GXDLMSChipperingStream.py +977 -977
  12. DLMS_SPODES_client/gurux_dlms/GXDLMSConfirmedServiceError.py +90 -90
  13. DLMS_SPODES_client/gurux_dlms/GXDLMSException.py +139 -139
  14. DLMS_SPODES_client/gurux_dlms/GXDLMSLNParameters.py +33 -33
  15. DLMS_SPODES_client/gurux_dlms/GXDLMSSNParameters.py +21 -21
  16. DLMS_SPODES_client/gurux_dlms/GXDLMSSettings.py +254 -254
  17. DLMS_SPODES_client/gurux_dlms/GXReplyData.py +87 -87
  18. DLMS_SPODES_client/gurux_dlms/HdlcControlFrame.py +9 -9
  19. DLMS_SPODES_client/gurux_dlms/MBusCommand.py +8 -8
  20. DLMS_SPODES_client/gurux_dlms/MBusEncryptionMode.py +27 -27
  21. DLMS_SPODES_client/gurux_dlms/ResponseType.py +8 -8
  22. DLMS_SPODES_client/gurux_dlms/SetResponseType.py +29 -29
  23. DLMS_SPODES_client/gurux_dlms/_HDLCInfo.py +9 -9
  24. DLMS_SPODES_client/gurux_dlms/__init__.py +75 -75
  25. DLMS_SPODES_client/gurux_dlms/enums/Access.py +12 -12
  26. DLMS_SPODES_client/gurux_dlms/enums/ApplicationReference.py +14 -14
  27. DLMS_SPODES_client/gurux_dlms/enums/Authentication.py +41 -41
  28. DLMS_SPODES_client/gurux_dlms/enums/BerType.py +35 -35
  29. DLMS_SPODES_client/gurux_dlms/enums/Command.py +285 -285
  30. DLMS_SPODES_client/gurux_dlms/enums/Definition.py +9 -9
  31. DLMS_SPODES_client/gurux_dlms/enums/ErrorCode.py +46 -46
  32. DLMS_SPODES_client/gurux_dlms/enums/ExceptionServiceError.py +12 -12
  33. DLMS_SPODES_client/gurux_dlms/enums/HardwareResource.py +10 -10
  34. DLMS_SPODES_client/gurux_dlms/enums/HdlcFrameType.py +9 -9
  35. DLMS_SPODES_client/gurux_dlms/enums/Initiate.py +10 -10
  36. DLMS_SPODES_client/gurux_dlms/enums/LoadDataSet.py +13 -13
  37. DLMS_SPODES_client/gurux_dlms/enums/ObjectType.py +306 -306
  38. DLMS_SPODES_client/gurux_dlms/enums/Priority.py +7 -7
  39. DLMS_SPODES_client/gurux_dlms/enums/RequestTypes.py +9 -9
  40. DLMS_SPODES_client/gurux_dlms/enums/Security.py +14 -14
  41. DLMS_SPODES_client/gurux_dlms/enums/Service.py +16 -16
  42. DLMS_SPODES_client/gurux_dlms/enums/ServiceClass.py +9 -9
  43. DLMS_SPODES_client/gurux_dlms/enums/ServiceError.py +8 -8
  44. DLMS_SPODES_client/gurux_dlms/enums/Standard.py +18 -18
  45. DLMS_SPODES_client/gurux_dlms/enums/StateError.py +7 -7
  46. DLMS_SPODES_client/gurux_dlms/enums/Task.py +10 -10
  47. DLMS_SPODES_client/gurux_dlms/enums/VdeStateError.py +10 -10
  48. DLMS_SPODES_client/gurux_dlms/enums/__init__.py +33 -33
  49. DLMS_SPODES_client/gurux_dlms/internal/_GXCommon.py +1673 -1673
  50. DLMS_SPODES_client/logger.py +56 -56
  51. DLMS_SPODES_client/services.py +97 -97
  52. DLMS_SPODES_client/session.py +365 -365
  53. DLMS_SPODES_client/settings.py +48 -48
  54. DLMS_SPODES_client/task.py +1842 -1840
  55. {dlms_spodes_client-0.19.21.dist-info → dlms_spodes_client-0.19.23.dist-info}/METADATA +29 -27
  56. dlms_spodes_client-0.19.23.dist-info/RECORD +61 -0
  57. dlms_spodes_client-0.19.21.dist-info/RECORD +0 -61
  58. {dlms_spodes_client-0.19.21.dist-info → dlms_spodes_client-0.19.23.dist-info}/WHEEL +0 -0
  59. {dlms_spodes_client-0.19.21.dist-info → dlms_spodes_client-0.19.23.dist-info}/entry_points.txt +0 -0
  60. {dlms_spodes_client-0.19.21.dist-info → dlms_spodes_client-0.19.23.dist-info}/top_level.txt +0 -0
@@ -1,306 +1,306 @@
1
- from enum import IntEnum
2
-
3
-
4
- class ObjectType(IntEnum):
5
- """ObjectType enumerates the usable types of DLMS objects in GuruxDLMS."""
6
- #pylint: disable=too-few-public-methods
7
-
8
- # When communicating with a meter, the application may demand periodical
9
- # actions. If these actions are not linked to tariffication =
10
- # ActivityCalendar or Schedule, use an object of type ActionSchedule =
11
- # 0x16.
12
- ACTION_SCHEDULE = 22
13
-
14
- # When handling tariffication structures, you can use an object of type
15
- # ActivityCalendar. It determines, when to activate specified scripts to
16
- # perform certain activities in the meter. The activities, simply said,
17
- # scheduled actions, are operations that are carried out on a specified
18
- # day, at a specified time. ActivityCalendar can be used together with a
19
- # more general object type, Schedule, and they can even overlap. If
20
- # multiple actions are timed to the same moment, the actions determined in
21
- # the Schedule are executed first, and then the ones determined in the
22
- # ActivityCalendar. If using object type SpecialDaysTable, with
23
- # ActivityCalendar, simultaneous actions determined in SpecialDaysTable are
24
- # executed over the ones determined in ActivityCalendar. <p /> <b>Note:
25
- # </b>To make sure that tariffication is correct after a power failure,
26
- # only the latest missed action from ActivityCalendar is executed, with a
27
- # delay. In a case of power failure, if a Schedule object coexists, the
28
- # latest missed action from ActivityCalendar has to be executed at the
29
- # correct time, sequentially with actions determined in the Schedule.
30
- ACTIVITY_CALENDAR = 20
31
-
32
- # All object types are used.
33
- NONE = 0
34
-
35
- # AssociationLogicalName object type is used with meters that utilize
36
- # Logical Name associations within a COSEM.
37
- ASSOCIATION_LOGICAL_NAME = 15
38
-
39
- # AssociationShortName object type is used with meters that utilize Short
40
- # Name associations within a COSEM.
41
- ASSOCIATION_SHORT_NAME = 12
42
-
43
- # To determine auto answering settings = for data transfer between device
44
- # and modem = s to answer incoming calls, use AutoAnswer object.
45
- AUTO_ANSWER = 28
46
-
47
- # To determine auto connecting settings = for data transfer from the meter
48
- # to defined destinations, use AutoConnect = previously known as AutoDial
49
- # object.
50
- AUTO_CONNECT = 29
51
-
52
- # An object of type Clock is used to handle the information of a date =
53
- # day, month and year and/or a time = hundredths of a second, seconds,
54
- # minutes and hours.
55
- CLOCK = 8
56
-
57
- # An object of type Data typically stores manufacturer specific information
58
- # of the meter, for example configuration data and logical name.
59
- DATA = 1
60
-
61
- # An object of type DemandRegister stores a value, information of the item,
62
- # which the value belongs to, the status of the item, and the time of the
63
- # value. DemandRegister object type enables both current, and last
64
- # average,
65
- # it supports both block, and sliding demand calculation, and it also
66
- # provides resetting the value average, and periodic averages.
67
- DEMAND_REGISTER = 5
68
-
69
- # MAC address of the physical device. The name and the use of this
70
- # interface class has been changed from Ethernet setup to MAC address setup
71
- # to allow a more general use.
72
- MAC_ADDRESS_SETUP = 43
73
-
74
-
75
- # ExtendedRegister stores a value, and understands the type of the value.
76
- # Refer to an object of this type by its logical name, using the OBIS
77
- # identification code.
78
- EXTENDED_REGISTER = 4
79
-
80
- # To determine the GPRS settings, use GprsSetup object.
81
- GPRS_SETUP = 45
82
-
83
- # To determine the HDLC = High-level Data Link Control settings, use the
84
- # IecHdlcSetup object.
85
- IEC_HDLC_SETUP = 23
86
-
87
- # To determine the Local Port settings, use the IecLocalPortSetup object.
88
- IEC_LOCAL_PORT_SETUP = 19
89
-
90
- # To determine the Twisted Pair settings, use the IecTwistedPairSetup
91
- # object.
92
- IEC_TWISTED_PAIR_SETUP = 24
93
-
94
- # To determine the IP 4 settings, use the Ip4Setup object.
95
- IP4_SETUP = 42
96
-
97
- GSM_DIAGNOSTIC = 47
98
-
99
- # To determine the IP 6 settings, use the Ip6Setup object.
100
- IP6_SETUP = 48
101
-
102
- # To determine the M-BUS settings, use the MbusSetup object.
103
- MBUS_SLAVE_PORT_SETUP = 25
104
-
105
- # To determine modem settings, use ModemConfiguration object.
106
- MODEM_CONFIGURATION = 27
107
-
108
- # To determine PPP = Point-to-Point Protocol settings, use the PppSetup
109
- # object.
110
- PPP_SETUP = 44
111
-
112
- # ProfileGeneric determines a general way of gathering values from a
113
- # profile. The data is retrieved either by a period of time, or by an
114
- # occuring event. When gathering values from a profile, you need to
115
- # understand the concept of the profile buffer, in which the profile data
116
- # is stored. The buffer may be sorted by a register, or by a clock, within
117
- # the profile, or the data can be just piled in it, in order: last in,
118
- # first out. You can retrieve a part of the buffer, within a certain range
119
- # of values, or by a range of entry numbers. You can also determine
120
- # objects, whose values are to be retained. To determine, what to
121
- # retrieve,
122
- # and what to retain, you need to assign the objects to the profile. You
123
- # can use static assignments, as all entries in a buffer are alike = same
124
- # size, same structure. <p /> <b>Note: </b>When you modify any assignment,
125
- # the buffer of the corresponding profile is cleared, and all other
126
- # profiles, using the modified one, will be cleared too. This is to make
127
- # sure that their entries stay alike by size and structure.
128
- PROFILE_GENERIC = 7
129
-
130
- # Register stores a value, and understands the type of the value. Refer to
131
- # an object of this type by its logical name, using the OBIS identification
132
- # code.
133
- REGISTER = 3
134
-
135
- # When handling tariffication structures, you can use RegisterActivation to
136
- # determine, what objects to enable, when activating a certain activation
137
- # mask. The objects, assigned to the register, but not determined in the
138
- # mask, are disabled. <p /> <b>Note: </b>If an object is not assigned to
139
- # any register, it is, by default, enabled.
140
- REGISTER_ACTIVATION = 6
141
-
142
- # RegisterMonitor allows you to determine scripts to execute, when a
143
- # register value crosses a specified threshold. To use RegisterMonitor,
144
- # also ScriptTable needs to be instantiated in the same logical device.
145
- REGISTER_MONITOR = 21
146
-
147
- # Instances of the Disconnect control IC manage an internal or external
148
- # disconnect unit of the meter.
149
- DISCONNECT_CONTROL = 70
150
-
151
- LIMITER = 71
152
-
153
- MBUS_CLIENT = 72
154
-
155
- PUSH_SETUP = 40
156
-
157
- COMPACT_DATA = 62
158
-
159
- PARAMETER_MONITOR = 65
160
- WIRELESS_MODE_Q_CHANNEL = 73
161
- MBUS_MASTER_PORT_SETUP = 74
162
-
163
- #
164
- # Addresses that are provided by the base node during the opening of the
165
- # convergence layer.
166
- #
167
- LLC_SSCS_SETUP = 80
168
-
169
- #
170
- # Counters related to the physical layers exchanges.
171
- #
172
- PRIME_NB_OFDM_PLC_PHYSICAL_LAYER_COUNTERS = 81
173
-
174
- #
175
- # A necessary parameters to set up and manage the PRIME NB OFDM PLC MAC
176
- # layer.
177
- #
178
- PRIME_NB_OFDM_PLC_MAC_SETUP = 82
179
-
180
- #
181
- # Functional behaviour of MAC.
182
- #
183
- PRIME_NB_OFDM_PLC_MAC_FUNCTIONAL_PARAMETERS = 83
184
-
185
- #
186
- # Statistical information on the operation of the MAC layer for management
187
- # purposes.
188
- #
189
- PRIME_NB_OFDM_PLC_MAC_COUNTERS = 84
190
-
191
- #
192
- # Parameters related to the management of the devices connected to the
193
- # network.
194
- #
195
- PRIME_NB_OFDM_PLC_MAC_NETWORK_ADMINISTRATION_DATA = 85
196
-
197
- #
198
- # Identification information related to administration and maintenance of
199
- # PRIME NB OFDM PLC devices.
200
- #
201
- PRIME_NB_OFDM_PLC_APPLICATIONS_IDENTIFICATION = 86
202
-
203
- # RegisterTable stores identical attributes of objects, in a selected
204
- # collection of objects. All the objects in the collection need to be of
205
- # the same type. Also, the value in value groups A to D and F in their
206
- # logical name = OBIS identification code needs to be identical. <p />
207
- # Clause 5 determines the possible values in value group E, as a table,
208
- # where header = the common part, and each cell = a possible E value, of
209
- # the OBIS code.
210
- REGISTER_TABLE = 61
211
-
212
- #
213
- # Configure a ZigBee PRO device with information necessary to create or
214
- # join the network.
215
- ZIG_BEE_SAS_STARTUP = 101
216
-
217
- #
218
- # Configure the behavior of a ZigBee PRO device on joining or loss of
219
- # connection to the network.
220
- ZIG_BEE_SAS_JOIN = 102
221
-
222
- #
223
- # Configure the fragmentation feature of ZigBee PRO transport layer.
224
- ZIG_BEE_SAS_APS_FRAGMENTATION = 103
225
- ZIG_BEE_NETWORK_CONTROL = 104
226
-
227
- DATA_PROTECTION = 30
228
-
229
- ACCOUNT = 111
230
-
231
- CREDIT = 112
232
-
233
- CHARGE = 113
234
-
235
- TOKEN_GATEWAY = 115
236
-
237
- # SapAssigment stores information of assignment of the logical devices to
238
- # their SAP = Service Access Points.
239
- SAP_ASSIGNMENT = 17
240
-
241
- # Instances of the Image transfer IC model the mechanism of transferring
242
- # binary files, called firmware Images to COSEM servers.
243
- IMAGE_TRANSFER = 18
244
-
245
- # To handle time and date driven actions, use Schedule, with an object of
246
- # type SpecialDaysTable.
247
- SCHEDULE = 10
248
-
249
- # To trigger a set of actions with an execute method, use object type
250
- # ScriptTable. Each table entry = script includes a unique identifier, and
251
- # a set of action specifications, which either execute a method, or modify
252
- # the object attributes, within the logical device. The script can be
253
- # triggered by other objects = within the same logical device, or from the
254
- # outside.
255
- SCRIPT_TABLE = 9
256
-
257
- # To determine the SMTP protocol settings, use the SmtpSetup object.
258
- SMTP_SETUP = 2
259
-
260
- # With SpecialDaysTable you can determine dates to override a preset
261
- # behaviour, for specific days = data item day_id. SpecialDaysTable works
262
- # together with objects of Schedule, or Activity Calendar.
263
- SPECIAL_DAYS_TABLE = 11
264
-
265
- # StatusMapping object stores status words with mapping. Each bit in the
266
- # status word is mapped to position = s in referencing status table.
267
- STATUS_MAPPING = 63
268
-
269
- SECURITY_SETUP = 64
270
-
271
- # To determine Internet TCP/UDP protocol settings, use the TcpUdpSetup
272
- # object.
273
- TCP_UDP_SETUP = 41
274
-
275
- # In an object of type UtilityTables each "Table" = ANSI C12.19:1997 table
276
- # data is represented as an instance, and identified by its logical name.
277
- UTILITY_TABLES = 26
278
-
279
- #
280
- # S-FSK Phy MAC Setup
281
- SFSK_PHY_MAC_SETUP = 50
282
-
283
-
284
- # S-FSK Active initiator.
285
- SFSK_ACTIVE_INITIATOR = 51
286
-
287
- # S-FSK MAC synchronization timeouts
288
- SFSK_MAC_SYNCHRONIZATION_TIMEOUTS = 52
289
-
290
- # S-FSK MAC Counters.
291
- SFSK_MAC_COUNTERS = 53
292
-
293
- # G3-PLC MAC layer counters
294
- G3_PLC_MAC_LAYER_COUNTERS = 90
295
-
296
-
297
- # G3-PLC MAC setup.
298
- G3_PLC_MAC_SETUP = 91
299
-
300
- # G3-PLC 6LoWPAN.
301
- G3_PLC6_LO_WPAN = 92
302
-
303
- #
304
- # Tariff Plan =Piano Tariffario) is used in Italian standard UNI/TS
305
- # 11291-11.
306
- TARIFF_PLAN = 8192
1
+ from enum import IntEnum
2
+
3
+
4
+ class ObjectType(IntEnum):
5
+ """ObjectType enumerates the usable types of DLMS objects in GuruxDLMS."""
6
+ #pylint: disable=too-few-public-methods
7
+
8
+ # When communicating with a meter, the application may demand periodical
9
+ # actions. If these actions are not linked to tariffication =
10
+ # ActivityCalendar or Schedule, use an object of type ActionSchedule =
11
+ # 0x16.
12
+ ACTION_SCHEDULE = 22
13
+
14
+ # When handling tariffication structures, you can use an object of type
15
+ # ActivityCalendar. It determines, when to activate specified scripts to
16
+ # perform certain activities in the meter. The activities, simply said,
17
+ # scheduled actions, are operations that are carried out on a specified
18
+ # day, at a specified time. ActivityCalendar can be used together with a
19
+ # more general object type, Schedule, and they can even overlap. If
20
+ # multiple actions are timed to the same moment, the actions determined in
21
+ # the Schedule are executed first, and then the ones determined in the
22
+ # ActivityCalendar. If using object type SpecialDaysTable, with
23
+ # ActivityCalendar, simultaneous actions determined in SpecialDaysTable are
24
+ # executed over the ones determined in ActivityCalendar. <p /> <b>Note:
25
+ # </b>To make sure that tariffication is correct after a power failure,
26
+ # only the latest missed action from ActivityCalendar is executed, with a
27
+ # delay. In a case of power failure, if a Schedule object coexists, the
28
+ # latest missed action from ActivityCalendar has to be executed at the
29
+ # correct time, sequentially with actions determined in the Schedule.
30
+ ACTIVITY_CALENDAR = 20
31
+
32
+ # All object types are used.
33
+ NONE = 0
34
+
35
+ # AssociationLogicalName object type is used with meters that utilize
36
+ # Logical Name associations within a COSEM.
37
+ ASSOCIATION_LOGICAL_NAME = 15
38
+
39
+ # AssociationShortName object type is used with meters that utilize Short
40
+ # Name associations within a COSEM.
41
+ ASSOCIATION_SHORT_NAME = 12
42
+
43
+ # To determine auto answering settings = for data transfer between device
44
+ # and modem = s to answer incoming calls, use AutoAnswer object.
45
+ AUTO_ANSWER = 28
46
+
47
+ # To determine auto connecting settings = for data transfer from the meter
48
+ # to defined destinations, use AutoConnect = previously known as AutoDial
49
+ # object.
50
+ AUTO_CONNECT = 29
51
+
52
+ # An object of type Clock is used to handle the information of a date =
53
+ # day, month and year and/or a time = hundredths of a second, seconds,
54
+ # minutes and hours.
55
+ CLOCK = 8
56
+
57
+ # An object of type Data typically stores manufacturer specific information
58
+ # of the meter, for example configuration data and logical name.
59
+ DATA = 1
60
+
61
+ # An object of type DemandRegister stores a value, information of the item,
62
+ # which the value belongs to, the status of the item, and the time of the
63
+ # value. DemandRegister object type enables both current, and last
64
+ # average,
65
+ # it supports both block, and sliding demand calculation, and it also
66
+ # provides resetting the value average, and periodic averages.
67
+ DEMAND_REGISTER = 5
68
+
69
+ # MAC address of the physical device. The name and the use of this
70
+ # interface class has been changed from Ethernet setup to MAC address setup
71
+ # to allow a more general use.
72
+ MAC_ADDRESS_SETUP = 43
73
+
74
+
75
+ # ExtendedRegister stores a value, and understands the type of the value.
76
+ # Refer to an object of this type by its logical name, using the OBIS
77
+ # identification code.
78
+ EXTENDED_REGISTER = 4
79
+
80
+ # To determine the GPRS settings, use GprsSetup object.
81
+ GPRS_SETUP = 45
82
+
83
+ # To determine the HDLC = High-level Data Link Control settings, use the
84
+ # IecHdlcSetup object.
85
+ IEC_HDLC_SETUP = 23
86
+
87
+ # To determine the Local Port settings, use the IecLocalPortSetup object.
88
+ IEC_LOCAL_PORT_SETUP = 19
89
+
90
+ # To determine the Twisted Pair settings, use the IecTwistedPairSetup
91
+ # object.
92
+ IEC_TWISTED_PAIR_SETUP = 24
93
+
94
+ # To determine the IP 4 settings, use the Ip4Setup object.
95
+ IP4_SETUP = 42
96
+
97
+ GSM_DIAGNOSTIC = 47
98
+
99
+ # To determine the IP 6 settings, use the Ip6Setup object.
100
+ IP6_SETUP = 48
101
+
102
+ # To determine the M-BUS settings, use the MbusSetup object.
103
+ MBUS_SLAVE_PORT_SETUP = 25
104
+
105
+ # To determine modem settings, use ModemConfiguration object.
106
+ MODEM_CONFIGURATION = 27
107
+
108
+ # To determine PPP = Point-to-Point Protocol settings, use the PppSetup
109
+ # object.
110
+ PPP_SETUP = 44
111
+
112
+ # ProfileGeneric determines a general way of gathering values from a
113
+ # profile. The data is retrieved either by a period of time, or by an
114
+ # occuring event. When gathering values from a profile, you need to
115
+ # understand the concept of the profile buffer, in which the profile data
116
+ # is stored. The buffer may be sorted by a register, or by a clock, within
117
+ # the profile, or the data can be just piled in it, in order: last in,
118
+ # first out. You can retrieve a part of the buffer, within a certain range
119
+ # of values, or by a range of entry numbers. You can also determine
120
+ # objects, whose values are to be retained. To determine, what to
121
+ # retrieve,
122
+ # and what to retain, you need to assign the objects to the profile. You
123
+ # can use static assignments, as all entries in a buffer are alike = same
124
+ # size, same structure. <p /> <b>Note: </b>When you modify any assignment,
125
+ # the buffer of the corresponding profile is cleared, and all other
126
+ # profiles, using the modified one, will be cleared too. This is to make
127
+ # sure that their entries stay alike by size and structure.
128
+ PROFILE_GENERIC = 7
129
+
130
+ # Register stores a value, and understands the type of the value. Refer to
131
+ # an object of this type by its logical name, using the OBIS identification
132
+ # code.
133
+ REGISTER = 3
134
+
135
+ # When handling tariffication structures, you can use RegisterActivation to
136
+ # determine, what objects to enable, when activating a certain activation
137
+ # mask. The objects, assigned to the register, but not determined in the
138
+ # mask, are disabled. <p /> <b>Note: </b>If an object is not assigned to
139
+ # any register, it is, by default, enabled.
140
+ REGISTER_ACTIVATION = 6
141
+
142
+ # RegisterMonitor allows you to determine scripts to execute, when a
143
+ # register value crosses a specified threshold. To use RegisterMonitor,
144
+ # also ScriptTable needs to be instantiated in the same logical device.
145
+ REGISTER_MONITOR = 21
146
+
147
+ # Instances of the Disconnect control IC manage an internal or external
148
+ # disconnect unit of the meter.
149
+ DISCONNECT_CONTROL = 70
150
+
151
+ LIMITER = 71
152
+
153
+ MBUS_CLIENT = 72
154
+
155
+ PUSH_SETUP = 40
156
+
157
+ COMPACT_DATA = 62
158
+
159
+ PARAMETER_MONITOR = 65
160
+ WIRELESS_MODE_Q_CHANNEL = 73
161
+ MBUS_MASTER_PORT_SETUP = 74
162
+
163
+ #
164
+ # Addresses that are provided by the base node during the opening of the
165
+ # convergence layer.
166
+ #
167
+ LLC_SSCS_SETUP = 80
168
+
169
+ #
170
+ # Counters related to the physical layers exchanges.
171
+ #
172
+ PRIME_NB_OFDM_PLC_PHYSICAL_LAYER_COUNTERS = 81
173
+
174
+ #
175
+ # A necessary parameters to set up and manage the PRIME NB OFDM PLC MAC
176
+ # layer.
177
+ #
178
+ PRIME_NB_OFDM_PLC_MAC_SETUP = 82
179
+
180
+ #
181
+ # Functional behaviour of MAC.
182
+ #
183
+ PRIME_NB_OFDM_PLC_MAC_FUNCTIONAL_PARAMETERS = 83
184
+
185
+ #
186
+ # Statistical information on the operation of the MAC layer for management
187
+ # purposes.
188
+ #
189
+ PRIME_NB_OFDM_PLC_MAC_COUNTERS = 84
190
+
191
+ #
192
+ # Parameters related to the management of the devices connected to the
193
+ # network.
194
+ #
195
+ PRIME_NB_OFDM_PLC_MAC_NETWORK_ADMINISTRATION_DATA = 85
196
+
197
+ #
198
+ # Identification information related to administration and maintenance of
199
+ # PRIME NB OFDM PLC devices.
200
+ #
201
+ PRIME_NB_OFDM_PLC_APPLICATIONS_IDENTIFICATION = 86
202
+
203
+ # RegisterTable stores identical attributes of objects, in a selected
204
+ # collection of objects. All the objects in the collection need to be of
205
+ # the same type. Also, the value in value groups A to D and F in their
206
+ # logical name = OBIS identification code needs to be identical. <p />
207
+ # Clause 5 determines the possible values in value group E, as a table,
208
+ # where header = the common part, and each cell = a possible E value, of
209
+ # the OBIS code.
210
+ REGISTER_TABLE = 61
211
+
212
+ #
213
+ # Configure a ZigBee PRO device with information necessary to create or
214
+ # join the network.
215
+ ZIG_BEE_SAS_STARTUP = 101
216
+
217
+ #
218
+ # Configure the behavior of a ZigBee PRO device on joining or loss of
219
+ # connection to the network.
220
+ ZIG_BEE_SAS_JOIN = 102
221
+
222
+ #
223
+ # Configure the fragmentation feature of ZigBee PRO transport layer.
224
+ ZIG_BEE_SAS_APS_FRAGMENTATION = 103
225
+ ZIG_BEE_NETWORK_CONTROL = 104
226
+
227
+ DATA_PROTECTION = 30
228
+
229
+ ACCOUNT = 111
230
+
231
+ CREDIT = 112
232
+
233
+ CHARGE = 113
234
+
235
+ TOKEN_GATEWAY = 115
236
+
237
+ # SapAssigment stores information of assignment of the logical devices to
238
+ # their SAP = Service Access Points.
239
+ SAP_ASSIGNMENT = 17
240
+
241
+ # Instances of the Image transfer IC model the mechanism of transferring
242
+ # binary files, called firmware Images to COSEM servers.
243
+ IMAGE_TRANSFER = 18
244
+
245
+ # To handle time and date driven actions, use Schedule, with an object of
246
+ # type SpecialDaysTable.
247
+ SCHEDULE = 10
248
+
249
+ # To trigger a set of actions with an execute method, use object type
250
+ # ScriptTable. Each table entry = script includes a unique identifier, and
251
+ # a set of action specifications, which either execute a method, or modify
252
+ # the object attributes, within the logical device. The script can be
253
+ # triggered by other objects = within the same logical device, or from the
254
+ # outside.
255
+ SCRIPT_TABLE = 9
256
+
257
+ # To determine the SMTP protocol settings, use the SmtpSetup object.
258
+ SMTP_SETUP = 2
259
+
260
+ # With SpecialDaysTable you can determine dates to override a preset
261
+ # behaviour, for specific days = data item day_id. SpecialDaysTable works
262
+ # together with objects of Schedule, or Activity Calendar.
263
+ SPECIAL_DAYS_TABLE = 11
264
+
265
+ # StatusMapping object stores status words with mapping. Each bit in the
266
+ # status word is mapped to position = s in referencing status table.
267
+ STATUS_MAPPING = 63
268
+
269
+ SECURITY_SETUP = 64
270
+
271
+ # To determine Internet TCP/UDP protocol settings, use the TcpUdpSetup
272
+ # object.
273
+ TCP_UDP_SETUP = 41
274
+
275
+ # In an object of type UtilityTables each "Table" = ANSI C12.19:1997 table
276
+ # data is represented as an instance, and identified by its logical name.
277
+ UTILITY_TABLES = 26
278
+
279
+ #
280
+ # S-FSK Phy MAC Setup
281
+ SFSK_PHY_MAC_SETUP = 50
282
+
283
+
284
+ # S-FSK Active initiator.
285
+ SFSK_ACTIVE_INITIATOR = 51
286
+
287
+ # S-FSK MAC synchronization timeouts
288
+ SFSK_MAC_SYNCHRONIZATION_TIMEOUTS = 52
289
+
290
+ # S-FSK MAC Counters.
291
+ SFSK_MAC_COUNTERS = 53
292
+
293
+ # G3-PLC MAC layer counters
294
+ G3_PLC_MAC_LAYER_COUNTERS = 90
295
+
296
+
297
+ # G3-PLC MAC setup.
298
+ G3_PLC_MAC_SETUP = 91
299
+
300
+ # G3-PLC 6LoWPAN.
301
+ G3_PLC6_LO_WPAN = 92
302
+
303
+ #
304
+ # Tariff Plan =Piano Tariffario) is used in Italian standard UNI/TS
305
+ # 11291-11.
306
+ TARIFF_PLAN = 8192
@@ -1,7 +1,7 @@
1
- from enum import IntEnum
2
-
3
-
4
- class Priority(IntEnum):
5
- """Used priority."""
6
- NORMAL = 0
7
- HIGH = 1
1
+ from enum import IntEnum
2
+
3
+
4
+ class Priority(IntEnum):
5
+ """Used priority."""
6
+ NORMAL = 0
7
+ HIGH = 1
@@ -1,9 +1,9 @@
1
- from enum import IntFlag
2
-
3
-
4
- class RequestTypes(IntFlag):
5
- """ RequestTypes enumerates the replies of the server to a client's request, indicating the request type."""
6
- NONE = 0
7
- DATABLOCK = 1
8
- FRAME = 2
9
- GBT = 4
1
+ from enum import IntFlag
2
+
3
+
4
+ class RequestTypes(IntFlag):
5
+ """ RequestTypes enumerates the replies of the server to a client's request, indicating the request type."""
6
+ NONE = 0
7
+ DATABLOCK = 1
8
+ FRAME = 2
9
+ GBT = 4