Example #1
0
    def handleData(self):
        if self._packet_len >= self._expected_len:
            type = Packet()
            buf = ''.join(self._packet)
            while len(buf) >= self._expected_len:
                type.unpack(buf)
                if type.length <= len(buf):

                    if PacketFactory.has_key(type.type):
                        packet = PacketFactory[type.type]()
                        buf = packet.unpack(buf)
                        if self.factory and self.factory.verbose > 4:
                            self.message("%s(%d bytes) => %s" % ( self._prefix, type.length, packet ))
                        if self._poll:
                            self.pushPacket(packet)
                        else:
                            self._handler(packet)
                    else:
                        if self.factory and self.factory.verbose >= 0:                        
                            self.message("%s: unknown message received (id %d, length %d)\n" % ( self._prefix, type.type, type.length ))
                        if self.factory and self.factory.verbose > 4:
                            self.message("known types are %s " % PacketNames)
                        buf = buf[1:]
                    self._expected_len = Packet.format_size
                else:
                    self._expected_len = type.length
            self._packet[:] = [buf]
            self._packet_len = len(buf)
Example #2
0
    def handleData(self):
        if self._packet_len >= self._expected_len:
            type = Packet()
            buf = ''.join(self._packet)
            while len(buf) >= self._expected_len:
                type.unpack(buf)
                if type.length <= len(buf):

                    if type.type in PacketFactory:
                        packet = PacketFactory[type.type]()
                        buf = packet.unpack(buf)
                        self.log.debug("%s(%d bytes) => %s", self._prefix, type.length, packet)
                        if self._poll:
                            self.pushPacket(packet)
                        else:
                            self._handler(packet)
                    else:
                        self.log.warn("%s: unknown message received (id %d, length %d)\n",
                            self._prefix,
                            type.type,
                            type.length
                        )
                        buf = buf[1:]
                    self._expected_len = Packet.format_size
                else:
                    self._expected_len = type.length
            self._packet[:] = [buf]
            self._packet_len = len(buf)
Example #3
0
    def handleData(self):
        if self._packet_len >= self._expected_len:
            type = Packet()
            buf = ''.join(self._packet)
            while len(buf) >= self._expected_len:
                type.unpack(buf)
                if type.length <= len(buf):

                    if PacketFactory.has_key(type.type):
                        packet = PacketFactory[type.type]()
                        buf = packet.unpack(buf)
                        if self.factory and self.factory.verbose > 4:
                            self.message("%s(%d bytes) => %s" %
                                         (self._prefix, type.length, packet))
                        if self._poll:
                            self.pushPacket(packet)
                        else:
                            self._handler(packet)
                    else:
                        if self.factory and self.factory.verbose >= 0:
                            self.message(
                                "%s: unknown message received (id %d, length %d)\n"
                                % (self._prefix, type.type, type.length))
                        if self.factory and self.factory.verbose > 4:
                            self.message("known types are %s " % PacketNames)
                        buf = buf[1:]
                    self._expected_len = Packet.format_size
                else:
                    self._expected_len = type.length
            self._packet[:] = [buf]
            self._packet_len = len(buf)
 def infoInit(self, **kwargs):
     Packet.infoInit(self, **kwargs)
     self.amount = chips2amount(self.chips)
         best hand is the hand that win the most money
       
serial: integer uniquely identifying a player.
game_id: integer uniquely identifying a game.
"""

    info = PacketPokerCards.info + (
        ("side", "", 's'),
        ("hand", "", 's'),
        ("bestcards", [], 'Bl'),
        ("board", [], 'Bl'),
        ("besthand", 0, 'B'),
    )


Packet.infoDeclare(globals(), PacketPokerBestCards, PacketPokerCards,
                   'POKER_BEST_CARDS', 170)  # 0xaa # %SEQ%

########################################


class PacketPokerPotChips(Packet):
    """\
Semantics: the "bet" put in the "index" pot of the "game_id" game.

Direction: client <=> client

context: this packet is sent at least each time the pot index is
updated.

bet: list of pairs ( chip_value, chip_count ).
index: integer uniquely identifying a side pot in the range [0,10[
 def infoInit(self, **kwargs):
     Packet.infoInit(self, **kwargs)
     self.amount = chips2amount(self.chips)
hand: readable string of the name best hand
besthand: 0 if it's not the best hand and 1 if it's the best hand
         best hand is the hand that win the most money
       
serial: integer uniquely identifying a player.
game_id: integer uniquely identifying a game.
"""

    info = PacketPokerCards.info + ( ("side", "", 's'),
                                     ("hand", "", 's'),
                                     ("bestcards", [], 'Bl'),
                                     ("board", [], 'Bl'),
                                     ("besthand", 0, 'B'),
                                     )

Packet.infoDeclare(globals(), PacketPokerBestCards, PacketPokerCards, 'POKER_BEST_CARDS', 170) # 0xaa # %SEQ%

########################################

class PacketPokerPotChips(Packet):
    """\
Semantics: the "bet" put in the "index" pot of the "game_id" game.

Direction: client <=> client

context: this packet is sent at least each time the pot index is
updated.

bet: list of pairs ( chip_value, chip_count ).
index: integer uniquely identifying a side pot in the range [0,10[
game_id: integer uniquely identifying a game.