有没有办法在Ejabberd上用Strophe实现“Message Seen”功能?

时间:2015-09-01 09:56:24

标签: ejabberd strophe

我只是想知道是否有一个Strophe插件用于与Ejabberd一起使用的消息发送收据?

我想了解邮件投递收据的工作原理,Strophe是否有任何文件/插件?

2 个答案:

答案 0 :(得分:5)

要获得Message Delivery Receipt,您可以使用strophe.receipts.js插件。使用此消息的发件人可以请求一些通知,表明该消息已被传递给由预期收件人控制的客户端。

使用此收据插件无法实现“消息显示”功能。为此,您必须使用XEP扩展XEP-0333 Chat Markers协议。截至目前,没有任何Strophe插件可以实现此功能。

要实现“消息查看”功能,您可以检查XEP-0085 Chat State Notification XEP扩展协议。 StropheJs使用strophe.chatstates.js插件支持此功能。此外,通过使用聊天状态通知,您可以推断出收件人已经读取了邮件,如果邮件在邮件传递后的任何时刻变为活动状态。

答案 1 :(得分:0)

从Strophe插件代码中,我认为收据插件不允许直接支持" Message Seen"特征。根据我的理解,它确实支持可靠性部分并将未打包的消息保持在队列中。但是,目的只是重新发送消息,以防它在一段时间后没有被激活。

https://github.com/strophe/strophejs-plugins/blob/master/receipts/strophe.receipts.js

我担心您需要自定义代码才能在XMPP协议功能的基础上在Javascript中实现该功能。