コード例 #1
0
ファイル: pointinfotest.py プロジェクト: dsikar/bash-scripts
    def createPointInformationPacket(self):
        """function to build a point information request packet using speak 6 header"""

        header = LocalHeader(packetID.spkd_ID_POINT_INFO_REQUEST)
        header.setParameter("destinationTask", 0x04)
        header.setParameter("sourceChannelAddress", 0xFD)
        #values sent by consys for header replicated here
        header.setParameter("sourceTask", 0x92)

        header.IgnoreReserved(True)

        content = PointInformationContent()
        packet = Packet(header, content)
        frame = Frame(packet, FLG)

        transfer = SerialDataTransfer("COM20")
        reader = DataReader(transfer)
        reader.Start()
        #executes read thread to process incoming response after sent request
        transfer.Write(frame.getByteArray())

        print(frame.getByteArray())
        print("Point Information Reply\n")

        read(reader, transfer)
コード例 #2
0
    def sendNextPointInformationPacket(self, clientID):
        global FLG
        header = LocalHeader(packetID.spkd_ID_POINT_CLNT_ACKNOWLEDGE)
        header.setParameter("destinationTask", 0x04)
        header.setParameter("sourceChannelAddress", 0xFD)
        header.setParameter("sourceTask", 0x12)

        FLG = FLG + 1
        content = NextPointInformationContent()
        content.setParameter("clientID", clientID)
        packet = Packet(header, content)
        frame = Frame(packet, FLG)

        header.IgnoreReserved(True)

        transfer.Write(frame.getByteArray())

        print(frame.getByteArray())
        print("Next Point Information Reply\n")
コード例 #3
0
    def createPointInformationPacket(self):
        """function to build a point information request packet using speak 6 header"""

        header = LocalHeader(packetID.spkd_ID_POINT_INFO_REQUEST)
        header.setParameter("destinationTask", 0x04)
        header.setParameter("sourceChannelAddress", 0xFD)
        #values sent by consys for header replicated here
        header.setParameter("sourceTask", 0x92)

        content = PointInformationContent()
        content.setParameter("searchType", 0x0A)
        packet = Packet(header, content)
        frame = Frame(packet, FLG)

        header.IgnoreReserved(True)

        transfer.Write(frame.getByteArray())

        print(frame.getByteArray())
        print("Point Information Reply Packet")
コード例 #4
0
 def format(self, bytes):
     header = None
     if (len(bytes) == 10):
         header = LocalHeader(bytes[8])
         header.setParameter("signature", bytes[0])
         header.setParameter("networkNode", bytes[1])
         header.setParameter("channel", bytes[2])
         header.setParameter("destinationChannelAddress", bytes[3])
         header.setParameter("destinationTask", bytes[4])
         header.setParameter("sourceChannelAddress", bytes[5])
         header.setParameter("sourceTask", bytes[6])
         header.setParameter("marker", bytes[7])
         header.setParameter("reserved", bytes[9])
     else:
         raise ValueError(
             "@LocalHeaderFormatter: the bytes length is unvalid")
     return header
コード例 #5
0
ファイル: module1.py プロジェクト: dsikar/bash-scripts
from content import Content;
from header import LocalHeader, LocalHeader5;
from packetids import spkd_ID_POINT_INFO_REQUEST;
from packet import Packet;
import devicetype as devices;
from frame import Frame;   
from serialdatatransfer import SerialDataTransfer;
from readers import DataReader, BadPacketReadError;
from byte import Byte;
from points import *;

if(__name__ == '__main__'):
    header   = LocalHeader(spkd_ID_POINT_INFO_REQUEST);
    header.setParameter("destinationTask", 0x04);
    header.setParameter("sourceChannelAddress", 0xfd);
    header.setParameter("sourceTask",0x92);
    content  =  PointInformationContent();
    content.setParameter('PanelNumber', 0x0c);
    content.setParameter('Channel', 0xff);
    content.setParameter('LoopNumber', 0x00);
    content.setParameter('PointCategory', 0xff);
    content.setParameter('PointNumber', 0xfd);
    content.setParameter('LogicalPointNumber', 0xfe);
    content.setParameter('LogicalPointZone', 0x00);
    content.setParameter('DeviceCategory', 0x00);
    content.setParameter('Group', 0x01);
    content.setParameter('LogicalPointZone', 0x00);
    content.setParameter('LogicalPointZone', 0x00);
    content.setParameter('LogicalPointZone', 0x00);
    packet   =  Packet(header, content);
    frame    =  Frame(packet , 0x0d);
コード例 #6
0
    def __del__(self):
        self.close()
        del self.__threadDeamon
        del self.__waitEvent
        self.__threadDeamon = None
        self.__waitEvent = None

    def onSendPacket(self, event):
        self.__sendPacket(event.playload)
        print("Packet {0} has be sent , size = {1}".format(
            event.playload.header.getParameter("packetID"),
            event.playload.size))


#Test packet protocol sending.
if (__name__ == "__main__"):
    protocol = Protocol(SerialDataTransfer("COM1"))
    protocol.start()

    for i in range(0, 5):
        protocol.publish(PyEvent("initial.event", {"name": "Obaro"}))
        #Sending packet  using the protocol.
        header = LocalHeader(ids.spkd_ID_RESTART_REQUEST)
        reset = RestartContent()
        packet = Packet(header, reset)
        protocol.publish(PyEvent(MX_SENDING__PACKET_EVENT, packet))

    protocol.setTransport(None)

    protocol.close()
コード例 #7
0
                    #create a valid frame object if possible other throw an exception.
                    try:
                        if (len(bytes) > 1):
                            formatter = LocalFrameFormatter()
                            frame = formatter.format(bytes)
                    except Exception as frameError:
                        raise BadPacketReadError(frameError.message, bytes,
                                                 INVALID_FRAME_ERROR)

            except Exception as err:
                print err
            return frame


"""
When the Panel is restart , a default packet is send via the consys port.
with packet ID  = 78
   # 01 00 12 00 00 00 00 00 00 00  00 00 182 00 01
"""
if (__name__ == '__main__'):
    restart = Packet(LocalHeader(ids.spkd_ID_RESTART_REQUEST),
                     RestartContent())
    frameObject = Frame(restart, 0)
    reader = PTPFrameReader("COM8")
    reader.Start()
    while (reader != None):
        frame = reader.Next()
        if (frame != None):
            event = Event(01, frame)
            reader.publish(event)