javascript - Quickblox JS SDK 在创建对话框时通知Occupants

标签 javascript sdk quickblox

我使用此代码从 http://quickblox.com/developers/Javascript 检索.

My SDK info: /* QuickBlox JavaScript SDK - v2.1.4 - 2016-07-19 */

function notifyOccupants(dialogOccupants, newDialogId) {
  dialogOccupants.forEach(function(itemOccupanId, i, arr) {
    if (itemOccupanId != currentUser.id) {
      var msg = {
        type: 'chat',
        extension: {
          notification_type: 1,
          _id: newDialogId,
        }, 
      };
      QB.chat.send(itemOccupanId, msg);
    }
  });
}

当我执行这个函数时,它总是返回:

"quickblox.min.js:7 Uncaught TypeError: Cannot read property 'send' of undefined".

有人可以帮忙吗?

最佳答案

正如他们的 tutorial 中所说, 您必须先初始化 QB 对象才能使用它。

确保您的代码中包含以下行:

QB.createSession({login: user.login, password: user.pass}, function(err, res) {
  if (res) {
    QB.chat.connect({userId: user.id, password: user.pass}, function(err, roster) {

并检查您的代码是否位于 connect 函数回调内, 确保您的代码仅在 QB 初始化后运行。

关于javascript - Quickblox JS SDK 在创建对话框时通知Occupants,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38459501/

相关文章:

javascript - 计算对象中值的更智能方法(JS、React)

javascript - 差异 - "e.preventDefault();"和 "return false;"

ios - QuickBlocks QBSettings 获取未声明的标识符

javascript - 有没有办法使用单个工具栏 DOM 元素来拥有多个内联配置的 ckeditors

ios - UIAlertView 不应调用 popViewControllerAnimated

C# - 指纹生物识别

android - Facebook Android SDK 5.4.0 更新后导致 ANR

android - 如何在 QuickBlox municate android 中通过 Id 获取聊天对话框?

ios - quickblox - 删除私有(private)(1 对 1)聊天

Javascript 从数组中选择数据以创建供图表使用的集合列表