Ejemplo n.º 1
0
    def process_data(self, data):
        bs = BinaryStream(data)

        msgtype = bs.read_byte()

        if msgtype == MESSAGE:
            print "MESSAGE"
            msg = bs.read_string()
            self.broadcast(self.get_datas_message(msg))

        elif msgtype == PLAYPAUSE:
            print "PLAYPAUSE"
            self.broadcast(self.get_datas_playpause(), self)

        elif msgtype == MOVIE_TIME:
            print "MOVIE_TIME"
            t = bs.read_int32()

            # broadcast
            for client in self.clients:
                if client is self: continue
                new_t = self.ping / 2 + client.ping / 2 + t
                print "new_t", new_t
                client.sendLine(self.get_datas_slider_update(new_t))

        elif msgtype == PING:
            self.pings.append(time.time() - self.ping_check_time)
            if len(self.pings) > 50:
                del self.pings[0]
Ejemplo n.º 2
0
 def getStreamFromBytes(self, name, bytes):
     if name == "\x05SummaryInformation":
         return SummaryInformationStream(bytes, self.params, doc=self)
     elif name == "\x05DocumentSummaryInformation":
         return DocumentSummaryInformationStream(bytes, self.params, doc=self)
     else:
         return BinaryStream(bytes, self.params, name, doc=self)
Ejemplo n.º 3
0
    def process_data(self, data, client=None):
        bs = BinaryStream(data)

        msgtype = bs.read_byte()

        if msgtype == MESSAGE:
            msg = bs.read_string()
            self.player.update_chat(msg)

        elif msgtype == PLAYPAUSE:
            self.player.play_pause()

        elif msgtype == MOVIE_TIME:
            t = bs.read_int32()
            print "movietime", t
            self.player.change_pos_from_net(t)  # t already smoothed

        elif msgtype == PING:
            self.sendLine(self.get_datas_ping())
Ejemplo n.º 4
0
 def getStreamFromBytes(self, name, bytes):
     if name == "WordDocument":
         return WordDocumentStream(bytes, self.params, doc=self)
     elif name in ("0Table", "1Table"):
         return TableStream(bytes, self.params, name, doc=self)
     elif name == "\x05SummaryInformation":
         return SummaryInformationStream(bytes, self.params, doc=self)
     elif name == "\x05DocumentSummaryInformation":
         return DocumentSummaryInformationStream(bytes,
                                                 self.params,
                                                 doc=self)
     else:
         return BinaryStream(bytes, self.params, name, doc=self)
Ejemplo n.º 5
0
 def setUp(self):
     self.object = BinaryStream(BytesIO())
Ejemplo n.º 6
0
 def __init__(self, parent):
     BinaryStream.__init__(self, parent.bytes)
     self.parent = parent
     self.pos = parent.pos
Ejemplo n.º 7
0
 def __init__(self, parent, PropertyIds):
     BinaryStream.__init__(self, parent.bytes)
     self.parent = parent
     self.propertyIds = PropertyIds
Ejemplo n.º 8
0
 def __init__(self, bytes, params, doc):
     BinaryStream.__init__(self,
                           bytes,
                           params,
                           "\x05SummaryInformation",
                           doc=doc)
Ejemplo n.º 9
0
 def __init__(self, parent, name):
     BinaryStream.__init__(self, parent.bytes)
     self.pos = parent.pos
     self.parent = parent
     self.name = name
Ejemplo n.º 10
0
 def __init__(self, parent, index):
     BinaryStream.__init__(self, parent.bytes)
     self.parent = parent
     self.index = index
     self.pos = parent.posOrig + parent.idsAndOffsets[index].Offset
Ejemplo n.º 11
0
 def __init__(self, parent, index):
     BinaryStream.__init__(self, parent.bytes)
     self.parent = parent
     self.pos = parent.pos
     self.index = index
Ejemplo n.º 12
0
 def __init__(self, parent, offset, userDefined=False):
     BinaryStream.__init__(self, parent.bytes)
     self.parent = parent
     self.pos = offset
     self.userDefined = userDefined
Ejemplo n.º 13
0
 def __init__(self, bytes):
     BinaryStream.__init__(self, bytes)
Ejemplo n.º 14
0
 def __init__(self, bytes, params, doc):
     BinaryStream.__init__(self, bytes, params, "WordDocument", doc=doc)
Ejemplo n.º 15
0
 def __init__(self, bytes, params, name, doc):
     BinaryStream.__init__(self, bytes, params, name, doc=doc)
Ejemplo n.º 16
0
 def __init__(self, parent, name, codepage):
     BinaryStream.__init__(self, parent.bytes)
     self.pos = parent.pos
     self.parent = parent
     self.name = name
     self.codepage = codepage