summaryrefslogtreecommitdiff
path: root/slixmpp/plugins/xep_0323/stanza/sensordata.py
diff options
context:
space:
mode:
Diffstat (limited to 'slixmpp/plugins/xep_0323/stanza/sensordata.py')
-rw-r--r--slixmpp/plugins/xep_0323/stanza/sensordata.py72
1 files changed, 38 insertions, 34 deletions
diff --git a/slixmpp/plugins/xep_0323/stanza/sensordata.py b/slixmpp/plugins/xep_0323/stanza/sensordata.py
index aa223a62..c0906cac 100644
--- a/slixmpp/plugins/xep_0323/stanza/sensordata.py
+++ b/slixmpp/plugins/xep_0323/stanza/sensordata.py
@@ -10,36 +10,40 @@
from slixmpp import Iq, Message
from slixmpp.xmlstream import register_stanza_plugin, ElementBase, ET, JID
-from re import match
+import re
class Sensordata(ElementBase):
""" Placeholder for the namespace, not used as a stanza """
namespace = 'urn:xmpp:iot:sensordata'
name = 'sensordata'
plugin_attrib = name
- interfaces = set(tuple())
+ interfaces = set()
class FieldTypes():
"""
All field types are optional booleans that default to False
"""
- field_types = set([ 'momentary','peak','status','computed','identity','historicalSecond','historicalMinute','historicalHour', \
- 'historicalDay','historicalWeek','historicalMonth','historicalQuarter','historicalYear','historicalOther'])
+ field_types = {'momentary', 'peak', 'status', 'computed', 'identity',
+ 'historicalSecond', 'historicalMinute', 'historicalHour',
+ 'historicalDay', 'historicalWeek', 'historicalMonth',
+ 'historicalQuarter', 'historicalYear', 'historicalOther'}
class FieldStatus():
"""
All field statuses are optional booleans that default to False
"""
- field_status = set([ 'missing','automaticEstimate','manualEstimate','manualReadout','automaticReadout','timeOffset','warning','error', \
- 'signed','invoiced','endOfSeries','powerFailure','invoiceConfirmed'])
+ field_status = {'missing', 'automaticEstimate', 'manualEstimate',
+ 'manualReadout', 'automaticReadout', 'timeOffset',
+ 'warning', 'error', 'signed', 'invoiced', 'endOfSeries',
+ 'powerFailure', 'invoiceConfirmed'}
class Request(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'req'
plugin_attrib = name
- interfaces = set(['seqnr','nodes','fields','serviceToken','deviceToken','userToken','from','to','when','historical','all'])
+ interfaces = {'seqnr','nodes','fields','serviceToken','deviceToken','userToken','from','to','when','historical','all'}
interfaces.update(FieldTypes.field_types)
- _flags = set(['serviceToken','deviceToken','userToken','from','to','when','historical','all'])
+ _flags = {'serviceToken','deviceToken','userToken','from','to','when','historical','all'}
_flags.update(FieldTypes.field_types)
def __init__(self, xml=None, parent=None):
@@ -59,8 +63,8 @@ class Request(ElementBase):
xml -- Use an existing XML object for the stanza's values.
"""
ElementBase.setup(self, xml)
- self._nodes = set([node['nodeId'] for node in self['nodes']])
- self._fields = set([field['name'] for field in self['fields']])
+ self._nodes = {node['nodeId'] for node in self['nodes']}
+ self._fields = {field['name'] for field in self['fields']}
def _get_flags(self):
"""
@@ -225,39 +229,39 @@ class RequestNode(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'node'
plugin_attrib = name
- interfaces = set(['nodeId','sourceId','cacheType'])
+ interfaces = {'nodeId','sourceId','cacheType'}
class RequestField(ElementBase):
""" Field element in a request """
namespace = 'urn:xmpp:iot:sensordata'
name = 'field'
plugin_attrib = name
- interfaces = set(['name'])
+ interfaces = {'name'}
class Accepted(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'accepted'
plugin_attrib = name
- interfaces = set(['seqnr','queued'])
+ interfaces = {'seqnr','queued'}
class Started(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'started'
plugin_attrib = name
- interfaces = set(['seqnr'])
+ interfaces = {'seqnr'}
class Failure(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'failure'
plugin_attrib = name
- interfaces = set(['seqnr','done'])
+ interfaces = {'seqnr','done'}
class Error(ElementBase):
""" Error element in a request failure """
namespace = 'urn:xmpp:iot:sensordata'
name = 'error'
plugin_attrib = name
- interfaces = set(['nodeId','timestamp','sourceId','cacheType','text'])
+ interfaces = {'nodeId','timestamp','sourceId','cacheType','text'}
def get_text(self):
"""Return then contents inside the XML tag."""
@@ -281,15 +285,15 @@ class Rejected(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'rejected'
plugin_attrib = name
- interfaces = set(['seqnr','error'])
- sub_interfaces = set(['error'])
+ interfaces = {'seqnr','error'}
+ sub_interfaces = {'error'}
class Fields(ElementBase):
""" Fields element, top level in a response message with data """
namespace = 'urn:xmpp:iot:sensordata'
name = 'fields'
plugin_attrib = name
- interfaces = set(['seqnr','done','nodes'])
+ interfaces = {'seqnr','done','nodes'}
def __init__(self, xml=None, parent=None):
ElementBase.__init__(self, xml, parent)
@@ -307,7 +311,7 @@ class Fields(ElementBase):
xml -- Use an existing XML object for the stanza's values.
"""
ElementBase.setup(self, xml)
- self._nodes = set([node['nodeId'] for node in self['nodes']])
+ self._nodes = {node['nodeId'] for node in self['nodes']}
def add_node(self, nodeId, sourceId=None, cacheType=None, substanzas=None):
@@ -389,7 +393,7 @@ class FieldsNode(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'node'
plugin_attrib = name
- interfaces = set(['nodeId','sourceId','cacheType','timestamps'])
+ interfaces = {'nodeId','sourceId','cacheType','timestamps'}
def __init__(self, xml=None, parent=None):
ElementBase.__init__(self, xml, parent)
@@ -407,7 +411,7 @@ class FieldsNode(ElementBase):
xml -- Use an existing XML object for the stanza's values.
"""
ElementBase.setup(self, xml)
- self._timestamps = set([ts['value'] for ts in self['timestamps']])
+ self._timestamps = {ts['value'] for ts in self['timestamps']}
def add_timestamp(self, timestamp, substanzas=None):
"""
@@ -498,7 +502,7 @@ class Field(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'field'
plugin_attrib = name
- interfaces = set(['name','module','stringIds'])
+ interfaces = {'name','module','stringIds'}
interfaces.update(FieldTypes.field_types)
interfaces.update(FieldStatus.field_status)
@@ -554,7 +558,7 @@ class Timestamp(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'timestamp'
plugin_attrib = name
- interfaces = set(['value','datas'])
+ interfaces = {'value','datas'}
def __init__(self, xml=None, parent=None):
ElementBase.__init__(self, xml, parent)
@@ -572,7 +576,7 @@ class Timestamp(ElementBase):
xml -- Use an existing XML object for the stanza's values.
"""
ElementBase.setup(self, xml)
- self._datas = set([data['name'] for data in self['datas']])
+ self._datas = {data['name'] for data in self['datas']}
def add_data(self, typename, name, value, module=None, stringIds=None, unit=None, dataType=None, flags=None):
"""
@@ -668,7 +672,7 @@ class DataNumeric(Field):
namespace = 'urn:xmpp:iot:sensordata'
name = 'numeric'
plugin_attrib = name
- interfaces = set(['value', 'unit'])
+ interfaces = {'value', 'unit'}
interfaces.update(Field.interfaces)
def _get_typename(self):
@@ -681,7 +685,7 @@ class DataString(Field):
namespace = 'urn:xmpp:iot:sensordata'
name = 'string'
plugin_attrib = name
- interfaces = set(['value'])
+ interfaces = {'value'}
interfaces.update(Field.interfaces)
def _get_typename(self):
@@ -695,7 +699,7 @@ class DataBoolean(Field):
namespace = 'urn:xmpp:iot:sensordata'
name = 'boolean'
plugin_attrib = name
- interfaces = set(['value'])
+ interfaces = {'value'}
interfaces.update(Field.interfaces)
def _get_typename(self):
@@ -709,7 +713,7 @@ class DataDateTime(Field):
namespace = 'urn:xmpp:iot:sensordata'
name = 'dateTime'
plugin_attrib = name
- interfaces = set(['value'])
+ interfaces = {'value'}
interfaces.update(Field.interfaces)
def _get_typename(self):
@@ -723,7 +727,7 @@ class DataTimeSpan(Field):
namespace = 'urn:xmpp:iot:sensordata'
name = 'timeSpan'
plugin_attrib = name
- interfaces = set(['value'])
+ interfaces = {'value'}
interfaces.update(Field.interfaces)
def _get_typename(self):
@@ -737,7 +741,7 @@ class DataEnum(Field):
namespace = 'urn:xmpp:iot:sensordata'
name = 'enum'
plugin_attrib = name
- interfaces = set(['value', 'dataType'])
+ interfaces = {'value', 'dataType'}
interfaces.update(Field.interfaces)
def _get_typename(self):
@@ -748,21 +752,21 @@ class Done(ElementBase):
namespace = 'urn:xmpp:iot:sensordata'
name = 'done'
plugin_attrib = name
- interfaces = set(['seqnr'])
+ interfaces = {'seqnr'}
class Cancel(ElementBase):
""" Cancel element used to signal that a request shall be cancelled """
namespace = 'urn:xmpp:iot:sensordata'
name = 'cancel'
plugin_attrib = name
- interfaces = set(['seqnr'])
+ interfaces = {'seqnr'}
class Cancelled(ElementBase):
""" Cancelled element used to signal that cancellation is confirmed """
namespace = 'urn:xmpp:iot:sensordata'
name = 'cancelled'
plugin_attrib = name
- interfaces = set(['seqnr'])
+ interfaces = {'seqnr'}
register_stanza_plugin(Iq, Request)