X-Git-Url: http://git.maemo.org/git/?p=python-purple;a=blobdiff_plain;f=nullclient-ecore.py;h=4691910e5b158626af696c47fca9bc7d3f68e3d3;hp=0af42a883dcff22773977101de35e25a974df10f;hb=5fe506a5d23d5f7ba01599247a58bd03ca9eb7da;hpb=f0ff8c3ffbd828fbdc0963c8c4744c94363f40a7;ds=sidebyside diff --git a/nullclient-ecore.py b/nullclient-ecore.py index 0af42a8..4691910 100644 --- a/nullclient-ecore.py +++ b/nullclient-ecore.py @@ -3,7 +3,7 @@ import etk import ecore import purple -from xml.dom import minidom +#from xml.dom import minidom class MainWindow: def __init__(self, quit_cb): @@ -192,30 +192,40 @@ class NullClientPurple(object): if self.window: self.window.lstatus.text = "Disconnected" - def __purple_write_im_cb(self, sender, alias, message): + def __purple_write_im_cb(self, username, name, alias, message): if self.window: if alias: self.window.txt_area.text += alias + ": " + message + "
" else: - self.window.txt_area.text += sender + ": " + message + "
" + self.window.txt_area.text += name + ": " + message + "
" self.window.show() + def __purple_signal_signed_on_cb(self, username, protocol_id): + print "[DEBUG] Signed on: %s %s" % (username, protocol_id) + + def __purple_signal_signed_off_cb(self, username, protocol_id): + print "[DEBUG] Signed off: %s %s" % (username, protocol_id) + + def __purple_signal_buddy_signed_on_cb(self, name, alias): + print "[DEBUG]: Buddy signed on: %s %s" % (name, alias) + def __purple_signal_buddy_signed_off_cb(self, name, alias): if self.buddies.has_key(name): self.buddies[name] = None self.buddies.pop(name) - print "[DEBUG]: Buddy removed!" + print "[DEBUG]: Buddy signed off: %s %s" % (name, alias) self.window.remove_buddy(name) + """ def __purple_signal_jabber_receiving_xmlnode_cb(self, message): - xml = minidom.parse(message) - - for msg in xml.getElementsByTagName("message"): - who = msg.getAttribute("from") - for geoloc in msg.getElementsByTagNameNS("http://jabber.org/protocol/geoloc", "geoloc"): - lat = geoloc.getElementsByTagName("lat")[0].childNodes[0].nodeValue - lon = geoloc.getElementsByTagName("lon")[0].childNodes[0].nodeValue - print "who: %s lat: %s lon: %s" % (who, lat, lon) + xml = minidom.parse(message) + for msg in xml.getElementsByTagName("message"): + who = msg.getAttribute("from") + for geoloc in msg.getElementsByTagNameNS("http://jabber.org/protocol/geoloc", "geoloc"): + lat = geoloc.getElementsByTagName("lat")[0].childNodes[0].nodeValue + lon = geoloc.getElementsByTagName("lon")[0].childNodes[0].nodeValue + print "who: %s lat: %s lon: %s" % (who, lat, lon) + """ def add_account(self): username = "carmanplugintest@gmail.com" @@ -232,9 +242,11 @@ class NullClientPurple(object): self.account.get_protocol_options() self.account.set_enabled("carman-purple-python", True) self.account.password = password - self.purple.connect() + self.purple.signal_connect("signed-on", self.__purple_signal_signed_on_cb) + self.purple.signal_connect("signed-off", self.__purple_signal_signed_off_cb) + self.purple.signal_connect("buddy-signed-on", self.__purple_signal_buddy_signed_on_cb) self.purple.signal_connect("buddy-signed-off", self.__purple_signal_buddy_signed_off_cb) - self.purple.signal_connect("jabber-receiving-xmlnode", self.__purple_signal_jabber_receiving_xmlnode_cb) + #self.purple.signal_connect("jabber-receiving-xmlnode", self.__purple_signal_jabber_receiving_xmlnode_cb) def send_msg(self, name, msg): if not self.conversations.has_key(name):