scapy.contrib.eddystone
scapy.contrib.eddystone - Google Eddystone Bluetooth LE proximity beacons.
The Eddystone specification can be found at: https://github.com/google/eddystone/blob/master/protocol-specification.md
These beacons are used as building blocks for other systems:
Google’s Physical Web <https://google.github.io/physical-web/>
Waze Beacons <https://www.waze.com/beacons>
- class scapy.contrib.eddystone.EddystoneURLField(name: str, default: I | None, fmt: str = 'H', remain: int = 0)[source]
Bases:
StrField
- class scapy.contrib.eddystone.Eddystone_EID(_pkt, /, *, tx_power=0, eid=None)[source]
Bases:
PacketAn Eddystone type for transmitting encrypted, ephemeral identifiers.
This implementation does not support decrypting this data.
https://github.com/google/eddystone/tree/master/eddystone-eid
- aliastypes = [<class 'scapy.contrib.eddystone.Eddystone_EID'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.eddystone.Eddystone_Frame(_pkt, /, *, type=None, reserved=0)[source]
Bases:
Packet,LowEnergyBeaconHelperThe base Eddystone frame on which all Eddystone messages are built.
https://github.com/google/eddystone/blob/master/protocol-specification.md
- aliastypes = [<class 'scapy.contrib.eddystone.Eddystone_Frame'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<BitField (Eddystone_Frame).type>, <BitField (Eddystone_Frame).reserved>]
- payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'type': 0}, <class 'scapy.contrib.eddystone.Eddystone_UID'>), ({'type': 1}, <class 'scapy.contrib.eddystone.Eddystone_URL'>), ({'type': 2}, <class 'scapy.contrib.eddystone.Eddystone_TLM'>), ({'type': 3}, <class 'scapy.contrib.eddystone.Eddystone_EID'>)]
- class scapy.contrib.eddystone.Eddystone_TLM(_pkt, /, *, version=None)[source]
Bases:
PacketAn Eddystone type for transmitting beacon telemetry information.
https://github.com/google/eddystone/tree/master/eddystone-tlm
- aliastypes = [<class 'scapy.contrib.eddystone.Eddystone_TLM'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.eddystone.Eddystone_TLM_Encrypted(_pkt, /, *, etlm=None, salt=None, mic=None)[source]
Bases:
PacketA subtype of Eddystone-TLM for transmitting telemetry in encrypted form.
This implementation does not support decrypting this data.
https://github.com/google/eddystone/blob/master/eddystone-tlm/tlm-encrypted.md
- aliastypes = [<class 'scapy.contrib.eddystone.Eddystone_TLM_Encrypted'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.eddystone.Eddystone_TLM_Unencrypted(_pkt, /, *, batt_mv=0, temperature=-32768, adv_cnt=None, sec_cnt=None)[source]
Bases:
PacketA subtype of Eddystone-TLM for transmitting telemetry in unencrypted form.
https://github.com/google/eddystone/blob/master/eddystone-tlm/tlm-plain.md
- aliastypes = [<class 'scapy.contrib.eddystone.Eddystone_TLM_Unencrypted'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.eddystone.Eddystone_UID(_pkt, /, *, tx_power=0, namespace=None, instance=None, reserved=None)[source]
Bases:
PacketAn Eddystone type for transmitting a unique identifier.
https://github.com/google/eddystone/tree/master/eddystone-uid
- aliastypes = [<class 'scapy.contrib.eddystone.Eddystone_UID'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.eddystone.Eddystone_URL(_pkt, /, *, tx_power=0, url_scheme=0, url=None)[source]
Bases:
PacketAn Eddystone type for transmitting a URL (to a web page).
https://github.com/google/eddystone/tree/master/eddystone-url
- aliastypes = [<class 'scapy.contrib.eddystone.Eddystone_URL'>, <class 'scapy.packet.Packet'>]