你说的「所有的信息」是指哪些内容?好友的信息,如果是指用户个人的信息,譬如昵称、头像等,是不会保存在 LeanCloud 云端的。

针对你的问题:

那哪些在云端?哪些又不在,通讯又是怎样进行的呢?需要通过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 来开发整个产品了。

如果用咱的sdk,你们那边都有这个过程中的什么数据?

消息,仅此而已。

现在我们这边要做的话,要把好友信息,好友关系全部存到你们的服务器上?好友之间的管理也是你们做么?我们这边要做什么呢?

你可以看一下这个文档:实时通信服务概览12

其实简单来讲,我们只是做了一个通信层,帮你把消息发到目的用户那里。至于用户账号信息、好友关系,都不在聊天服务里面,你可以在自己服务端里来管理,也可以使用我们的存储服务来管理。