2017-04-19 108 views
0

我在我的应用程序中使用Quickblox,问题是当试图获取使用自定义值参数过滤的邮件过滤器不工作。
聊天documentation
这里是亩代码:如何通过Quickblox中的自定义值过滤[tag:ChatDialog]消息?

 ArrayList<QBChatMessage> messages = null; 
     QBMessageGetBuilder qbMessageGetBuilder = new QBMessageGetBuilder(); 
     qbMessageGetBuilder.eq("bookID", customDialog.getBookID()); 
     qbMessageGetBuilder.sortAsc("date_sent"); 
     try { 
      messages = QBRestChatService.getDialogMessages(qbChatDialog, qbMessageGetBuilder).perform(); 
     } catch (QBResponseException e) { 
      e.printStackTrace(); 
     } 

响应例如:

{ 
    "skip": 0, 
    "limit": 100, 
    "items": [ 
    { 
     "_id": "58f6c9f4a28f9a0c7f000003", 
     "attachments": [], 
     "bookID": "-Kh9UzvClNyHuwNhLcFV", 
     "chat_dialog_id": "58f6bcdea0eb4766d900003c", 
     "created_at": "2017-04-19T02:22:44Z", 
     //other fields 
    }, 
    { 
     "_id": "58f6ca12a28f9a08c5000001", 
     "attachments": [], 
     "bookID": "-KeA1pw5DGMSTg67Pbp0", 
     "chat_dialog_id": "58f6bcdea0eb4766d900003c", 
     "created_at": "2017-04-19T02:23:15Z", 
     //other fields 

    } 
    ] 
} 

[更新] 我使用3.3.0版本。

[更新] 22/4/2017 我也试过@Jagapathi答案,我换成这行

qbMessageGetBuilder.eq("bookID", customDialog.getBookID()); 

与此:

qbMessageGetBuilder.addRule("bookID", QueryRule.EQ, customDialog.getBookID()); 

也不起作用。

回答

1

qbMessageGetBuilder.eq

“EQ” 不可按照Doc为排序,您需要使用比较相同的价值观。

messageGetBuilder.addRule(“bookID”,QueryRule.EQ,“-Kh9UzvClNyHuwNhLcFV”);

Image From dOC

+0

谢谢您的回复, 但不幸的是,这是行不通的。 :( – Tefa

+0

让我更多的帮助你,如果我找到任何解决方案 – jagapathi

+0

请用新代码更新问题 – jagapathi