快速blox聊天消息发送响应成功但消息未传递到服务器

时间:2016-05-05 10:37:33

标签: ios chat quickblox

正在使用Quick blox Chat API虽然它有趣且有趣,但在成功向群组发送邮件时却非常困难。

我首先创建了一个ChatDialog(非公共组),并且创建时没有任何问题。现在我想将消息发送到ChatDialog。

这是Swift中客户端的代码:

    let user = QBUUser()
    user.ID = (QBSession.currentSession().currentUser?.ID)!
    user.password = "*********"
    QBChat.instance().connectWithUser(user) { (error: NSError?) -> Void in
        if error == nil{
            print("Success in connection")
            self.chatGroup = QBChatDialog(dialogID:self.selectedChatGroup.chatGroupId, type: QBChatDialogType.Group)
            self.chatGroup.occupantIDs = self.selectedChatGroup.opponents
            self.chatGroup.joinWithCompletionBlock { (err) in
                if err == nil{
                    print("Joined Succesfully")
                    let message: QBChatMessage = QBChatMessage()
                    message.text = "PRAISE THE LORD"
                    message.deliveredIDs = [(QBSession.currentSession().currentUser?.ID)!]
                    message.readIDs = [(QBSession.currentSession().currentUser?.ID)!]
                    message.markable = true

                    self.chatGroup.sendMessage(message, completionBlock: { (error: NSError?) -> Void in

                        if err == nil{
                            print(message.text)
                            print("Message sent Succesfully")

                            let resPage = QBResponsePage(limit:20, skip: 0)

                            QBRequest.messagesWithDialogID(self.selectedChatGroup.chatGroupId, extendedRequest: nil, forPage: resPage, successBlock: {(response: QBResponse, messages: [QBChatMessage]?, responcePage: QBResponsePage?) in

                                print("Messages count is \(messages?.count)")

                                }, errorBlock: {(response: QBResponse!) in

                            })

                        }else{
                            print(err?.localizedDescription)
                        }

                    });
                }
                else{
                    print(err?.localizedDescription)
                }
            }

        }
    }

这是我回复的响应。我很确定登录聊天,连接到群组是成功的。即使从API返回的响应也肯定发送消息是成功的。但是我无法在Quick blox的管理面板中看到任何消息。还尝试从聊天对话框中获取所有消息,但是它给出了0条消息。所以我的消息没有被传递。

1 个答案:

答案 0 :(得分:0)

是的,从Quickblox API获得了解决方案。这是我在代码中遗漏的内容。

    var params = NSMutableDictionary()
    params["save_to_history"] = true
    message.customParameters = params

像魅力一样工作!