Skip to content

Commit f07192b

Browse files
author
haoxiuwen
committed
modify
1 parent d5b9299 commit f07192b

File tree

7 files changed

+202
-160
lines changed

7 files changed

+202
-160
lines changed

docs/.vuepress/sidebar/document.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -343,6 +343,7 @@ const documentSidebar = [
343343
{ text: '撤回消息和单向删除会话', link: 'message_recall.html' },
344344
{ text: '单向删除漫游消息', link: 'message_delete.html' },
345345
{ text: '修改文本或自定义消息', link: 'message_modify_text_custom.html' },
346+
{ text: '获取离线消息数据', link: 'message_offline.html' },
346347
{ text: '导入消息', link: 'message_import.html' }
347348
]
348349
},

docs/document/server-side/account_system.md

Lines changed: 0 additions & 155 deletions
Original file line numberDiff line numberDiff line change
@@ -1796,161 +1796,6 @@ curl -L -X GET 'https://XXXX/XXXX/XXXX/mutes?pageNum=1&pageSize=10' \
17961796

17971797
关于其他错误,你可以参考 [错误码](#错误码) 了解可能的原因。
17981798

1799-
## 获取用户离线消息数据
1800-
1801-
### 获取用户离线消息数量
1802-
1803-
获取环信 IM 用户的离线消息数量。
1804-
1805-
#### HTTP 请求
1806-
1807-
```http
1808-
GET https://{host}/{org_name}/{app_name}/users/{owner_username}/offline_msg_count
1809-
```
1810-
1811-
##### 路径参数
1812-
1813-
| 参数 | 类型 | 是否必需 | 描述 |
1814-
| :--------------- | :----- | :------- | :---------------------------- |
1815-
| `owner_username` | String || 要获取离线消息数量的用户 ID。 |
1816-
1817-
其他参数及说明详见 [公共参数](#公共参数)
1818-
1819-
##### 请求 header
1820-
1821-
| 参数 | 类型 | 是否必需 | 描述 |
1822-
| :-------------- | :----- | :------- | :-------------------------- |
1823-
| `Accept` | String || 内容类型。请填 `application/json`|
1824-
| `Authorization` | String || App 管理员的鉴权 token,格式为 `Bearer YourAppToken`,其中 `Bearer` 为固定字符,后面为英文空格和获取到的 app token。 |
1825-
1826-
#### HTTP 响应
1827-
1828-
##### 响应 body
1829-
1830-
如果返回的 HTTP 状态码为 `200`,表示请求成功,响应包体中包含以下字段:
1831-
1832-
| 字段 | 类型 | 描述 |
1833-
| :----- | :--- | :------------------------------------------------------------------------------------ |
1834-
| `data` | JSON | 用户的离线消息数量。数据格式为:"用户 ID": "当前离线消息的数量",例如,"user1": "0"。 |
1835-
1836-
其他字段及说明详见 [公共参数](#公共参数)
1837-
1838-
如果返回的 HTTP 状态码非 `200`,表示请求失败。你可以参考 [错误码](#错误码) 了解可能的原因。
1839-
1840-
#### 示例
1841-
1842-
##### 请求示例
1843-
1844-
```shell
1845-
# 将 <YourAppToken> 替换为你在服务端生成的 App Token
1846-
1847-
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'https://XXXX/XXXX/XXXX/users/user1/offline_msg_count'
1848-
```
1849-
1850-
##### 响应示例
1851-
1852-
```json
1853-
{
1854-
"action": "get",
1855-
"uri": "https://XXXX/XXXX/XXXX/users/user1/offline_msg_count",
1856-
"entities": [],
1857-
"data": {
1858-
"user1": 0
1859-
},
1860-
"timestamp": 1542601518137,
1861-
"duration": 3,
1862-
"count": 0
1863-
}
1864-
```
1865-
1866-
#### 错误码
1867-
1868-
如果返回的 HTTP 状态码非 `200`,表示请求失败,可能提示以下错误码:
1869-
1870-
| HTTP 状态码 | 错误类型 | 错误提示 | 可能原因 | 处理建议 |
1871-
| :------ | :--------- | :----------- | :--------- | :--------- |
1872-
| 401 | unauthorized | Unable to authenticate (OAuth) | token 不合法,可能过期或 token 错误。 | 使用新的 token 访问。 |
1873-
| 404 | organization_application_not_found | Could not find application for XXX/XXX from URI: XXX/XXX/users | App key 不存在。 | 检查 `orgName``appName` 是否正确或[创建应用](/product/enable_and_configure_IM.html#创建应用)|
1874-
1875-
关于其他错误,你可以参考 [错误码](#错误码) 了解可能的原因。
1876-
1877-
### 获取指定离线消息的投递状态
1878-
1879-
获取用户的指定离线消息的投递状态,即查看该消息是否已投递。
1880-
1881-
#### HTTP 请求
1882-
1883-
```http
1884-
GET https://{host}/{org_name}/{app_name}/users/{username}/offline_msg_status/{msg_id}
1885-
```
1886-
1887-
##### 路径参数
1888-
1889-
| 参数 | 类型 | 是否必需 | 描述 |
1890-
| :--------- | :----- | :------- | :---------------------------- |
1891-
| `username` | String || 要获取离线消息状态的用户 ID。 |
1892-
| `msg_id` | String || 要查看状态的离线消息 ID。 |
1893-
1894-
其他参数及说明详见 [公共参数](#公共参数)
1895-
1896-
##### 请求 header
1897-
1898-
| 参数 | 类型 | 是否必需 | 描述 |
1899-
| :-------------- | :----- | :------- | :-------------------- |
1900-
| `Accept` | String || 内容类型。请填 `application/json`|
1901-
| `Authorization` | String || App 管理员的鉴权 token,格式为 `Bearer YourAppToken`,其中 `Bearer` 为固定字符,后面为英文空格和获取到的 app token。 |
1902-
1903-
#### HTTP 响应
1904-
1905-
##### 响应 body
1906-
1907-
如果返回的 HTTP 状态码为 `200`,表示请求成功,响应包体中的字段如下:
1908-
1909-
| 字段 | 类型 | 描述 |
1910-
| :----- | :--- | :--------------- |
1911-
| `data` | JSON | 指定离线消息的投递状态。数据格式为 "消息 ID": "投递状态"。消息的投递状态有两种:<br/> - `delivered`:已投递;<br/> - `undelivered`:未投递。 |
1912-
1913-
其他字段及说明详见 [公共参数](#公共参数)
1914-
1915-
如果返回的 HTTP 状态码非 `200`,表示请求失败。你可以参考 [错误码](#错误码) 了解可能的原因。
1916-
1917-
#### 示例
1918-
1919-
##### 请求示例
1920-
1921-
```shell
1922-
# 将 <YourAppToken> 替换为你在服务端生成的 App Token
1923-
1924-
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'https://XXXX/XXXX/XXXX/users/user1/offline_msg_status/123'
1925-
```
1926-
1927-
##### 响应示例
1928-
1929-
```json
1930-
{
1931-
"action": "get",
1932-
"uri": "https://XXXX/XXXX/XXXX/users/user1/offline_msg_status/123",
1933-
"entities": [],
1934-
"data": {
1935-
"123": "delivered"
1936-
},
1937-
"timestamp": 1542601830084,
1938-
"duration": 5,
1939-
"count": 0
1940-
}
1941-
```
1942-
1943-
#### 错误码
1944-
1945-
如果返回的 HTTP 状态码非 `200`,表示请求失败,可能提示以下错误码:
1946-
1947-
| HTTP 状态码 | 错误类型 | 错误提示 | 可能原因 | 处理建议 |
1948-
| :---------- | :------------ | :-------------- | :------------------| :----------- |
1949-
| 401 | unauthorized | Unable to authenticate (OAuth) | token 不合法,可能过期或 token 错误。 | 使用新的 token 访问。 |
1950-
| 404 | organization_application_not_found | Could not find application for XXX/XXX from URI: XXX/XXX/users | App key 不存在。 | 检查 `orgName``appName` 是否正确或[创建应用](/product/enable_and_configure_IM.html#创建应用)|
1951-
1952-
关于其他错误,你可以参考 [错误码](#错误码) 了解可能的原因。
1953-
19541799

19551800

19561801

Lines changed: 196 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
# 获取用户离线消息数据
2+
3+
你可以获取单个用户的离线消息数量,以及查看该用户单个离线消息的投递状态。
4+
5+
## 公共参数
6+
7+
以下表格列举了环信 IM 的 RESTful 接口的公共请求参数和响应参数:
8+
9+
### 请求参数
10+
11+
| 参数 | 类型 | 是否必需 | 描述 |
12+
| :--------- | :----- | :------- | :------------------------- |
13+
| `host` | String || 环信即时通讯 IM 分配的用于访问 RESTful API 的域名。详见 [获取环信即时通讯 IM 的信息](enable_and_configure_IM.html#获取环信即时通讯-im-的信息)|
14+
| `org_name` | String || 环信即时通讯 IM 为每个公司(组织)分配的唯一标识。详见 [获取环信即时通讯 IM 的信息](enable_and_configure_IM.html#获取环信即时通讯-im-的信息)|
15+
| `app_name` | String || 你在环信即时通讯云控制台创建应用时填入的应用名称。详见 [获取环信即时通讯 IM 的信息](enable_and_configure_IM.html#获取环信即时通讯-im-的信息)|
16+
17+
### 响应参数
18+
19+
| 参数 | 类型 | 描述 |
20+
| :------------------- | :----- | :-------------------------------------------- |
21+
| `action` | String | 请求方法。 |
22+
| `uri` | String | 请求 URL。 |
23+
| `path` | String | 请求路径,属于请求 URL 的一部分,开发者无需关注。 |
24+
| `entities` | JSON Array | 响应实体。 |
25+
| `data` | JSON | 实际获取的数据详情。 |
26+
| `timestamp` | Long | HTTP 响应的 Unix 时间戳,单位为毫秒。 |
27+
| `duration` | Long | 从发送 HTTP 请求到响应的时长, 单位为毫秒。 |
28+
29+
## 前提条件
30+
31+
要调用环信即时通讯 RESTful API,请确保满足以下要求:
32+
33+
- 已在环信即时通讯云控制台 [开通配置环信即时通讯 IM 服务](enable_and_configure_IM.html)
34+
- 已从服务端获取 app token,详见 [使用 App Token 鉴权](easemob_app_token.html)
35+
- 了解环信 IM API 的调用频率限制,详见 [接口频率限制](limitationapi.html)
36+
37+
## 认证方式
38+
39+
环信即时通讯 REST API 要求 Bearer HTTP 认证。每次发送 HTTP 请求时,都必须在请求头部填入如下 `Authorization` 字段:
40+
41+
`Authorization: Bearer YourAppToken`
42+
43+
为提高项目的安全性,环信使用 Token(动态密钥)对即将登录即时通讯系统的用户进行鉴权。本文介绍的即时通讯所有 REST API 均需使用 App Token 的鉴权方式,详见 [使用 App Token 鉴权](easemob_app_token.html)
44+
45+
## 获取用户离线消息数量
46+
47+
获取环信 IM 用户的离线消息数量。
48+
49+
#### HTTP 请求
50+
51+
```http
52+
GET https://{host}/{org_name}/{app_name}/users/{owner_username}/offline_msg_count
53+
```
54+
55+
##### 路径参数
56+
57+
| 参数 | 类型 | 是否必需 | 描述 |
58+
| :--------------- | :----- | :------- | :---------------------------- |
59+
| `owner_username` | String || 要获取离线消息数量的用户 ID。 |
60+
61+
其他参数及说明详见 [公共参数](#公共参数)
62+
63+
##### 请求 header
64+
65+
| 参数 | 类型 | 是否必需 | 描述 |
66+
| :-------------- | :----- | :------- | :-------------------------- |
67+
| `Accept` | String || 内容类型。请填 `application/json`|
68+
| `Authorization` | String || App 管理员的鉴权 token,格式为 `Bearer YourAppToken`,其中 `Bearer` 为固定字符,后面为英文空格和获取到的 app token。 |
69+
70+
#### HTTP 响应
71+
72+
##### 响应 body
73+
74+
如果返回的 HTTP 状态码为 `200`,表示请求成功,响应包体中包含以下字段:
75+
76+
| 字段 | 类型 | 描述 |
77+
| :----- | :--- | :------------------------------------------------------------------------------------ |
78+
| `data` | JSON | 用户的离线消息数量。数据格式为:"用户 ID": "当前离线消息的数量",例如,"user1": "0"。 |
79+
80+
其他字段及说明详见 [公共参数](#公共参数)
81+
82+
如果返回的 HTTP 状态码非 `200`,表示请求失败。你可以参考 [错误码](#错误码) 了解可能的原因。
83+
84+
#### 示例
85+
86+
##### 请求示例
87+
88+
```shell
89+
# 将 <YourAppToken> 替换为你在服务端生成的 App Token
90+
91+
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'https://XXXX/XXXX/XXXX/users/user1/offline_msg_count'
92+
```
93+
94+
##### 响应示例
95+
96+
```json
97+
{
98+
"action": "get",
99+
"uri": "https://XXXX/XXXX/XXXX/users/user1/offline_msg_count",
100+
"entities": [],
101+
"data": {
102+
"user1": 0
103+
},
104+
"timestamp": 1542601518137,
105+
"duration": 3,
106+
"count": 0
107+
}
108+
```
109+
110+
#### 错误码
111+
112+
如果返回的 HTTP 状态码非 `200`,表示请求失败,可能提示以下错误码:
113+
114+
| HTTP 状态码 | 错误类型 | 错误提示 | 可能原因 | 处理建议 |
115+
| :------ | :--------- | :----------- | :--------- | :--------- |
116+
| 401 | unauthorized | Unable to authenticate (OAuth) | token 不合法,可能过期或 token 错误。 | 使用新的 token 访问。 |
117+
| 404 | organization_application_not_found | Could not find application for XXX/XXX from URI: XXX/XXX/users | App key 不存在。 | 检查 `orgName``appName` 是否正确或[创建应用](/product/enable_and_configure_IM.html#创建应用)|
118+
119+
关于其他错误,你可以参考 [错误码](#错误码) 了解可能的原因。
120+
121+
### 获取指定离线消息的投递状态
122+
123+
获取用户的指定离线消息的投递状态,即查看该消息是否已投递。
124+
125+
#### HTTP 请求
126+
127+
```http
128+
GET https://{host}/{org_name}/{app_name}/users/{username}/offline_msg_status/{msg_id}
129+
```
130+
131+
##### 路径参数
132+
133+
| 参数 | 类型 | 是否必需 | 描述 |
134+
| :--------- | :----- | :------- | :---------------------------- |
135+
| `username` | String || 要获取离线消息状态的用户 ID。 |
136+
| `msg_id` | String || 要查看状态的离线消息 ID。 |
137+
138+
其他参数及说明详见 [公共参数](#公共参数)
139+
140+
##### 请求 header
141+
142+
| 参数 | 类型 | 是否必需 | 描述 |
143+
| :-------------- | :----- | :------- | :-------------------- |
144+
| `Accept` | String || 内容类型。请填 `application/json`|
145+
| `Authorization` | String || App 管理员的鉴权 token,格式为 `Bearer YourAppToken`,其中 `Bearer` 为固定字符,后面为英文空格和获取到的 app token。 |
146+
147+
#### HTTP 响应
148+
149+
##### 响应 body
150+
151+
如果返回的 HTTP 状态码为 `200`,表示请求成功,响应包体中的字段如下:
152+
153+
| 字段 | 类型 | 描述 |
154+
| :----- | :--- | :--------------- |
155+
| `data` | JSON | 指定离线消息的投递状态。数据格式为 "消息 ID": "投递状态"。消息的投递状态有两种:<br/> - `delivered`:已投递;<br/> - `undelivered`:未投递。 |
156+
157+
其他字段及说明详见 [公共参数](#公共参数)
158+
159+
如果返回的 HTTP 状态码非 `200`,表示请求失败。你可以参考 [错误码](#错误码) 了解可能的原因。
160+
161+
#### 示例
162+
163+
##### 请求示例
164+
165+
```shell
166+
# 将 <YourAppToken> 替换为你在服务端生成的 App Token
167+
168+
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'https://XXXX/XXXX/XXXX/users/user1/offline_msg_status/123'
169+
```
170+
171+
##### 响应示例
172+
173+
```json
174+
{
175+
"action": "get",
176+
"uri": "https://XXXX/XXXX/XXXX/users/user1/offline_msg_status/123",
177+
"entities": [],
178+
"data": {
179+
"123": "delivered"
180+
},
181+
"timestamp": 1542601830084,
182+
"duration": 5,
183+
"count": 0
184+
}
185+
```
186+
187+
#### 错误码
188+
189+
如果返回的 HTTP 状态码非 `200`,表示请求失败,可能提示以下错误码:
190+
191+
| HTTP 状态码 | 错误类型 | 错误提示 | 可能原因 | 处理建议 |
192+
| :---------- | :------------ | :-------------- | :------------------| :----------- |
193+
| 401 | unauthorized | Unable to authenticate (OAuth) | token 不合法,可能过期或 token 错误。 | 使用新的 token 访问。 |
194+
| 404 | organization_application_not_found | Could not find application for XXX/XXX from URI: XXX/XXX/users | App key 不存在。 | 检查 `orgName``appName` 是否正确或[创建应用](/product/enable_and_configure_IM.html#创建应用)|
195+
196+
关于其他错误,你可以参考 [错误码](#错误码) 了解可能的原因。

docs/uikit/chatuikit/flutter/chatuikit_advancedusage.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,9 @@ Widget build(BuildContext context) {
137137

138138
```dart
139139
ChatUIKitTimeFormatter.instance.formatterHandler = (context, type, time) {
140-
if (type == ChatUIKitTimeType.conversation) { // 会话列表使用的时间,需要根据 time 返回完整时间内容,如 ’xx月xx日 xx:xx‘
140+
if (type == ChatUIKitTimeType.conversation) { // 会话列表使用的时间,需要根据 time 返回时间,如 ’xx月xx日 xx:xx‘
141141
return '...';
142-
} else if (type == ChatUIKitTimeType.message) { // 消息使用的时间格式, 需要根据 time 返回完整时间内容,如 ’xx月xx日 xx:xx‘
142+
} else if (type == ChatUIKitTimeType.message) { // 消息使用的时间格式, 需要根据 time 返回时间,如 ’xx月xx日 xx:xx‘
143143
return '...';
144144
}
145145
return null; // 如果返回 null,则表示不做更改。

docs/uikit/chatuikit/web/chatuikit_chat.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ import { Chat, Icon, MessageInput } from 'easemob-chat-uikit';
218218
import 'easemob-chat-uikit/style.css';
219219

220220
const ChatContainer = () => {
221-
// 在消息输入框中添加图标
221+
// 自定义要添加的图标
222222
const CustomIcon = {
223223
visible: true,
224224
name: 'CUSTOM',

docs/uikit/chatuikit/web/chatuikit_conversation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -375,7 +375,7 @@ $cvs-item-time-margin-bottom: 9px;
375375
<tr>
376376
<td style=font-size:15px>onSearch</td>
377377
<td style=font-size:15px>(e: React.ChangeEvent&lt;HTMLInputElement&gt;) => boolean</td>
378-
<td style=font-size:15px> 搜索输入框的 change 事件,当函数返回 false 时,会组织默认的搜索行为,你可以使用自己的搜索条件来搜索</td>
378+
<td style=font-size:15px> 搜索输入框的 change 事件,当函数返回 false 时,会阻止默认的搜索行为,你可以使用自己的搜索条件来搜索</td>
379379
</tr>
380380
</tr>
381381
</table>

0 commit comments

Comments
 (0)