统一IM方案,Android端sdk
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

推送+IM(服务端).md 2.7KB

1 ano atrás
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. # 接口列表
  2. ## 注册(register)
  3. ### 请求参数
  4. ```json
  5. {
  6. "uuid": "设备唯一码,第一次安装应用时,生成存储与用户存储,后续开启查找该文档,如果存在则直接使用,不存在则重新生成存储。该方案可避免出现获取设备信息权限。",
  7. "device": "Android、ios、pc、web、小程序...",
  8. "username": "用户标识,该服务不对接用户体系,所以改标识作为用户唯一码使用。",
  9. "pushToken": "厂商通道的推送id。"
  10. }
  11. ```
  12. > 注册推送服务时`username`是否可以保证唯一。
  13. ### 返回参数
  14. ```json
  15. {
  16. "account": "根据请求参数生成,用于登录im和声网"
  17. }
  18. ```
  19. ## 注销(logout)
  20. > 服务端删除(假)该uuid对应的account以及pushToken
  21. >
  22. > 保证当前设备不再收到消息,但是其它设备可以
  23. ### 关闭随送
  24. > 关闭后,所有消息只走im,不再走厂商推送。
  25. >
  26. > 直观表现在与,app端如果不打开应用,则无法收到消息。
  27. ## 离线消息转发与缓存
  28. > 其实可以理解为过滤,也是和谐功能的入口。
  29. >
  30. > 也是群消息的重组转发所在。
  31. >
  32. > ```json
  33. > {
  34. > "id": "bukjsafabsj4541536$#@",
  35. > "from": "user001",
  36. > "to": "推送开发组",
  37. > "target": "user001",
  38. > "type": "text",
  39. > "content": {
  40. > "text": ""
  41. > },
  42. > "timestamp": 1675416709033,
  43. > "isBackground": false
  44. > }
  45. >
  46. > ```
  47. >
  48. > ```json
  49. > {
  50. > "id": "bukjsafabsj4541536$#@",
  51. > "from": "推送开发组",
  52. > "to": "user002",
  53. > "target": "user001",
  54. > "type": "text",
  55. > "content": {
  56. > "text": ""
  57. > },
  58. > "timestamp": 1675416709033,
  59. > "isBackground": false
  60. > }
  61. >
  62. > ```
  63. >
  64. >
  65. >
  66. > 这里需要考虑,怎么能把account和username等信息关联起来,保证查询离线消息时候,可以把其它设备的消息同步查询出来,并且不会出现错乱。
  67. >
  68. > 注册推送服务时`username`是否可以保证唯一。
  69. ## 和谐词配置
  70. >
  71. ## 离线消息
  72. ### 请求参数
  73. ```json
  74. {
  75. "timeStamp": "",
  76. "account": ""
  77. }
  78. ```
  79. > 返回所有缓存的离线消息,自`timeStamp`开始至当前消息
  80. >
  81. > 返回消息的方式,是直接走接口返回值携带,还是通过im发送。
  82. ## 历史消息
  83. ### 请求参数
  84. ```json
  85. {
  86. "startTimeStamp": "",
  87. "endTimeStamp": "",
  88. "account": "",
  89. "target": ""
  90. }
  91. ```
  92. > `target`非必传,区分单个用户的消息,还是全部消息
  93. ```json
  94. {
  95. "timeStamp": "当前时间戳",
  96. "account": "",
  97. "target": "",
  98. "start": 1,
  99. "end": 10
  100. }
  101. ```
  102. > 从当前时间戳开始,向上查找第1到10条数据。
  103. >
  104. >使用场景,单聊上滑查看历史消息。
  105. ## 发送消息
  106. > 应用对接,直接调用接口发消息
  107. >
  108. > 系统通知
  109. >
  110. > 部分业务变更通知