差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
后一修订版 两侧同时换到之后的修订记录
im:ios:basics:message [2020/05/26 02:39]
zhaoliang
im:ios:basics:message [2020/07/27 04:42]
huanxinfudh [获取单个会话未读消息数]
行 76: 行 76:
 //​message.chatType = EMChatTypeChatRoom;//​ 设置为聊天室消息 //​message.chatType = EMChatTypeChatRoom;//​ 设置为聊天室消息
 </​code>​ </​code>​
 +
 +==== 构造表情消息 ====
 +
 +发表情消息实质上是发文本消息。接收方收到文本消息后,首先查询文本消息是否是表情消息,如果是,则显示该文本消息为对应的表情图片。可以使用[[https://​unicode.org/​emoji/​charts/​full-emoji-list.html |emoji标准]]来做表情图片和对应的文本字符串的映射。也可以自行维护表情图片和文本字符串的映射。
 +
 +<code objc>
 +/*!
 + ​* ​ 初始化表情消息体
 + *
 + ​* ​ @param aText   ​表情消息文本串
 + ​*  ​
 + ​* ​ @result 表情消息体实例
 + */
 +- (instancetype)initWithText:​(NSString *)aText;
 +
 +// 调用:
 +EMTextMessageBody *body = [[EMTextMessageBody alloc] initWithText:​@"​要发送的表情消息文本串"​];​
 +// 获取当前登录的环信id
 +NSString *from = [[EMClient sharedClient] currentUsername];​
 +
 +//​生成Message
 +EMMessage *message = [[EMMessage alloc] initWithConversationID:​@"​6001"​ from:from to:​@"​6001"​ body:body ext:nil];
 +message.chatType = EMChatTypeChat;//​ 设置为单聊消息
 +//​message.chatType = EMChatTypeGroupChat;//​ 设置为群聊消息
 +//​message.chatType = EMChatTypeChatRoom;//​ 设置为聊天室消息
 +</​code>​
 +
  
 ==== 构造图片消息 ==== ==== 构造图片消息 ====
行 455: 行 482:
 ==== 获取单个会话未读消息数 ==== ==== 获取单个会话未读消息数 ====
 <code objc> <code objc>
 +/*!
 + ​* ​ \~chinese
 + ​* ​ 获取一个会话
 + *
 + ​* ​ @param aConversationId ​ 会话ID
 + ​* ​ @param aType            会话类型
 + ​* ​ @param aIfCreate ​       如果不存在是否创建
 + *
 + ​* ​ @result 会话对象
 + */
 +- (EMConversation *)getConversation:​(NSString *)aConversationId
 +                               ​type:​(EMConversationType)aType
 +                   ​createIfNotExist:​(BOOL)aIfCreate;​
 +                   
 EMConversation *conversation = [[EMClient sharedClient].chatManager getConversation:​@"​8001"​ type:​EMConversationTypeChat createIfNotExist:​YES];​ EMConversation *conversation = [[EMClient sharedClient].chatManager getConversation:​@"​8001"​ type:​EMConversationTypeChat createIfNotExist:​YES];​
 [conversation unreadMessagesCount];​ [conversation unreadMessagesCount];​