zshuang

我的java 后端设置了会话回调函数,我新建一个一对一会话,为什么这个回调函数执行了两次 我这边首先打开两个客户端,然后一个客户端创建会话。 image.png 844x372 29.7 KB image.png 1045x406 42.3 KB image.png 1089x362 30.5 KB image.png 1382x365 41.5 KB image.png 1238x523 47 KB image.png 1212x440 75.9 KB

image.png 1485x546 91 KB 两次的client 确实不一样 ,但是为什么两次的invitedBy都是一样的,而且为什么会触发两次呢?我明明只有一个创建了会话

image.png 1253x409 72.7 KB 意思是发起会话的和接收会话的都会出发这个回调函数是嘛,然后邀请人其实就是发起人

不对呀,这个是我测试用的,id肯定只有一个,我还是疑问为什么回调了两次。我后台设置了client,一个创建会话,一个不创建会话。

我用的java sdk的maven依赖如下 cn.leancloud storage-core 6.5.12 cn.leancloud realtime-core 6.5.12 根据你们的例子,回调函数有问题 image.png 1211x478 61.6 KB 我想问一下,是不是我的maven依赖的版本,跟你们官网的文档不一致

好的,这个问题我发现了好几处。 我这边还有一个问题,假如一开始A跟B之间产生会话,聊了一段时间之后,A邀请了C,然后同时A把B剔除了会话。此时的会话id没有变,会话成员变成了A和C。请问:1、这个时候C能看到A跟B之前的聊天记录吗?2、如何查询A和B之间的聊天记录? 注:我说的是以java后台开发为例

我记录这个会话的id,然后根据B和A最后的聊天记录时间,这样也没法查出A和B的聊天记录吗。会话Id应该是一直没有变化的

那么我用A根据会话id和B最后在会话的时间,也没办法查出聊天记录嘛

我在java后台连续发送两条文本消息,但是最终只收到一条消息,在你们的网站上查看发送的消息,也只有一条。 image.png 1148x793 63.9 KB image.png 1567x169 16.2 KB

您好,我想请问几个问题。1、我的java服务端和前端都登陆了一个client,例如叫client1,当前端调用了client 1的close方法,让client1下线,这个时候我的Java后端能收到close方法的回调函数吗?2、client1登录,除了调用close方法会使该客户下线,请问其他什么情况下客户会由上线变为下线状态?

您好,假如前java后端和端登录了一个client(没有加标签,是同一个client)。这个时候前端用户关闭浏览器,这个时候前端登录的client应该会变成下线状态吧,这个时候client的状态是在线还是离线?我的java后端怎么监听到下线事件呢?

都有,这个问题我解决了,我创建两个AVIMTextMessage这个类就可以了,发送的时候选择一个。好像如果只创建一个该类,只修改里面的text内容,发送两次只能收到一条

您好,再请教一个问题。假如前java后端和端登录了一个client(没有加标签,是同一个client)。这个时候前端用户关闭浏览器,这个时候前端登录的client应该会变成下线状态吧,这个时候client的状态是在线还是离线?我的java后端怎么监听到下线事件呢?

意思是前端需要在用户上下线的时候将状态信息存到缓存中,然后后端从缓存中获取客户状态信息?

image.png 1074x451 49.7 KB 服务端这样写就能监听到客户上下面事件吗?java 后台怎么去写一个HOOk方法?

你们写的我实在没看明白,到底该怎么用,麻烦可能写个简单的例子看一下。我搞不清楚首先要干嘛,然后要干嘛

是的,不知道从哪里入手,我想知道怎么在java后端实现hook函数?云引擎和云缓存之间的区别?还有hook函数和云函数怎么使用,而知有什么关系和区别

在你们提供的github上无法下面lean Engine cli客户端,能不能提供一下windows 和linux 64位版本的安装包文件

image.png 1674x294 25.2 KB 就是在您说的这个页面无法下载,能不能提供一下安装包或者执行文件

image.png 1341x666 82.3 KB 如图,云引擎启动一直报错,对应的leancloud 的APPID为:pm6EC3X0vHMJSgqH3f86RfwE-9Nh9j0Va

const Redis = require('ioredis') // 创建 redis client,连接 LeanCache 实例 function createClient() { // 本地环境下此环境变量为 undefined, 会链接到默认的 127.0.0.1:6379, // ️注意,需替换 为实际创建的实例的名称。假如你的实例名是 statusCache,这里需要写 REDIS_URL_statusCache const redisClient = new Redis(process.env['REDIS_URL_MYCACHE']) // 监听 redis 的 error …

用的是java SDK,首先通过初始化方法建立客户端语leancloud的长连接,初始化代码如下: image.png 1025x654 61.7 KB 然后我的客户端断开网咯,此时与leancloud的长连接断开,这边也接收到了回调 image.png 743x133 9.29 KB 然后我回复我的客户端网络状态,按照你们的文档,leancloud与我本地会有心跳重连机制,此时我并没有监听到连接恢复的回调 image.png 1081x154 12.5 KB 问题 :重连成功的回调什么时候触发,我的客服端怎么知道当前与leancloud的长连接是否建立成功

那请问我的java 后端怎么知道连接是否恢复了?有没有对应的通知消息?因为如果我的java SDK与leancloud 断开了连接,我的所有业务流程是没法进行的,所有我需要知道当前的长连接状态是正常的还是失败的?还有我想问一下 AVIMClient.setClientEventHandler(new AVIMClientEventHandler() { @Override public void onConnectionPaused(AVIMClient avimClient) { System.out.println("链接中断"); } @Override public void onCo…

1、您好,请问您说的控制台是leancloud的网页后台吗?2、比如说我通过java sdk登录了两个AVIMClient,分别叫client1和client2,那么当我后台网络掉线的时候,public void onConnectionPaused(AVIMClient avimClient) {System.out.println("链接中断");} 这个方法会调用两次吗,每次调用的时候里面的AVIMClient参数分别是client1和client2吗?不知道我理解的对不对? @Override public void onClientOffline(AVIMClient avimCli…

您好,刚刚按照您说的,我的网络恢复之后 onConnectionResume 没有被自动调用,,appId为m0Kqu5O0aCXOYMVRs4dLbpRa-9Nh9j0Va ,clientId systemId, sdk版本为: 7.0.9

在java sdk 下,A和B正常的进行会话,通过sdk 提供的方法获取会话中的最后一条消息: AVIMClient customer = AVIMClient.getInstance("A"); AVIMConversation customerConversation = customer.getConversation(conversationId); AVIMMessage last = customerConversation.getLastMessage(); 此时A在leancloud的状态是上线的,有的时候会发现根据sdk 提供的方法,查询到的last 为null,请问在什么情…

在JAVA SDK 环境下,通过提供的api接口,实现拉人进会话,踢人进会话的操作。会话是由A创建的。如下: “A”.getConversation(conversationId).kickMembers(Arrays.asList("C"), new ZxbIMOperationCallBack()); "A".getConversation(conversationId).addMembers(Arrays.asList(“D”), new ZxbIMOperationCallBack()); 假设当前的会话中有A和B和C,现在我通过上述的操作将C踢出会话,然后将D拉入会话。 问题1:踢人…

image.png 1074x457 92.8 KB 后台日志中出现连接断开的日志,请问这里的连接断开指的是我的java 后台服务与leancloud长连接断开,还是对应的某个AVINMClient 的连接状态断开了?

您好,我刚刚按照您说的把版本又更新了一下,可还是没有收到 onConnectionResume 的回调,麻烦您帮忙看一下,我们这边要上线了

AVOSCloud.setRegion(AVOSCloud.REGION.EastChina); AVOSCloud.setLogLevel(AVLogger.Level.DEBUG); AVOSCloud.initialize(this.appId, this.appKey); AVIMOptions.getGlobalOptions().setTimeoutInSecs(30); AVConnectionManager manager = AVConnectionManager.getInstance(); manager.autoConnection(); manager.startCo…

AVOSCloud.setRegion(AVOSCloud.REGION.EastChina); AVOSCloud.setLogLevel(AVLogger.Level.DEBUG); AVOSCloud.initialize(this.appId, this.appKey); AVIMOptions.getGlobalOptions().setTimeoutInSecs(30); AVConnectionManager manager = AVConnectionManager.getInstance(); manager.autoConnection(); manager.startCo…

您好,上面的代码就是按照你们提供的java 平台的代码实现的,麻烦帮忙看一下是否存在问题。