diff --git a/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEntity.java b/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEntity.java index 212c1101b8..bdd15b3e70 100644 --- a/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEntity.java +++ b/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEntity.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-01-29 16:21:24 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2025-03-17 12:57:03 + * @LastEditTime: 2025-03-17 14:11:17 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -95,6 +95,28 @@ public class ThreadEntity extends AbstractThreadEntity { return getState().equals(ThreadStateEnum.TRANSFER_CANCELED.name()); } + // is invite pending + public Boolean isInvitePending() { + return getState().equals(ThreadStateEnum.INVITE_PENDING.name()); + } + + // is invite accepted + public Boolean isInviteAccepted() { + return getState().equals(ThreadStateEnum.INVITE_ACCEPTED.name()); + } + + public Boolean isInviteRejected() { + return getState().equals(ThreadStateEnum.INVITE_REJECTED.name()); + } + + public Boolean isInviteTimeout() { + return getState().equals(ThreadStateEnum.INVITE_TIMEOUT.name()); + } + + public Boolean isInviteCanceled() { + return getState().equals(ThreadStateEnum.INVITE_CANCELED.name()); + } + public Boolean isOffline() { return getState().equals(ThreadStateEnum.OFFLINE.name()); } diff --git a/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEventListener.java b/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEventListener.java index 590e919da6..c7c78fb931 100644 --- a/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEventListener.java +++ b/modules/core/src/main/java/com/bytedesk/core/thread/ThreadEventListener.java @@ -91,7 +91,13 @@ public class ThreadEventListener { ThreadEntity thread = event.getThread(); UserEntity user = thread.getOwner(); log.info("thread onThreadUpdateEvent: {}", thread.getUid()); - if (thread.isClosed()) { + if (thread.isClosed() + || thread.isTransferPending() + || thread.isTransferAccepted() + || thread.isTransferRejected() + || thread.isTransferCanceled() + || thread.isTransferTimeout() + ) { return; }