我只是想知道是否有與Ejabberd一起使用的消息傳遞收據的Strophe插件?有沒有什麼辦法可以在Ejabberd上用Strophe實現「Message Seen」功能?
我想了解郵件傳遞收據是如何工作的,有沒有來自Strophe的任何文檔/插件?
我只是想知道是否有與Ejabberd一起使用的消息傳遞收據的Strophe插件?有沒有什麼辦法可以在Ejabberd上用Strophe實現「Message Seen」功能?
我想了解郵件傳遞收據是如何工作的,有沒有來自Strophe的任何文檔/插件?
從Strophe插件代碼中,我不認爲收據插件允許直接支持「Message Seen」功能。根據我的理解,它確實支持可靠性部分,並將未被排除的消息保留在隊列中。但是,目的只是爲了在一段時間內沒有收到信息時重新發送信息。
https://github.com/strophe/strophejs-plugins/blob/master/receipts/strophe.receipts.js
恐怕你需要自定義代碼來實現XMPP協議功能的頂部在Javascript該功能。
要獲得Message Delivery Receipt,您可以使用strophe.receipts.js插件。使用這個消息的發送者可以請求消息已經被傳遞給由預期的接收者控制的客戶端的一些通知。
使用此收據插件,您無法實現「消息查看」功能。爲此,您必須使用XEP擴展XEP-0333 Chat Markers協議。到目前爲止,沒有任何Strophe插件來實現這個功能。
要實現「消息查看」功能,您可以檢查XEP-0085 Chat State Notification XEP擴展協議。 StropheJs用strophe.chatstates.js插件支持這一點。此外,通過使用聊天狀態通知,您可以推斷收件人已經閱讀郵件,如果郵件在郵件發送後的任何時間變爲活動狀態。
嗨對不起,我已經生病了一個星期左右,我看看收據和聊天狀態插件,然後我有一個想法;我在想,只能使用ping插件/發送消息來創建「看到」功能。當我發送消息時,我也發送ping消息,ping消息處理程序位於聊天頁面中,如果它發送回乒乓球,我知道它已經被看到。至於何時收件人處於離線狀態,何時發送郵件,收件人何時聯機並讀取了郵件,它可以發送如所示的「消息」。所以當發送者在線時,它會得到看到的消息。 – John
如果我這樣做,那麼我不必添加收據和chatstate插件,但使用on_message和ping,我已經使用 - 我假設,所以它減少了它必須加載和運行的代碼。 – John