public void sendMessage(AVIMMessage message, int requestId, AVIMMessageOption messageOption) { if (!checkSessionStatus(AVIMOperation.CONVERSATION_SEND_MESSAGE, requestId)) { return; } byte[] binaryMessage = null; if (message instanceof AVIMBinaryMessage) { binaryMessage = ((AVIMBinaryMessage) message).getBytes(); } session.storeMessage((PendingMessageCache.Message.getMessage(message.getContent(), String.valueOf(requestId), messageOption.isReceipt(), conversationId)), requestId); AVConnectionManager.getInstance().sendPacket(ConversationDirectMessagePacket.getConversationMessagePacket( session.getSelfPeerId(), conversationId, message.getContent(), binaryMessage, message.isMentionAll(), message.getMentionList(), AVIMMessageManagerHelper.getMessageToken(message), messageOption, requestId)); }