Module ddCommunication.protocols.LCPWirelessProtocol.DDCPTelegram

Expand source code
from .HelperMethods import calculate_crc


class DDCPTelegram:

    def __init__(self, requestID, telegram):
        self.RequestID = requestID
        self.Telegram = telegram

    def __CalcCRC(self, data):
        return calculate_crc(data, len(data))

    def GetBytes(self):
        requestID = self.RequestID.to_bytes(1, byteorder="little")
        b = self.Telegram.GetMessageType().to_bytes(1, byteorder="little")
        b += self.Telegram.GetTypeHeader().to_bytes(1, byteorder="little")
        telBytes = self.Telegram.GetBytes()
        crc = self.__CalcCRC(telBytes)
        b += telBytes
        b += crc
        requestID += (3 + len(b)).to_bytes(2, byteorder="little")
        requestID += b

        return requestID

    @staticmethod
    def FromBytes(parameter_list):
        pass

Classes

class DDCPTelegram (requestID, telegram)
Expand source code
class DDCPTelegram:

    def __init__(self, requestID, telegram):
        self.RequestID = requestID
        self.Telegram = telegram

    def __CalcCRC(self, data):
        return calculate_crc(data, len(data))

    def GetBytes(self):
        requestID = self.RequestID.to_bytes(1, byteorder="little")
        b = self.Telegram.GetMessageType().to_bytes(1, byteorder="little")
        b += self.Telegram.GetTypeHeader().to_bytes(1, byteorder="little")
        telBytes = self.Telegram.GetBytes()
        crc = self.__CalcCRC(telBytes)
        b += telBytes
        b += crc
        requestID += (3 + len(b)).to_bytes(2, byteorder="little")
        requestID += b

        return requestID

    @staticmethod
    def FromBytes(parameter_list):
        pass

Static methods

def FromBytes(parameter_list)
Expand source code
@staticmethod
def FromBytes(parameter_list):
    pass

Methods

def GetBytes(self)
Expand source code
def GetBytes(self):
    requestID = self.RequestID.to_bytes(1, byteorder="little")
    b = self.Telegram.GetMessageType().to_bytes(1, byteorder="little")
    b += self.Telegram.GetTypeHeader().to_bytes(1, byteorder="little")
    telBytes = self.Telegram.GetBytes()
    crc = self.__CalcCRC(telBytes)
    b += telBytes
    b += crc
    requestID += (3 + len(b)).to_bytes(2, byteorder="little")
    requestID += b

    return requestID