Exemple #1
0
 def post(self):
     if not self.auth():
         self.respond('!') # not authenticated
         return
     self.out = '0'
     if self.user.friends:
         players = User.get_multi_by_id(self.user.friends)
         if players:
             # now lookup statuses
             check_t = int(time.time() - 90) # 1.5 minutes
             q = UserToken.query(UserToken.uid.IN(self.user.friends), UserToken.last_chat_refresh >= check_t)
             q.order(-UserToken.updated)
             tokens = q.fetch()
             
             self.out = '1'
             for p in players:
                 uid = int(p.get_id())
                 st = '0' # check if player is - 0:offline, 1:online, 2:bussy, 3:unknown
                 if tokens:
                     for t in tokens:
                         if t.uid == uid:
                             st = '1' # is online
                             if t.location != 'L': # not in lobby
                                 st = '2' # but is bussy (ingame)
                             break
                                         
                 self.out += '|' + str(uid) + ',' + st + ',' + p.name
                 
     self.respond()