def create_user_object(jabber_id, name, vcard): if isinstance(jabber_id, sleekxmpp.jid.JID ) and jabber_id.bare is not None and jabber_id.bare: jabber_id_bare = jabber_id.bare else: jabber_id_bare = jabber_id vcard_nickname = None vcard_email = None if vcard is not None: # get_payload() returns the xml for the Iq() as a Element object payload = vcard.get_payload() vcard_xml = payload[0] # vcard_full_name = vcard_xml.findtext('.//{vcard-temp}FN') vcard_nickname = vcard_xml.findtext('.//{vcard-temp}NICKNAME') vcard_email = vcard_xml.findtext('.//{vcard-temp}USERID') client_user = XMPPUser( jabber_id_bare, vcard_nickname if vcard_nickname is not None and vcard_nickname else name, vcard_email if vcard_email is not None and vcard_email else None) # Create a User object user_object = User(0) user_object.name = name user_object.points = 0 json_data = client_user.to_json() user_object.usernames = {json_data['client']: [json_data['username']]} user_object.current_username = json_data['username'] logger.debug("client_user is '%s'" % client_user) return client_user
def get_user_from_message(self, message_sender, channel=None, event=None, **kwargs): user = User(0) logger.debug("Channel is '%s', message_sender is '%s', event is '%s'" % (channel, message_sender, event)) # Get client object information client_user = self._get_client_object_from_message_object(message_sender, channel=channel, event=event) user.client_user = client_user user.name = client_user.name user.current_username = client_user.username return user
def get_user_from_message(self, message_sender, channel=None, event=None, **kwargs): user = User(0) logger.debug("Channel is '%s', message_sender is '%s', event is '%s'" % (channel, message_sender, event)) api_json = self.client.api_call('users.info', user=message_sender) if 'user' in api_json and api_json['user'] is not None: client_user = create_user_object_from_json(api_json['user']) user.client_user = client_user user.name = client_user.name user.current_username = client_user.username return user
def create_user_object(jabber_id, name, vcard): jabber_id_bare = jabber_id.bare if isinstance(jabber_id, sleekxmpp.jid.JID) and jabber_id.bare is not None and jabber_id.bare else jabber_id if vcard is not None: # get_payload() returns the xml for the Iq() as a Element object payload = vcard.get_payload() vcard_xml = payload[0] # vcard_full_name = vcard_xml.findtext('.//{vcard-temp}FN') vcard_nickname = vcard_xml.findtext('.//{vcard-temp}NICKNAME') vcard_email = vcard_xml.findtext('.//{vcard-temp}USERID') client_user = HipChatUser(jabber_id_bare, vcard_nickname if vcard_nickname is not None and vcard_nickname else name, vcard_email if vcard_email is not None and vcard_email else None) # Create a User object user_object = User(0) user_object.name = name user_object.points = 0 json_data = client_user.to_json() user_object.usernames = {json_data['client']: [json_data['username']]} user_object.current_username = json_data['username'] logger.debug("create_user_object - client_user is '%s'" % (client_user)) return client_user