2015-07-12 151 views
1

我在Quickblox中使用Javascript SDK进行1-1聊天,但不知何故,我无法存储聊天记录。Quickblox一对一聊天记录不起作用

我关注此link

var message = { 
    body: text, 
    type: 'chat', 
    extension: { 
     nick: chatUser.email, 
     // token from session is set on window object 
     token: window.token, 
     // MyChat is a custom class_name 
     class_name: 'MyChat' 

    } 
}; 

我传递的class_nametoken因为我看到千篇一律的Android SDK中。

private Message createMsgWithAdditionalInfo(int userId, String body,  Map<?, ?> addinfoParams){ 
    Message message = new Message(QBChatUtils.getChatLoginFull(userId), Message.Type.chat); 
    String addInfo = ToStringHelper.toString(addinfoParams, "", Consts.ESCAPED_AMPERSAND); 
// 
    MessageExtension messageExtension = new MessageExtension(Consts.QB_INFO, ""); 
    try { 
     messageExtension.setValue("token", QBAuth.getBaseService().getToken()); 
     messageExtension.setValue("class_name", "ChatMessage"); 
     messageExtension.setValue("additional", addInfo); 
    } catch (BaseServiceException e) { 
     e.printStackTrace(); 
    } 
    message.addExtension(messageExtension); 
    message.setBody(body); 
     return message; 
    } 

也在说明中,我看到了这一点。

<message id="123" type="chat" to="[email protected]" from="[email protected]"><body>Hi there</body><quickblox xmlns=""><token>848d4bf336d99532deff6bf7c8bb4b7e7b1a71f9</token><class_name>ChatMessage</class_name></quickblox></message> 

这里也是我看到token & class过去了,所以我猜我message对象怎么我的结构,让我得到它的工作。

我创建chatService的方式是这样的。

chatService = new QBChat(params); 
// to send message I am using sendMessage function 
// message object is same as defined above. 
chatService.sendMessage(recipientID, message); 

回答

1

这是存储聊天记录

看看这个指南的老方法已过时http://quickblox.com/developers/Chat#Server-side_chat_history

var msg = { 
    body: "Hey", 
    extension: { 
     save_to_history: 1 
    }, 
    senderId: currentUser.id, 
    }; 

您必须使用“save_to_history”来存储信息

你可以用这个分支作为基础 https://github.com/QuickBlox/quickblox-javascript-sdk/tree/develop.chat/samples/chat

+0

谢谢我认为你的答案对于一个陷入同样问题的人来说是正确的解决方案。 –