我正在制作一个简单的聊天应用程序,它通过 Redis 发布/订阅 channel 发送消息。我不使用任何登录选项,只是让用户选择用户名和聊天。我正在尝试实现一个客户端能够与另一个连接客户端通信的私有(private)聊天。我是聊天客户端编程的新手,我想弄清楚如何只与一个客户端通信。我可以考虑哪些选项来获得一对一聊天的能力?我不介意更改我的体系结构以合并新工具。任何建议表示赞赏
最佳答案
我对原始套接字做了类似的事情。我持有用户对象,其中包含已连接的套接字、名称以及他们是否正在聊天。如果用户不在聊天中,他可以键入命令 /list users
以提供当前连接的用户列表。当他找到要聊天的人时,他输入命令 /chat bob
。如果用户 bob
已经在聊天,他将从服务器收到一条消息,说明 bob 已经在聊天
。否则将在两个用户之间建立聊天 session 。他们现在会一直聊天,直到其中一个输入 /endchat
。然后他们将能够找到新的人聊天。
诀窍是实现服务器,以便它可以跟踪用户列表及其聊天状态以及他们正在与谁聊天,这样当他们键入 /endchat
时,可以通知其他用户。
关于javascript - 在聊天应用程序中连接到特定客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31600410/