Пример #1
0
    def send_to_followers(self):
        current_user = User.get_current()
        if not current_user:
            raise ValueError("Please sign in an user")

        query = Query("_Follower").select("follower").equal_to("user", current_user)
        self.send(query)
Пример #2
0
    def send_to_followers(self):
        current_user = User.get_current()
        if not current_user:
            raise ValueError('Please sign in an user')

        query = Query('_Follower').select('follower').equal_to(
            'user', current_user)
        self.send(query)
Пример #3
0
    def send_private_status(self, target):
        current_user = User.get_current()
        if not current_user:
            raise ValueError('Please sign in an user')

        if not isinstance(target, User):
            raise TypeError('target must be a leancloud.User')

        query = Query('User').equal_to('objectId', target.id)
        self.inbox_type = 'private'
        self.send(query)
Пример #4
0
    def send_private_status(self, target):
        current_user = User.get_current()
        if not current_user:
            raise ValueError("Please sign in an user")

        if not isinstance(target, User):
            raise TypeError("target must be a leancloud.User")

        query = Query("User").equal_to("objectId", target.id)
        self.inbox_type = "private"
        self.send(query)
Пример #5
0
 def save(self, *args, **kwargs):
     """
     重写保存
     """
     # 保存的时候检查有没有leancloud的conversation,没有则创建
     if not self.channel_leancloud_id:
         cl_c = _Conversation()
         cl_c.set("n", self.name)
         cl_c.set("sys", True)
         cl_c.save()
         self.channel_leancloud_id = cl_c.id
     else:
         qs = Query(_Conversation)
         cl_c = qs.get(self.channel_leancloud_id)
         if cl_c.get("name") != self.name:
             cl_c.set("name", self.name)
             cl_c.save()
         # 更新 update_time
         self.update_time = TimeZone.utc_now()
     super(Channel, self).save(*args, **kwargs)
Пример #6
0
 def logic(self, client_ids):
     if len(client_ids)<=1:
         self.resp_error(content="At least two client_id is required.")
         return
     try_same = None
     for i in client_ids:
         if not i or try_same==i:
             self.resp_args_error()
             return
         try_same = i
     qs = Query(_Conversation)
     try:
         obj = qs.contains_all("m", client_ids).first() # FIXME 当前只是包含, 如果今后出现了群聊,此处务必修改
         the_id = obj.id
     except LeanCloudError:
         conv_obj = _Conversation()
         conv_obj.set("m", client_ids)
         conv_obj.set("sys", False)
         conv_obj.save()
         the_id = conv_obj.id
     return the_id