2通讯过程中,所有的信息交流都必须通过云端么?
-
创建时间
15年7月27日
-
最后回复
15年7月31日
-
6
回复
-
2.1K
浏览
-
2
用户
-
2
链接
2通讯过程中,所有的信息交流都必须通过云端么?
针对你的问题:
那哪些在云端?哪些又不在,通讯又是怎样进行的呢?需要通过learncloud中转么?
回复如下:
使用 LeanCloud 的实时聊天功能,只有你发送的消息本身和打开一个 IMClient 时使用的 clientId,会保存在云端,其他数据都是你自己负责存储的。例如:
如果有一个用户A(clientId:USERAAA)和一个用户B(clientId:USERBBB)在你的应用内聊天,A 发送了一条消息:“吃饭了吗”,那么用户B那边收到的消息就是:
from: USERAAA
text:吃饭了吗?
如果A发了一张自拍照片给B,那么B那边收到的消息就是:
from: USERAAA
image:{url:"http://leancloud.cn/images/xxx.png"}
注意这里 image 后面的 json 只是示意,并不等同于我们 sdk 里面最终可以拿到的信息。对于图片类消息,我们 sdk 会先把图片上传到 LeanCloud 云端,然后把图片 url 发到用户 B 那里。
从应用角度来看,你收到了一条消息,需要在 UI 上显示出来,除了消息本身的数据之外,你可能还需要显示用户的信息,譬如昵称、头像等,这些数据就需要从你自己的后台来获取了。
最后补充一点,你也可以通过 LeanCloud 存储服务来保存用户账户数据(可以参考这篇文档11),那时候你就可以全部采用 LeanCloud 来开发整个产品了。
你可以看一下这个文档:实时通信服务概览12
其实简单来讲,我们只是做了一个通信层,帮你把消息发到目的用户那里。至于用户账号信息、好友关系,都不在聊天服务里面,你可以在自己服务端里来管理,也可以使用我们的存储服务来管理。
主题 | 分类 | 回复 | 浏览 | 活动 |
---|---|---|---|---|
商用版欠费后,停了服务,变回开发版又操作不了 | 意见反馈 | 3 | 2.2K | 17-10-23 |
新版本控制台的帮助里没有在线调试等 | 意见反馈 | 0 | 959 | 20-12-16 |
云引擎添加 PHP 8 支持 | 意见反馈 | 2 | 1.5K | 21-05-25 |
iOS真机无法获得数据 | 意见反馈 | 1 | 930 | 16-05-3 |
控制台 ClassName 列表增加可以滚动的提示 | 意见反馈 | 0 | 938 | 16-11-18 |