在聊天系统中读取两个用户的消息状态
read message status by both users in chat system
我正在创建基于PHP、ajax的实时聊天系统,我面临消息状态的问题,假设如果用户A向用户B发送一条消息,那么这条消息需要向用户 A 和用户 B 显示。
我将未读消息的状态设置为 0,以在聊天中显示消息 window,但它只对一个用户显示,对另一个用户不显示,因为将状态间隔更新设置为每 2 秒后为 1。
我想的是使用两种不同的状态,一种用于用户 A,一种用于用户 B。
这是正确的方法还是可以有其他方法?
请提出建议。
在我的旧项目中,我总是每三 (3) 秒 运行 一个脚本。它提交最新消息的最后一个 ID,脚本检查是否有比当前会话的最新消息 ID 更高的 ID,如果有,它将加载这些消息。
一个简化的例子是:
<div id="message-div">
<div id="49" class="mes">User 1: What's up?</div>
<div id="50" class="mes">User 2: Okay. How about you?</div>
<div id="51" class="mes">User 1: Pretty fine.</div>
</div>
我的脚本将每三 (3) 秒 运行,并使用 Ajax 提交最新的 ID(上面的示例是 51) .它会检查是否有大于 51 的 ID 然后 append()
到 #message-div
.
只需确保在附加新消息时包含该消息的 ID。
var new-message = '<div id="52" class="mes">User 2: That is good to hear.</div>'; /* THIS COMES FROM AN AJAX REQUEST */
$("#message-div").append(new-message);
我没有使用 status
列或其他任何东西。我为 read
功能所做的是有一个额外的 table 用于存储用户阅读消息时的日期和时间。
read_id | message_id | user_id | read_date
---------+------------+---------+---------------------
1 | 51 | 2 | 2016-06-03 14:29:30 /* USER 2 READ MESSAGE 51 IN JUNE 3, 2016 AT 2:26 PM */
2 | 52 | 1 | 2016-06-03 14:30:10
我正在创建基于PHP、ajax的实时聊天系统,我面临消息状态的问题,假设如果用户A向用户B发送一条消息,那么这条消息需要向用户 A 和用户 B 显示。
我将未读消息的状态设置为 0,以在聊天中显示消息 window,但它只对一个用户显示,对另一个用户不显示,因为将状态间隔更新设置为每 2 秒后为 1。
我想的是使用两种不同的状态,一种用于用户 A,一种用于用户 B。 这是正确的方法还是可以有其他方法?
请提出建议。
在我的旧项目中,我总是每三 (3) 秒 运行 一个脚本。它提交最新消息的最后一个 ID,脚本检查是否有比当前会话的最新消息 ID 更高的 ID,如果有,它将加载这些消息。
一个简化的例子是:
<div id="message-div">
<div id="49" class="mes">User 1: What's up?</div>
<div id="50" class="mes">User 2: Okay. How about you?</div>
<div id="51" class="mes">User 1: Pretty fine.</div>
</div>
我的脚本将每三 (3) 秒 运行,并使用 Ajax 提交最新的 ID(上面的示例是 51) .它会检查是否有大于 51 的 ID 然后 append()
到 #message-div
.
只需确保在附加新消息时包含该消息的 ID。
var new-message = '<div id="52" class="mes">User 2: That is good to hear.</div>'; /* THIS COMES FROM AN AJAX REQUEST */
$("#message-div").append(new-message);
我没有使用 status
列或其他任何东西。我为 read
功能所做的是有一个额外的 table 用于存储用户阅读消息时的日期和时间。
read_id | message_id | user_id | read_date
---------+------------+---------+---------------------
1 | 51 | 2 | 2016-06-03 14:29:30 /* USER 2 READ MESSAGE 51 IN JUNE 3, 2016 AT 2:26 PM */
2 | 52 | 1 | 2016-06-03 14:30:10