digi.xbee.packets.cellular module

digi.xbee.packets.cellular.PATTERN_PHONE_NUMBER = '^\\+?\\d+$'

Pattern used to validate the phone number parameter of SMS packets.

class digi.xbee.packets.cellular.RXSMSPacket(phone_number, data)[source]

Bases: digi.xbee.packets.base.XBeeAPIPacket

This class represents an RX (Receive) SMS packet. Packet is built using the parameters of the constructor or providing a valid byte array.

Class constructor. Instantiates a new RXSMSPacket object withe the provided parameters.

Parameters
  • phone_number (String) – phone number of the device that sent the SMS.

  • data (String) – packet data (text of the SMS).

Raises
  • ValueError – if length of phone_number is greater than 20.

  • ValueError – if phone_number is not a valid phone number.

static create_packet(raw, operating_mode)[source]

Override method.

Returns

RXSMSPacket

Raises
needs_id()[source]

Override method.

get_phone_number_byte_array()[source]

Returns the phone number byte array.

Returns

phone number of the device that sent the SMS.

Return type

Bytearray

property phone_number

String. Phone number that sent the SMS.

property data

String. Data of the SMS.

property frame_id

Returns the frame ID of the packet.

Returns

the frame ID of the packet.

Return type

Integer

get_checksum()

Returns the checksum value of this XBeePacket.

The checksum is the last 8 bits of the sum of the bytes between the length field and the checksum field.

Returns

checksum value of this XBeePacket.

Return type

Integer

See also

get_frame_spec_data()

Override method.

get_frame_type()

Returns the frame type of this packet.

Returns

the frame type of this packet.

Return type

ApiFrameType

See also

get_frame_type_value()

Returns the frame type integer value of this packet.

Returns

the frame type integer value of this packet.

Return type

Integer

See also

is_broadcast()

Returns whether this packet is broadcast or not.

Returns

True if this packet is broadcast, False otherwise.

Return type

Boolean

output(escaped=False)

Returns the raw bytearray of this XBeePacket, ready to be send by the serial port.

Parameters

escaped (Boolean) – indicates if the raw bytearray will be escaped or not.

Returns

raw bytearray of the XBeePacket.

Return type

Bytearray

to_dict()

Returns a dictionary with all information of the XBeePacket fields.

Returns

dictionary with all information of the XBeePacket fields.

Return type

Dictionary

static unescape_data(data)

Un-escapes the provided bytearray data.

Parameters

data (Bytearray) – the bytearray to unescape.

Returns

data unescaped.

Return type

Bytearray

class digi.xbee.packets.cellular.TXSMSPacket(frame_id, phone_number, data)[source]

Bases: digi.xbee.packets.base.XBeeAPIPacket

This class represents a TX (Transmit) SMS packet. Packet is built using the parameters of the constructor or providing a valid byte array.

Class constructor. Instantiates a new TXSMSPacket object with the provided parameters.

Parameters
  • frame_id (Integer) – the frame ID. Must be between 0 and 255.

  • phone_number (String) – the phone number.

  • data (String) – this packet’s data.

Raises
  • ValueError – if frame_id is not between 0 and 255.

  • ValueError – if length of phone_number is greater than 20.

  • ValueError – if phone_number is not a valid phone number.

See also

static create_packet(raw, operating_mode)[source]

Override method.

Returns

TXSMSPacket

Raises
needs_id()[source]

Override method.

get_phone_number_byte_array()[source]

Returns the phone number byte array.

Returns

phone number of the device that sent the SMS.

Return type

Bytearray

property frame_id

Returns the frame ID of the packet.

Returns

the frame ID of the packet.

Return type

Integer

get_checksum()

Returns the checksum value of this XBeePacket.

The checksum is the last 8 bits of the sum of the bytes between the length field and the checksum field.

Returns

checksum value of this XBeePacket.

Return type

Integer

See also

get_frame_spec_data()

Override method.

get_frame_type()

Returns the frame type of this packet.

Returns

the frame type of this packet.

Return type

ApiFrameType

See also

get_frame_type_value()

Returns the frame type integer value of this packet.

Returns

the frame type integer value of this packet.

Return type

Integer

See also

is_broadcast()

Returns whether this packet is broadcast or not.

Returns

True if this packet is broadcast, False otherwise.

Return type

Boolean

output(escaped=False)

Returns the raw bytearray of this XBeePacket, ready to be send by the serial port.

Parameters

escaped (Boolean) – indicates if the raw bytearray will be escaped or not.

Returns

raw bytearray of the XBeePacket.

Return type

Bytearray

to_dict()

Returns a dictionary with all information of the XBeePacket fields.

Returns

dictionary with all information of the XBeePacket fields.

Return type

Dictionary

static unescape_data(data)

Un-escapes the provided bytearray data.

Parameters

data (Bytearray) – the bytearray to unescape.

Returns

data unescaped.

Return type

Bytearray

property phone_number

String. Phone number that sent the SMS.

property data

String. Data of the SMS.