1

mlbyuxue 2023-2-28 365

2

最新回复 (19)
  • mlbyuxue 2023-2-28
    引用 2
    就是我们有这么个需求,比如我有两台手机,我有一个好友跟我聊天,我先在A手机上跟他聊,A手机上收到了他发的消息,然后我在B手机上登录了,我B手机上收到了他发的消息,然后我又切到了A手机了,我A手机上收到了B手机上收到的消息,现在我们产品的意思是A手机上不能收到B手机已经收到过的消息。请问我该怎么配置,我上面那么配发现不行
  • x86 2023-2-28
    引用 3
    message.compensate_time_limit 0

    这个配置,你置为 -1 试下,其他的保持上面的一致。
  • mlbyuxue 2023-2-28
    引用 4
    还是能同步过来啊,你好,我把配置放附件了,你看下还有什么问题吗,还有就是这个需要手机端配合吗
  • mlbyuxue 2023-2-28
    引用 5
    02-28 18:49:24:877  INFO 10171 --- [nio-8200-exec-3] c.w.sdk.utilities.AdminHttpUtils         : http request:/admin/message/send content: {"sender":"admin","conv":{"type":0,"target":"t2gqmws2k","line":0},"payload":{"type":1,"searchableContent":"","mediaType":0,"persistFlag":3,"expireDuration":0,"mentionedType":0,"extra":"{\"type\":\"1\"}"}}
  • mlbyuxue 2023-2-28
    引用 6
    您好,我还有一个问题,我们有个需求是这个用户第一次登录的时候,我们会用admin用户发一条欢迎信息,现在发现如果是用上面的配置,手机端收不到消息
  • mlbyuxue 2023-2-28
    引用 7
    就是我在用户在线状态事件回调中,放了一个发送欢迎信息的方法,测试发现第一次登录的时候手机端收不到,如果在回调中我已经收到状态是0是在线的情况了,这时候我调sdk中发送私聊信息的方法,这时候,不算历史消息吧
  • x86 2023-3-1
    引用 8
    mlbyuxue 还是能同步过来啊,你好,我把配置放附件了,你看下还有什么问题吗,还有就是这个需要手机端配合吗
    你卸载重装试试呢。

    从 6 楼的表现看,应当是没有同步历史消息了,6 楼的消息,是在同步历史消息前发送的
  • mlbyuxue 2023-3-1
    引用 9
    你好,这个是在同步历史消息发送的该怎么理解啊,如果我想实现我们的需求,就是在用户第一次登录的时候发一条欢迎使用的私聊信息,但是又不想走历史消息同步,我该在什么时候发送啊,是得等手机端跑完什么方法吗,麻烦指点一下
  • x86 2023-3-1
    引用 10
    在线回调是客户端连接的时候触发的,这时候,还没有同步历史消息,如果你的欢迎消息,是在同步历史消息之前发送到服务,那么同步历史消息的时候,就会把欢迎消息也过滤了。


    一个简单粗暴的办法是,你延迟一点时间,比如 5s,然后发送欢迎消息
  • mlbyuxue 2023-3-1
    引用 11
    你好。你们底层是不是有机制啊,我现在配置文件设置的,如果我清空本地消息,然后我再重新登录,消息不会被拉下来,但是如果我正在和人聊天,我中途换了个手机,我能收到之前手机收到的消息
  • mlbyuxue 2023-3-1
    引用 12
    我们产品意思是换了手机就不能收到之前手机收到过的消息
  • mlbyuxue 2023-3-1
    引用 13
    我说的这种场景下的消息是不是不算历史消息,是不是走的别的机制
  • x86 2023-3-1
    引用 14
    mlbyuxue 你好。你们底层是不是有机制啊,我现在配置文件设置的,如果我清空本地消息,然后我再重新登录,消息不会被拉下来,但是如果我正在和人聊天,我中途换了个手机,我能收到之前手机收到的消息
    比如从 A 换到 B 手机,如果 B 之前没有登录过,那应当会拉不到消息的。

    如果 B 之前登录过,并且退出登录时,没有清楚 session,那么就能拉到,因为这时候,服务端不认为它是首次登录,会从 B 手机当前的消息节点开始拉消息。

    要解决这个问题,每次退出登录,调用 disconnect 时,第二个参数 cleanSession 传 true 就可以了;但是,这样的话,退出就会把本地消息清除

  • mlbyuxue 2023-3-1
    引用 15
    多谢,我这下明白了
  • mlbyuxue 2023-3-1
    引用 16

    你好,我对于这块还有点疑问,我们的需求是用户新注册或者换了新手机的时候,发一个欢迎信息,那就是有两种情况,一种是用户刚注册,这时候我在用户在线状态事件回调中,发送欢迎信息,我做了10秒的延迟,我发现客户端是收不到的,但是如果换一个手机,我登一下刚注册的号,这时候我发送的欢迎信息是可以收到的,新用户首次登录是不是有什么机制啊,如果我想我们实现我们的需求,我该怎么去处理啊,麻烦指点一下

  • mlbyuxue 2023-3-1
    引用 17
    x86 在线回调是客户端连接的时候触发的,这时候,还没有同步历史消息,如果你的欢迎消息,是在同步历史消息之前发送到服务,那么同步历史消息的时候,就会把欢迎消息也过滤了。 一个简单粗暴的办法是,你延迟 ...
    你好,我对于这块还有点疑问,我们的需求是用户新注册或者换了新手机的时候,发一个欢迎信息,那就是有两种情况,一种是用户刚注册,这时候我在用户在线状态事件回调中,发送欢迎信息,我做了10秒的延迟,我发现客户端是收不到的,但是如果换一个手机,我登一下刚注册的号,这时候我发送的欢迎信息是可以收到的,新用户首次登录是不是有什么机制啊,如果我想我们实现我们的需求,我该怎么去处理啊,麻烦指点一下
  • HeavyRain 2023-3-2
    引用 18
    我们查出来了,确实是逻辑有漏洞,已经修复,请拉取最新代码编译后验证
  • mlbyuxue 2023-3-2
    引用 19
    你好,如果是商业版是不是得问你们再要个包,需要重装吗
  • x86 2023-3-2
    引用 20
    mlbyuxue 你好,如果是商业版是不是得问你们再要个包,需要重装吗
    是的,请给我们发一下邮件,告诉域名等信息
返回