在 NodeJS 应用程序中的应用程序消息传递中

Posted

技术标签:

【中文标题】在 NodeJS 应用程序中的应用程序消息传递中【英文标题】:In Application Messaging in NodeJS Application 【发布时间】:2018-05-31 09:28:02 【问题描述】:

我正在尝试为我的 Web 应用程序实现应用内消息传递(消息中心模块),它将在系统用户之间发送和接收消息。 我使用 NodeJS 作为我的后端。

我计划为此使用 PUSH 通知。通过这种方法,我可以将每条新消息的推送通知发送给用户。这是我能想到的最简单的解决方案。

但是可能已经有现成的服务或库来解决这个问题,因为这似乎是非常普遍的情况。 我已经在评估 Twilio、Sendbird、Smooch、Pusher 和许多其他库,但它们的问题是它们不是我想要的电子邮件服务或短信服务。我不想向用户发送短信或电子邮件。

所以到目前为止,PUSH 通知是我能想到的,实现简单的应用内消息服务。

如果有任何更好的方法或任何可用的库来帮助这一点,那么请提出建议。

非常感谢。

【问题讨论】:

【参考方案1】:

这个问题是在 2018 年提出的,不确定当时的状态是什么,但 Twilio 支持应用内聊天(称为 Programmable Chat),甚至还有一个名为 Twilio Conversations 的继任者,它允许不同的传输/通道机制 -通过 SMS 和/或 WhatsApp 和/或应用内聊天进行一次对话...SendBird 肯定允许应用内聊天而不依赖电子邮件,并支持push notifications。

有趣的替代方案是由您拥有的 Firebase 帐户支持的开源 SDK:https://chatsdk.co 或 https://www.chat21.org。

【讨论】:

【参考方案2】:

对于通知,我认为您可以使用 firebase / onesignal / 推送通知。至于客户端之间的消息,如果是聊天,您可以使用 socket.io。 (如果您需要扩展,您可能还需要消息队列。)

【讨论】:

以上是关于在 NodeJS 应用程序中的应用程序消息传递中的主要内容,如果未能解决你的问题,请参考以下文章

React Native、NodeJS、Socket.io

架构设计之NodeJS操作消息队列RabbitMQ

NodeJs 和 C 子进程之间通信的最佳方式

使用 NodeJs 服务器中的 firebase 云消息在特定时间和日期安排通知

nodeJS 中的发布/订阅实现

使用 ActiveMQ 在应用程序中的模块之间进行消息传递