diff --git a/docs/document/android/multi_device.md b/docs/document/android/multi_device.md index b557fda16..eaa515e63 100644 --- a/docs/document/android/multi_device.md +++ b/docs/document/android/multi_device.md @@ -73,9 +73,9 @@ Android SDK 初始化时会生成登录 ID 用于在多设备登录和消息推 ```java // 同步方法,会阻塞当前线程。异步方法为 asyncGetSelfIdsOnOtherPlatform(EMValueCallBack)。 List ids = EMClient.getInstance().contactManager().getSelfIdsOnOtherPlatform(); -// 选择一个登录 ID 作为消息发送方。 +// 选择一个登录 ID 作为消息接收方。 String toChatUsername = ids.get(0); -// 创建一条文本消息,content 为消息文字内容,toChatUsername 传入登录 ID 作为消息发送方。 +// 创建一条文本消息,content 为消息文字内容,toChatUsername 传入登录 ID 作为消息接收方。 EMMessage message = EMMessage.createTxtSendMessage(content, toChatUsername); // 发送消息。 EMClient.getInstance().chatManager().sendMessage(message); diff --git a/docs/document/ios/multi_device.md b/docs/document/ios/multi_device.md index ff53a76b2..891ac0fac 100644 --- a/docs/document/ios/multi_device.md +++ b/docs/document/ios/multi_device.md @@ -72,11 +72,11 @@ iOS SDK 初始化时会生成登录 ID 用于在多设备登录和消息推送 ```objectivec [EMClient.sharedClient.contactManager getSelfIdsOnOtherPlatformWithCompletion:^(NSArray * _Nullable aList, EMError * _Nullable aError) { - // 选择一个登录 ID 作为消息发送方。 + // 选择一个登录 ID 作为消息接收方。 NSString *to = aList.firstObject; if (to.length > 0) { EMTextMessageBody *body = [[EMTextMessageBody alloc] initWithText:@"Hello World"]; - // 创建一条文本消息,content 为消息文字内容,to 传入登录 ID 作为消息发送方。 + // 创建一条文本消息,content 为消息文字内容,to 传入登录 ID 作为消息接收方。 EMChatMessage *message = [[EMChatMessage alloc] initWithConversationID:to body:body ext:nil]; // 发送消息。 [EMClient.sharedClient.chatManager sendMessage:message progress:nil completion:^(EMChatMessage * _Nullable message, EMError * _Nullable error) { diff --git a/docs/document/server-side/java_server_sdk.md b/docs/document/server-side/java_server_sdk.md index bc43f5c53..061b64a84 100644 --- a/docs/document/server-side/java_server_sdk.md +++ b/docs/document/server-side/java_server_sdk.md @@ -24,14 +24,14 @@ Server SDK 提供了用户、消息、群组、聊天室等资源的操作管理 com.easemob.im im-sdk-core - 0.7.9 + 0.8.1 ``` 如果你的项目使用 Gradle 构建,可以在 build.gradle 中添加下面代码: ```gradle -implementation 'com.easemob.im:im-sdk-core:0.7.9' +implementation 'com.easemob.im:im-sdk-core:0.8.1' ``` ### 使用 @@ -235,6 +235,21 @@ EMProperties properties = EMProperties.builder() ## 更新日志 +### V0.8.1 2024-01-2 + +1. 增加创建大型群组功能。 +2. 删除向大型和小型聊天室发送消息的功能。 +3. 批量 添加群组成员 & 移除群组成员 去掉用户列表数量检查。 +4. 修改获取 用户 Token 功能的注释说明。 +以上更新内容请到 GroupApi & MessageApi & TokenApi 中查看。 + +### V0.8.0 2023-12-21 + +1. 增加 向聊天室发送定向消息 功能。 + +以上更新内容请到 MessageApi 中查看。 + + ### V0.7.9 2023-11-28 增加查看指定用户是否已加入群组的功能。 diff --git a/docs/document/unity/multi_device.md b/docs/document/unity/multi_device.md index 69dac1038..b1d54a427 100644 --- a/docs/document/unity/multi_device.md +++ b/docs/document/unity/multi_device.md @@ -74,10 +74,10 @@ SDKClient.Instance.ContactManager.GetSelfIdsOnOtherPlatform(new ValueCallBack>( onSuccess: (list) => { - // 选择一个登录 ID 作为消息发送方。 + // 选择一个登录 ID 作为消息接收方。 string toChatUsername = list[0]; string content = "content"; - // 创建一条文本消息,content 为消息文字内容,toChatUsername 传入登录 ID 作为消息发送方。 + // 创建一条文本消息,content 为消息文字内容,toChatUsername 传入登录 ID 作为消息接收方。 Message msg = Message.CreateTextSendMessage(toChatUsername, content); // 发送消息。 SDKClient.Instance.ChatManager.SendMessage(ref msg, new CallBack( diff --git a/docs/document/web/message_send_receive.md b/docs/document/web/message_send_receive.md index 03a19d2e7..3e8319ba0 100644 --- a/docs/document/web/message_send_receive.md +++ b/docs/document/web/message_send_receive.md @@ -212,7 +212,7 @@ conn.addEventHandler('MESSAGES',{ 接收方可以自行下载语音、图片、图片缩略图、视频和文件。 -#### 发送语音消息 +#### 发送和接收语音消息 发送语音消息前,你应该在 app 级别实现录音,提供录制的语音文件的 URI 和时长。 @@ -270,7 +270,21 @@ function sendPrivateAudio() { } ``` -#### 发送图片消息 +接收方收到 `onAudioMessage` 回调,根据消息 `url` 字段获取语音文件的服务器地址,从而获取语音文件。 + +```javascript +// 使用 `addEventHandler` 监听回调事件 +conn.addEventHandler("eventName", { + // 当前用户收到语音消息。 + onAudioMessage: function (message) { + // 语音文件在服务器的地址。 + console.log(message.url); + }, +}); + +``` + +#### 发送和接收图片消息 对于图片消息,服务器会根据用户设置的 `thumbnailHeight` 和 `thumbnailWidth` 参数自动生成图片的缩略图。若这两个参数未传,则图片的高度和宽度均默认为 170 像素。你也可以在 [环信即时通讯控制台](https://console.easemob.com/user/login)的 `服务概览` 页面的 `设置` 区域修改该默认值。 @@ -332,6 +346,22 @@ function sendPrivateImg() { } ``` +接收方收到 `onImageMessage` 回调,根据消息 `url` 字段获取图片文件的服务器地址,从而获取图片文件。 + +```javascript +// 使用 `addEventHandler` 监听回调事件 +conn.addEventHandler("eventName", { + // 当前用户收到图片消息。 + onImageMessage: function (message) { + // 图片文件在服务器的地址。 + console.log(message.url); + // 图片缩略图文件在服务器的地址。 + console.log(message.thumb); + }, +}); + +``` + #### 发送 URL 图片消息 你也可以将图片上传到自己的服务器,而不是环信服务器,然后调用 `sendPrivateUrlImg` 方法传入图片的 URL 发送图片消息。 @@ -356,7 +386,7 @@ function sendPrivateUrlImg() { } ``` -#### 发送视频消息 +#### 发送和接收视频消息 在发送视频消息之前,应在 app 级别实现视频捕获,获得捕获的视频文件的时长,单位为秒。 @@ -414,7 +444,23 @@ function sendPrivateVideo() { } ``` -#### 发送文件消息 +接收方收到 `onVideoMessage` 回调,根据消息 `url` 字段获取视频文件的服务器地址,从而获取视频文件。 + +```javascript +// 使用 `addEventHandler` 监听回调事件 +conn.addEventHandler("eventName", { + // 当前用户收到视频消息。 + onVideoMessage: function (message) { + // 视频文件在服务器的地址。 + console.log(message.url); + // 视频首帧缩略图文件在服务器的地址。 + console.log(message.thumb); + }, +}); + +``` + +#### 发送和接收文件消息 参考以下代码示例创建、发送和接收文件消息: @@ -473,6 +519,20 @@ function sendPrivateFile() { } ``` +接收方收到 `onFileMessage` 回调,根据消息 `url` 字段获取文件的服务器地址,从而获取文件。 + +```javascript +// 使用 `addEventHandler` 监听回调事件 +conn.addEventHandler("eventName", { + // 当前用户收到文件消息。 + onFileMessage: function (message) { + // 文件在服务器的地址。 + console.log(message.url); + }, +}); + +``` + ### 发送位置消息 当你需要发送位置时,需要集成第三方的地图服务,获取到位置点的经纬度信息。接收方接收到位置消息时,需要将该位置的经纬度,借由第三方的地图服务,将位置在地图上显示出来。 diff --git a/docs/document/windows/multi_device.md b/docs/document/windows/multi_device.md index a21209e6e..22e9f5ec7 100644 --- a/docs/document/windows/multi_device.md +++ b/docs/document/windows/multi_device.md @@ -74,10 +74,10 @@ SDKClient.Instance.ContactManager.GetSelfIdsOnOtherPlatform(new ValueCallBack>( onSuccess: (list) => { - // 选择一个登录 ID 作为消息发送方。 + // 选择一个登录 ID 作为消息接收方。 string toChatUsername = list[0]; string content = "content"; - // 创建一条文本消息,content 为消息文字内容,toChatUsername 传入登录 ID 作为消息发送方。 + // 创建一条文本消息,content 为消息文字内容,toChatUsername 传入登录 ID 作为消息接收方。 Message msg = Message.CreateTextSendMessage(toChatUsername, content); // 发送消息。 SDKClient.Instance.ChatManager.SendMessage(ref msg, new CallBack(