-
设置发送消息监听器
IMCenter.getInstance().setMessageInterceptor()
-
可以参考下面代码:
private void initInterceptor() { IMCenter.getInstance().setMessageInterceptor( new MessageInterceptor() { @Override public boolean interceptReceivedMessage( Message message, int left, boolean hasPackage, boolean offline) { return false; } @Override public boolean interceptOnSendMessage(Message message) { MessageContent messageContent = message.getContent(); String language = mContext.getResources().getConfiguration().locale.getLanguage(); if (language.endsWith("en")) { // 手机系统语言为英文 if (messageContent instanceof VoiceMessage) { MessagePushConfig messagePushConfig = message.getMessagePushConfig(); if (messagePushConfig == null){ messagePushConfig = new MessagePushConfig(); message.setMessagePushConfig(messagePushConfig); } messagePushConfig.setPushContent("\[voice\]");// 语音消息时推送显示为 "\[voice\]" } } return false; } @Override public boolean interceptOnSentMessage(Message message) { if (message != null) { message.setMessageConfig(null); } return false; } @Override public boolean interceptOnInsertOutgoingMessage( Conversation.ConversationType type, String targetId, Message.SentStatus sentStatus, MessageContent content, long time) { return false; } @Override public boolean interceptOnInsertIncomingMessage( Conversation.ConversationType type, String targetId, String senderId, Message.ReceivedStatus receivedStatus, MessageContent content, long time) { return false; } }); }