def main(): s = socket() s.connect(('192.168.1.97', 9761)) output = Container( source=64, dest=1, sequence=33, command=0x10, payload_10 = None) while True: print "-"*60 print fecha() print "-"*60 paquete = MaraFrame.build(output) #print paquete, type(paquete) s.send(str(paquete)) data = s.recv(1024) try: data = MaraFrame.parse(data) except FieldError as e: print "Error al decodificar la trama", e continue MaraFrame.pretty_print(data, show_header=False, show_bcc=False) sleep(.8) output.sequence += 1 if output.sequence > MAX_SEQ: output.sequence = MIN_SEQ
def buildFrame10(cls, dis=[], ais=[], svs=[], events=[], through_construct=True): data = copy(cls.BASE_CONTAINER) data.payload_10.dis = dis data.payload_10.candis = len(dis) * 2 + 1 data.payload_10.ais = ais data.payload_10.canais = len(ais) * 2 + 1 data.payload_10.event = events data.payload_10.canevs = (len(events) * 10) + 1 data.payload_10.varsys = svs data.payload_10.canvarsys = len(svs) * 2 + 1 if through_construct: build = MaraFrame.build(data) data = MaraFrame.parse(build) return data