10 print "---- callback example: %s" % name
12 conv_cbs["create_conversation"] = callback
13 conv_cbs["destroy_conversation"] = callback
14 conv_cbs["write_chat"] = callback
15 conv_cbs["write_im"] = callback
16 conv_cbs["write_conv"] = callback
17 conv_cbs["chat_add_users"] = callback
18 conv_cbs["chat_rename_user"] = callback
19 conv_cbs["chat_remove_users"] = callback
20 conv_cbs["chat_update_user"] = callback
21 conv_cbs["present"] = callback
22 conv_cbs["has_focus"] = callback
23 conv_cbs["custom_smiley_add"] = callback
24 conv_cbs["custom_smiley_write"] = callback
25 conv_cbs["custom_smiley_close"] = callback
26 conv_cbs["send_confirm"] = callback
28 cbs["conversation"] = conv_cbs
32 self.p = purple.Purple()
37 self.p.purple_init(cbs)
39 def set_protocol(self, protocol):
40 for i in self.p.get_protocols():
42 print "-- NULLCLIENT --: Choosing %s as protocol" % protocol
44 print "-- NULLCLIENT --: Protocol successfully chosen: %s" % i[0]
47 def new_account(self, username, protocol, password):
48 self.account = purple.Account(username, protocol)
49 self.account.set_password(password)
50 self.account.set_enabled("carman-purple-python", True)
51 def get_buddies(self):
52 buddies = self.account.get_buddies_online()
56 sys.stdout.write("GTalk account: ")
57 username = sys.stdin.readline()
61 return getpass.getpass()
63 if __name__ == '__main__':
67 client.set_protocol("XMPP")
69 password = getpassword()
70 client.new_account(username, client.protocol, password)
73 ecore.timer_add(20, client.get_buddies)
74 ecore.main_loop_begin()