diff --git a/broker/config/wildfirechat.conf b/broker/config/wildfirechat.conf index f35fd231..0f90426d 100755 --- a/broker/config/wildfirechat.conf +++ b/broker/config/wildfirechat.conf @@ -111,7 +111,7 @@ message.disable_remote_search false ##如果要避免数据库中明文存储消息内容,请打开这个开关和message.disable_remote_search开关 message.encrypt_message_content false -##允许客户端撤回用户自己发送的消息时限,单位是秒。 +##允许客户端撤回用户自己发送的消息时限,单位是秒。0是不允许撤回;-1是无限制撤回。 ##Server API不受此限制,可以撤回任意时限内的消息 ##群组管理员或群主撤回群成员消息不受此限制,可以撤回任意时限内的消息。但管理员或群主撤回自己的消息还是需要准守此时间限制。 ##修改此参数需要同步修改客户端UI,客户端UI代码有判断撤回是否显示的逻辑。 diff --git a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java index ca99fef7..80a52b8b 100755 --- a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java @@ -2480,7 +2480,7 @@ public class MemoryMessagesStore implements IMessagesStore { } boolean isExpired = false; if (!canRecall && message.getFromUser().equals(operatorId)) { - if (mRecallTimeLimit > 0 && now - message.getServerTimestamp() > mRecallTimeLimit * 1000) { + if (mRecallTimeLimit >= 0 && now - message.getServerTimestamp() > mRecallTimeLimit * 1000) { isExpired = true; } else { canRecall = true; diff --git a/distribution/src/main/resources/wildfirechat.conf b/distribution/src/main/resources/wildfirechat.conf index 7d325f5a..4f0d06e4 100755 --- a/distribution/src/main/resources/wildfirechat.conf +++ b/distribution/src/main/resources/wildfirechat.conf @@ -106,7 +106,7 @@ message.disable_remote_search false ##如果要避免数据库中明文存储消息内容,请打开这个开关和message.disable_remote_search开关 message.encrypt_message_content false -##允许客户端撤回用户自己发送的消息时限,单位是秒。 +##允许客户端撤回用户自己发送的消息时限,单位是秒。0是不允许撤回;-1是无限制撤回。 ##Server API不受此限制,可以撤回任意时限内的消息 ##群组管理员或群主撤回群成员消息不受此限制,可以撤回任意时限内的消息。但管理员或群主撤回自己的消息还是需要准守此时间限制。 ##修改此参数需要同步修改客户端UI,客户端UI代码有判断撤回是否显示的逻辑。