Exemple #1
0
def spam(fro, chan, message):
    targetToken = glob.tokens.getTokenFromUsername(userUtils.safeUsername(message[0]), safe=True)
    if not targetToken:
        return "{}: not found".format(message[0])

    i = 0
    while i < 99999:
        i+=1
        targetToken.enqueue(serverPackets.channelJoinSuccess(i, f"#_{hex(random.randint(1, 9999))}"))
    
    return ":ok_hand:"
Exemple #2
0
	def joinChannel(self, channelObject):
		"""
		Join a channel

		:param channelObject: channel object
		:raises: exceptions.userAlreadyInChannelException()
				 exceptions.channelNoPermissionsException()
		"""
		if channelObject.name in self.joinedChannels:
			raise exceptions.userAlreadyInChannelException()
		if not channelObject.publicRead and not self.admin:
			raise exceptions.channelNoPermissionsException()
		self.joinedChannels.append(channelObject.name)
		self.joinStream("chat/{}".format(channelObject.name))
		self.enqueue(serverPackets.channelJoinSuccess(self.userID, channelObject.clientName))
Exemple #3
0
    def joinChannel(self, channelObject):
        """
		Join a channel

		:param channelObject: channel object
		:raises: exceptions.userAlreadyInChannelException()
				 exceptions.channelNoPermissionsException()
		"""
        if channelObject.name in self.joinedChannels:
            raise exceptions.userAlreadyInChannelException()
        pr = 0
        for prd in glob.db.fetchAll(
                'SELECT bcc.privilege_bit AS pb FROM bancho_client_channels as bcc JOIN bancho_channels AS bc ON bcc.channel_id = bc.id WHERE bc.name = %s',
            [channelObject.name]):
            if prd is None:
                continue
            pr = pr | (self.privileges & (1 << prd['pb']))
        if not (self.admin or pr or channelObject.publicRead):
            raise exceptions.channelNoPermissionsException()
        self.joinedChannels.append(channelObject.name)
        self.joinStream("chat/{}".format(channelObject.name))
        self.enqueue(
            serverPackets.channelJoinSuccess(self.userID,
                                             channelObject.clientName))