cbs = {}
acc_cbs = {}
+blist_cbs = {}
+conn_cbs = {}
conv_cbs = {}
+notify_cbs = {}
+request_cbs = {}
+signal_cbs = {}
def account_callback(name):
print "---- account callback example: %s" % name
cbs["account"] = acc_cbs
+def blist_callback(name):
+ print "---- blist callback example: %s" % name
+
+blist_cbs["new_list"] = blist_callback
+blist_cbs["new_node"] = blist_callback
+blist_cbs["show"] = blist_callback
+blist_cbs["update"] = blist_callback
+blist_cbs["remove"] = blist_callback
+blist_cbs["destroy"] = blist_callback
+blist_cbs["set_visible"] = blist_callback
+blist_cbs["request_add_buddy"] = blist_callback
+blist_cbs["request_add_chat"] = blist_callback
+blist_cbs["request_add_group"] = blist_callback
+
+cbs["blist"] = blist_cbs
+
+def conn_callback(name):
+ print "---- connection callback example: %s" % name
+
+conn_cbs["connect_progress"] = conn_callback
+conn_cbs["connected"] = conn_callback
+conn_cbs["disconnected"] = conn_callback
+conn_cbs["notice"] = conn_callback
+conn_cbs["report_disconnect"] = conn_callback
+conn_cbs["network_connected"] = conn_callback
+conn_cbs["network_disconnected"] = conn_callback
+conn_cbs["report_disconnect_reason"] = conn_callback
+
+cbs["connection"] = conn_cbs
+
def conv_callback(name):
print "---- conversation callback example: %s" % name
cbs["conversation"] = conv_cbs
+def notify_callback(name):
+ print "---- notify callback example: %s" % name
+
+notify_cbs["notify_message"] = notify_callback
+notify_cbs["notify_email"] = notify_callback
+notify_cbs["notify_emails"] = notify_callback
+notify_cbs["notify_formatted"] = notify_callback
+notify_cbs["notify_searchresults"] = notify_callback
+notify_cbs["notify_searchresults_new_rows"] = notify_callback
+notify_cbs["notify_userinfo"] = notify_callback
+notify_cbs["notify_uri"] = notify_callback
+notify_cbs["close_notify"] = notify_callback
+
+cbs["notify"] = notify_cbs
+
+def request_callback(name):
+ print "---- request callback example: %s" % name
+
+request_cbs["request_input"] = request_callback
+request_cbs["request_choice"] = request_callback
+request_cbs["request_action"] = request_callback
+request_cbs["request_fields"] = request_callback
+request_cbs["request_file"] = request_callback
+request_cbs["close_request"] = request_callback
+request_cbs["request_folder"] = request_callback
+
+cbs["request"] = request_cbs
+
+def buddy_signed_off_cb(name):
+ print "---- sign off from buddy %s" % name
+
+def receiving_im_msg_cb(sender, name, message):
+ print "---- receiving IM message from %s: %s" % (name, message)
+ return False
+
+signal_cbs["buddy_signed_off"] = buddy_signed_off_cb
+signal_cbs["receiving_im_msg"] = receiving_im_msg_cb
+
class NullClient:
def __init__(self):
- self.p = purple.Purple()
+ self.p = purple.Purple(debug_enabled=False)
self.account = None
def execute(self):
client.new_account(username, client.protocol, password)
client.p.connect()
+ client.p.attach_signals(signal_cbs)
ecore.timer_add(20, client.get_buddies)
ecore.main_loop_begin()