From 518eee05c224b00cf4622038290f5fb0c0d4e95b Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Wed, 16 Jan 2013 22:32:40 -0800 Subject: Set vCard avatar hash on startup. --- sleekxmpp/plugins/xep_0153/vcard_avatar.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'sleekxmpp/plugins/xep_0153/vcard_avatar.py') diff --git a/sleekxmpp/plugins/xep_0153/vcard_avatar.py b/sleekxmpp/plugins/xep_0153/vcard_avatar.py index c74713e5..03106247 100644 --- a/sleekxmpp/plugins/xep_0153/vcard_avatar.py +++ b/sleekxmpp/plugins/xep_0153/vcard_avatar.py @@ -78,7 +78,17 @@ class XEP_0153(BasePlugin): self.xmpp.roster[jid].send_last_presence() def _start(self, event): - vcard = self.xmpp['xep_0054'].get_vcard() + try: + vcard = self.xmpp['xep_0054'].get_vcard() + data = vcard['vcard_temp']['PHOTO']['BINVAL'] + if not data: + new_hash = '' + else: + new_hash = hashlib.sha1(data).hexdigest() + self.api['set_hash'](self.xmpp.boundjid, args=new_hash) + except XMPPError: + log.debug('Could not retrieve vCard for %s' % jid) + self._allow_advertising.set() def _end(self, event): -- cgit v1.2.3