why this function returns None?

Viewed 35

I am dealing with client-server project. I am working on a feature that giving the option for the user to send a message to multiple users.

I have 2 functions:

def broadcast(self, TalkingCurrentClient, message):
       WhomMessageClient = self.ChoosingClientToSendMessage(message)
       if WhomMessageClient is not None:
           ##################################
           if WhomMessageClient is not isinstance(WhomMessageClient, list):
               ##################################
               if TalkingCurrentClient == WhomMessageClient:
                   SerializedDataToBytes(WhomMessageClient, message)
               if TalkingCurrentClient != WhomMessageClient:
                   SerializedDataToBytes(WhomMessageClient, message)
       #############################################################
       elif WhomMessageClient is isinstance(WhomMessageClient, list):
           for ClientToSend in WhomMessageClient:
               if ClientToSend != TalkingCurrentClient:
                   SerializedDataToBytes(ClientToSend, message)
               else:
                   SerializedDataToBytes(ClientToSend, message)
       #############################################################
       else:
           for client in self.clientsList:
               if client != TalkingCurrentClient:
                   SerializedDataToBytes(client, message)
               else:
                   SerializedDataToBytes(client, message)

This function supposed to accept a single name of user or a list of users, depends of the user choice. The function get that from the second function calls ChoosingClientToSendMessage(message)

But, when I am choosing single client (user) WhomMessageClient get the right client from function 2, but when I am sending a list of clients I get a None Value.

Here is function 2:

 def ChoosingClientToSendMessage(self, message):
        if message.recipient is not None and message.recipient != 'None':
            if isinstance(message.recipient, list):
                for ClientToAddToList in message.recipient:
                    ChoosingMultipleClientToSend = []
                    index = self.ConnectionsList.index(ClientToAddToList)
                    ChoosingMultipleClientToSend.append(self.clientsList[index])
                if ChoosingMultipleClientToSend:
                    return ChoosingMultipleClientToSend
            ################################################################
            else:
                index = self.ConnectionsList.index(message.recipient)
                ClientThatWhomMessage = self.clientsList[index]
                print(ClientThatWhomMessage)
                if ClientThatWhomMessage:
                    return ClientThatWhomMessage
        return None
0 Answers
Related