javascript - 在聊天应用程序中连接到特定客户端

标签 javascript redis chat

我正在制作一个简单的聊天应用程序,它通过 Redis 发布/订阅 channel 发送消息。我不使用任何登录选项,只是让用户选择用户名和聊天。我正在尝试实现一个客户端能够与另一个连接客户端通信的私有(private)聊天。我是聊天客户端编程的新手,我想弄清楚如何只与一个客户端通信。我可以考虑哪些选项来获得一对一聊天的能力?我不介意更改我的体系结构以合并新工具。任何建议表示赞赏

最佳答案

我对原始套接字做了类似的事情。我持有用户对象,其中包含已连接的套接字、名称以及他们是否正在聊天。如果用户不在聊天中,他可以键入命令 /list users 以提供当前连接的用户列表。当他找到要聊天的人时,他输入命令 /chat bob。如果用户 bob 已经在聊天,他将从服务器收到一条消息,说明 bob 已经在聊天。否则将在两个用户之间建立聊天 session 。他们现在会一直聊天,直到其中一个输入 /endchat。然后他们将能够找到新的人聊天。

诀窍是实现服务器,以便它可以跟踪用户列表及其聊天状态以及他们正在与谁聊天,这样当他们键入 /endchat 时,可以通知其他用户。

关于javascript - 在聊天应用程序中连接到特定客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31600410/

相关文章:

javascript - 从 ERB 切换到 Angular 时,Rails 应用程序中的 AngularJS View 功能测试中断

Symfony2 (WebsocketBundle) - 简单的私有(private)(和群组)聊天数据库架构和逻辑

Angular 区分 keydown.enter for textarea in mobile vs desktop

ios - 用于 firebase 聊天的 NoSQL 数据库设计

javascript - 我如何在选中和取消选中 html 中的同一个复选框时调用 javascript 的两个不同函数?

javascript - 单击元素以更改另一个元素的背景图像

redis - 使用 redis 的可恢复 PUB/SUB

php - 使用 MySQL 和 Redis 优化计数器

php - 如何通过作业 ID 从 Redis 队列中删除作业?

javascript - Googlemap自定义信息窗口