我使用QB已有一段时间了,并且一切运行正常。
今天发生了什么事,我再也无法使用正确的dialogID接收QBChatMessages了。
我通过以下方式发送消息:

[self.dialog sendMessage:message completionBlock:^(NSError * _Nullable error) {
    if (error != nil) {
         NSLog(@"error! %@", error);

    } else {
         NSLog(@"success!");
         /*locally adding message to tableview*/
    }
}

回调总是成功的,另一端通过以下方式接收消息:
- (void)chatDidReceiveMessage:(QBChatMessage *)message
{
    NSLog(@"chatDidReceiveMessage %@", message.dialogID);
}

但是我得到的dialogID是(空),这没有任何意义。发送消息时变量self.dialog.ID不为null,消息与我发送的所有文本一起到达其目的地,但是dialogID为(null)。我在帐户内的聊天管理面板中进行了验证,该对话框未显示新消息。我正在使用v2.6.0.1 btw。

最佳答案

好吧,我发现了我的问题。
似乎当我更改了一些发送消息的方法时,我注释掉了其中的重要部分

message.customParameters[@"save_to_history"] = @"1";

永远不要忘记设置save_to_history自定义参数,否则您的消息将在没有dialogID的情况下到达收件人。

10-08 05:34