【问题标题】:send chat marker in xmpp group chat在 xmpp 群聊中发送聊天标记
【发布时间】:2019-05-15 01:31:27
【问题描述】:

我正在使用 xmpp 和 angular 7 创建聊天应用

我希望在用户向其他用户发送消息时显示聊天标记
如果我在一对一聊天中发送消息,它会起作用 但是如果是群聊就不行了

我应该在我的代码中进行哪些更改?

 sendChatMarker(to: string, messageId: string, messagetype: string, marker: string, connection) {
//create message stanza for the chat marker

  let chatMarker = $msg({
    to: to,
    from: connection.jid,
    id: generateUUIDv4(),
  })
    .c(marker, {
      xmlns: this.xmppNamespacesService.chatMarkerNS,
      id: messageId
    })
    .up()
    .c("store", {
      xmlns: this.xmppNamespacesService.messageProcessingHintsNS
    }); //to archive chat markers

  //send the chat marker
  connection.send(chatMarker.tree());
  console.log(marker + " chat Marker is sent.", chatMarker.tree());
    }
  }

【问题讨论】:

    标签: javascript xmpp


    【解决方案1】:

    当您收到群聊消息时,您会收到此节:

    <message
        from='coven@chat.shakespeare.lit/thirdwitch'
        id='hysf1v37'
        to='crone1@shakespeare.lit/desktop'
        type='groupchat'>
      <body>Harpier cries: 'tis time, 'tis time.</body>
    </message>
    

    如您所见,此消息的类型是“群聊”。所以你要做的就是寻找这个类型,当你收到它时显示标记。

    如果您需要更多详细信息,这里是我找到它的 XEP。 https://xmpp.org/extensions/xep-0045.html#message 该节在第 7.4 节下。

    【讨论】:

      猜你喜欢
      • 2016-02-02
      • 2017-07-13
      • 2016-02-29
      • 2013-03-26
      • 2014-02-10
      • 2017-05-25
      • 2016-06-26
      相关资源
      最近更新 更多