本文整理汇总了Java中com.easemob.chat.EMMessage.ChatType.ChatRoom方法的典型用法代码示例。如果您正苦于以下问题:Java ChatType.ChatRoom方法的具体用法?Java ChatType.ChatRoom怎么用?Java ChatType.ChatRoom使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.easemob.chat.EMMessage.ChatType
的用法示例。
在下文中一共展示了ChatType.ChatRoom方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: forwardMessage
import com.easemob.chat.EMMessage.ChatType; //导入方法依赖的package包/类
/**
* 转发消息
*
* @param forward_msg_id
*/
protected void forwardMessage(String forward_msg_id) {
final EMMessage forward_msg = EMChatManager.getInstance().getMessage(forward_msg_id);
EMMessage.Type type = forward_msg.getType();
switch (type) {
case TXT:
// 获取消息内容,发送消息
String content = ((TextMessageBody) forward_msg.getBody()).getMessage();
sendText(content);
break;
case IMAGE:
// 发送图片
String filePath = ((ImageMessageBody) forward_msg.getBody()).getLocalUrl();
if (filePath != null) {
File file = new File(filePath);
if (!file.exists()) {
// 不存在大图发送缩略图
filePath = ImageUtils.getThumbnailImagePath(filePath);
}
sendPicture(filePath);
}
break;
default:
break;
}
if(forward_msg.getChatType() == ChatType.ChatRoom){
EMChatManager.getInstance().leaveChatRoom(forward_msg.getTo());
}
}
示例2: onEvent
import com.easemob.chat.EMMessage.ChatType; //导入方法依赖的package包/类
/**
* 事件监听,registerEventListener后的回调事件
*
* see {@link EMNotifierEvent}
*/
@Override
public void onEvent(EMNotifierEvent event) {
switch (event.getEvent()) {
case EventNewMessage:
// 获取到message
EMMessage message = (EMMessage) event.getData();
String username = null;
// 群组消息
if (message.getChatType() == ChatType.GroupChat || message.getChatType() == ChatType.ChatRoom) {
username = message.getTo();
} else {
// 单聊消息
username = message.getFrom();
}
// 如果是当前会话的消息,刷新聊天页面
if (username.equals(toChatUsername)) {
messageList.refreshSelectLast();
// 声音和震动提示有新消息
EaseUI.getInstance().getNotifier().viberateAndPlayTone(message);
} else {
// 如果消息不是和当前聊天ID的消息
EaseUI.getInstance().getNotifier().onNewMsg(message);
}
break;
case EventDeliveryAck:
case EventReadAck:
// 获取到message
messageList.refresh();
break;
case EventOfflineMessage:
// a list of offline messages
// List<EMMessage> offlineMessages = (List<EMMessage>)
// event.getData();
messageList.refresh();
break;
default:
break;
}
}
示例3: onEvent
import com.easemob.chat.EMMessage.ChatType; //导入方法依赖的package包/类
/**
* 事件监听,registerEventListener后的回调事件
*
* see {@link EMNotifierEvent}
*/
@Override
public void onEvent(EMNotifierEvent event) {
switch (event.getEvent()) {
case EventNewMessage:
// 获取到message
EMMessage message = (EMMessage) event.getData();
String username = null;
// 群组消息
if (message.getChatType() == ChatType.GroupChat || message.getChatType() == ChatType.ChatRoom) {
username = message.getTo();
} else {
// 单聊消息
username = message.getFrom();
}
// 如果是当前会话的消息,刷新聊天页面
if (username.equals(toChatUsername)) {
messageList.refreshSelectLast();
// 声音和震动提示有新消息
EaseUI.getInstance().getNotifier().viberateAndPlayTone(message);
} else {
// 如果消息不是和当前聊天ID的消息
EaseUI.getInstance().getNotifier().onNewMsg(message);
}
break;
case EventDeliveryAck:
case EventReadAck:
// 获取到message
EMMessage ackMessage = (EMMessage) event.getData();
// 判断接收到ack的这条消息是不是阅后即焚的消息,如果是,则说明对方看过消息了,对方会销毁,这边也删除(现在只有txt iamge file三种消息支持 )
if(ackMessage.getBooleanAttribute(EaseConstant.EASE_ATTR_READFIRE, false)
&& (ackMessage.getType() == Type.TXT || ackMessage.getType() == Type.VOICE || ackMessage.getType() == Type.IMAGE)){
conversation.removeMessage(ackMessage.getMsgId());
}
messageList.refresh();
break;
case EventOfflineMessage:
// a list of offline messages
// List<EMMessage> offlineMessages = (List<EMMessage>)
// event.getData();
messageList.refresh();
break;
case EventNewCMDMessage:
EMMessage cmdMessage = (EMMessage) event.getData();
//获取消息body
CmdMessageBody cmdMsgBody = (CmdMessageBody) cmdMessage.getBody();
final String action = cmdMsgBody.action;//获取自定义action
if(action.equals(EaseConstant.EASE_ATTR_REVOKE)){
EaseCommonUtils.receiveRevokeMessage(getActivity(), cmdMessage);
messageList.refresh();
}
break;
default:
break;
}
}
示例4: onEvent
import com.easemob.chat.EMMessage.ChatType; //导入方法依赖的package包/类
/**
* 事件监听,registerEventListener后的回调事件
* <p/>
* see {@link EMNotifierEvent}
*/
@Override
public void onEvent(EMNotifierEvent event) {
switch (event.getEvent()) {
case EventNewMessage:
// 获取到message
EMMessage message = (EMMessage) event.getData();
String username = null;
// 群组消息
if (message.getChatType() == ChatType.GroupChat || message.getChatType() == ChatType.ChatRoom) {
username = message.getTo();
} else {
// 单聊消息
username = message.getFrom();
}
// 如果是当前会话的消息,刷新聊天页面
if (username.equals(toChatUsername)) {
messageList.refreshSelectLast();
// 声音和震动提示有新消息
EaseUI.getInstance().getNotifier().viberateAndPlayTone(message);
} else {
// 如果消息不是和当前聊天ID的消息
EaseUI.getInstance().getNotifier().onNewMsg(message);
}
break;
case EventDeliveryAck:
case EventReadAck:
// 获取到message
messageList.refresh();
break;
case EventOfflineMessage:
// a list of offline messages
// List<EMMessage> offlineMessages = (List<EMMessage>)
// event.getData();
messageList.refresh();
break;
default:
break;
}
}