private void cacheSentMessage(@NotNull Message message) {
        sentMessageCache.put(message.getId(),
                new Message(
                        message.getId(),
                        null,
                        message.getIsGroupMessage(),
                        message.getIsSystemMessage(),
                        message.getDeliveryDate(),
                        null,
                        null,
                        null,
                        null,
                        message.getSenderId(),
                        null,
                        null,
                        message.getTargetId(),
                        null,
                        null,
                        null,
                        null,
                        null));
    }
@param senderDeviceType can be null when it is a system message
turms-service/src/main/java/im/turms/service/domain/message/service/MessageService.java