Source code for platypush.message.event.nfc
from platypush.message.event import Event
[docs]
class NFCEvent(Event):
"""
Generic class for NFC events
"""
[docs]
def __init__(self, reader=None, tag_id=None, *args, **kwargs):
super().__init__(reader=reader, tag_id=tag_id, *args, **kwargs)
[docs]
class NFCDeviceConnectedEvent(NFCEvent):
"""
Event triggered when an NFC reader/writer devices is connected
"""
[docs]
def __init__(self, reader=None, *args, **kwargs):
"""
:param reader: Name or address of the reader that fired the event
:type reader: str
"""
super().__init__(reader=reader, *args, **kwargs)
[docs]
class NFCDeviceDisconnectedEvent(NFCEvent):
"""
Event triggered when an NFC reader/writer devices is disconnected
"""
[docs]
def __init__(self, reader=None, *args, **kwargs):
"""
:param reader: Name or address of the reader that fired the event
:type reader: str
"""
super().__init__(reader=reader, *args, **kwargs)
[docs]
class NFCTagDetectedEvent(NFCEvent):
"""
Event triggered when an NFC tag is connected
"""
[docs]
def __init__(self, reader=None, tag_id=None, records=None, *args, **kwargs):
"""
:param reader: Name or address of the reader that fired the event
:type reader: str
:param tag_id: ID of the NFC tag
:type tag_id: str
:param records: Optional, list of records read from the tag. If the tag contains JSON-serializable data then it
will be cast by the backend into the appropriate object
:type records: str, bytes or JSON-serializable object
"""
if not records:
records = []
super().__init__(reader=reader, tag_id=tag_id, records=records, *args, **kwargs)
[docs]
class NFCTagRemovedEvent(NFCEvent):
"""
Event triggered when a NFC card is removed/disconnected
"""
[docs]
def __init__(self, reader=None, tag_id=None, *args, **kwargs):
"""
:param reader: Name or address of the reader that fired the event
:type reader: str
:param tag_id: ID of the NFC tag
:type tag_id: str
"""
super().__init__(reader=reader, tag_id=tag_id, *args, **kwargs)
# vim:sw=4:ts=4:et: