comparison frontends/quick_frontend/quick_app.py @ 75:7322a41f8a8e

Basic user joined/left management - plugin XEP-0045: user joined./left signal is sended - wix: user are adder/removed when these signals are catched
author Goffi <goffi@goffi.org>
date Mon, 29 Mar 2010 16:54:53 +1100
parents f271fff3a713
children 8becde8a967c
comparison
equal deleted inserted replaced
74:6e3a06b4dd36 75:7322a41f8a8e
41 self.bridge.register("disconnected", self.disconnected) 41 self.bridge.register("disconnected", self.disconnected)
42 self.bridge.register("newContact", self.newContact) 42 self.bridge.register("newContact", self.newContact)
43 self.bridge.register("newMessage", self.newMessage) 43 self.bridge.register("newMessage", self.newMessage)
44 self.bridge.register("presenceUpdate", self.presenceUpdate) 44 self.bridge.register("presenceUpdate", self.presenceUpdate)
45 self.bridge.register("roomJoined", self.roomJoined) 45 self.bridge.register("roomJoined", self.roomJoined)
46 self.bridge.register("roomUserJoined", self.roomUserJoined)
47 self.bridge.register("roomUserLeft", self.roomUserLeft)
46 self.bridge.register("subscribe", self.subscribe) 48 self.bridge.register("subscribe", self.subscribe)
47 self.bridge.register("paramUpdate", self.paramUpdate) 49 self.bridge.register("paramUpdate", self.paramUpdate)
48 self.bridge.register("contactDeleted", self.contactDeleted) 50 self.bridge.register("contactDeleted", self.contactDeleted)
49 self.bridge.register("updatedValue", self.updatedValue, "request") 51 self.bridge.register("updatedValue", self.updatedValue, "request")
50 self.bridge.register("askConfirmation", self.askConfirmation, "request") 52 self.bridge.register("askConfirmation", self.askConfirmation, "request")
196 if not self.CM.isConnected(from_jid): 198 if not self.CM.isConnected(from_jid):
197 self.contactList.disconnect(from_jid) 199 self.contactList.disconnect(from_jid)
198 200
199 def roomJoined(self, room_id, room_service, room_nicks, user_nick, profile): 201 def roomJoined(self, room_id, room_service, room_nicks, user_nick, profile):
200 """Called when a MUC room is joined""" 202 """Called when a MUC room is joined"""
201 debug (_("Room [%(room_name)s] joined by %(profile)s") % {'room_name':room_id+'@'+room_service, 'profile': profile}) 203 if not self.__check_profile(profile):
202 204 return
203 205 debug (_("Room [%(room_name)s] joined by %(profile)s, users presents:%(users)s") % {'room_name':room_id+'@'+room_service, 'profile': profile, 'users':room_nicks})
206 room_jid=room_id+'@'+room_service
207 self.chat_wins[room_jid].setType("group")
208 self.chat_wins[room_jid].setPresents([user_nick]+room_nicks)
209
210
211 def roomUserJoined(self, room_id, room_service, user_nick, user_data, profile):
212 """Called when an user joined a MUC room"""
213 if not self.__check_profile(profile):
214 return
215 room_jid=room_id+'@'+room_service
216 if self.chat_wins.has_key(room_jid):
217 self.chat_wins[room_jid].replaceUser(user_nick)
218 debug (_("user [%(user_nick)s] joined room [%(room_jid)s]") % {'user_nick':user_nick, 'room_jid':room_jid})
219
220 def roomUserLeft(self, room_id, room_service, user_nick, user_data, profile):
221 """Called when an user joined a MUC room"""
222 if not self.__check_profile(profile):
223 return
224 room_jid=room_id+'@'+room_service
225 if self.chat_wins.has_key(room_jid):
226 self.chat_wins[room_jid].removeUser(user_nick)
227 debug (_("user [%(user_nick)s] left room [%(room_jid)s]") % {'user_nick':user_nick, 'room_jid':room_jid})
204 228
205 def subscribe(self, type, raw_jid, profile): 229 def subscribe(self, type, raw_jid, profile):
206 """Called when a subsciption maangement signal is received""" 230 """Called when a subsciption maangement signal is received"""
207 if not self.__check_profile(profile): 231 if not self.__check_profile(profile):
208 return 232 return