# 接口列表 ## 注册(register) ### 请求参数 ```json { "uuid": "设备唯一码,第一次安装应用时,生成存储与用户存储,后续开启查找该文档,如果存在则直接使用,不存在则重新生成存储。该方案可避免出现获取设备信息权限。", "device": "Android、ios、pc、web、小程序...", "username": "用户标识,该服务不对接用户体系,所以改标识作为用户唯一码使用。", "pushToken": "厂商通道的推送id。" } ``` > 注册推送服务时`username`是否可以保证唯一。 ### 返回参数 ```json { "account": "根据请求参数生成,用于登录im和声网" } ``` ## 注销(logout) > 服务端删除(假)该uuid对应的account以及pushToken > > 保证当前设备不再收到消息,但是其它设备可以 ### 关闭随送 > 关闭后,所有消息只走im,不再走厂商推送。 > > 直观表现在与,app端如果不打开应用,则无法收到消息。 ## 离线消息转发与缓存 > 其实可以理解为过滤,也是和谐功能的入口。 > > 也是群消息的重组转发所在。 > > ```json > { > "id": "bukjsafabsj4541536$#@", > "from": "user001", > "to": "推送开发组", > "target": "user001", > "type": "text", > "content": { > "text": "" > }, > "timestamp": 1675416709033, > "isBackground": false > } > > ``` > > ```json > { > "id": "bukjsafabsj4541536$#@", > "from": "推送开发组", > "to": "user002", > "target": "user001", > "type": "text", > "content": { > "text": "" > }, > "timestamp": 1675416709033, > "isBackground": false > } > > ``` > > > > 这里需要考虑,怎么能把account和username等信息关联起来,保证查询离线消息时候,可以把其它设备的消息同步查询出来,并且不会出现错乱。 > > 注册推送服务时`username`是否可以保证唯一。 ## 和谐词配置 > ## 离线消息 ### 请求参数 ```json { "timeStamp": "", "account": "" } ``` > 返回所有缓存的离线消息,自`timeStamp`开始至当前消息 > > 返回消息的方式,是直接走接口返回值携带,还是通过im发送。 ## 历史消息 ### 请求参数 ```json { "startTimeStamp": "", "endTimeStamp": "", "account": "", "target": "" } ``` > `target`非必传,区分单个用户的消息,还是全部消息 ```json { "timeStamp": "当前时间戳", "account": "", "target": "", "start": 1, "end": 10 } ``` > 从当前时间戳开始,向上查找第1到10条数据。 > >使用场景,单聊上滑查看历史消息。 ## 发送消息 > 应用对接,直接调用接口发消息 > > 系统通知 > > 部分业务变更通知