默认
发表评论 6
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复] MobileIMSDK v3.0中找不到getNextUserId,如何实现自已的user id生成算法?
阅读(38951) | 评论(6 收藏 淘帖
3.0 20170718 中 找不到getNextUserId?
如何 重写此方法来实现您自已的user id生成算法?

public class ServerLauncherImpl extends ServerLauncher {
    //读取application.properties 中的配置
    @Value("${ConfigEntity.appKey}")
    private String appKey;
    //读取application.properties 中的配置   
    @Value("${ConfigEntity.serverUDPPort}")
    private String appPort;
   
    public ServerLauncherImpl() throws IOException {
        super();
        ServerLauncher.appKey = appKey;
        ServerLauncher.PORT = Integer.parseInt(appPort);
    }

    @Override
    protected ServerCoreHandler initServerCoreHandler() {
        return new ServerCoreHandler() {
            // 【注意】:重写此方法来实现您自已的user id生成算法哦^_^!
            
        };
    }

    @Override
    protected void initListeners() {
        // ** 设置回调
        this.setServerEventListener(serverEventListenerImpl);
        this.setServerMessageQoSEventListener(messageQoSEventS2CListnerImpl);

    }

}

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:MobileIMSDK
上一篇:[已回复] MobileIMSDK客户端和服务器端的回调函数是异步的还是同步的?下一篇:[已回复] MobileIMSDK的服务端源码里无法判定离线消息的问题?
推荐方案
评论 6
MobileIMSDK v3里已经取消了user_id的生成了,没有这个东西了。
发消息时 ,通过指定对方的登录名来进行发送吗?
引用:吴佳同 发表于 2017-11-14 09:39
发消息时 ,通过指定对方的登录名来进行发送吗?

是的,这是唯一途径,看Demo代码就一清二楚了。

准确地说,你提交给IM的登陆名可以是你的真正用户系统里的user id,比如你的用户可以允许邮件登陆、手机号登陆、昵称登陆等等,而你拿给IM的登陆id只是这些对应的唯一id就可以了,你需要正确地理解它。
可以理解 成 登录名 是在客户端做的验证吗?
当用户输入登录名 密码,点击登录时,先发个请求验证 登录名是否存在,如果存在,再根据用户名得到他的id,

然后发登录请求给 mobileimsdk server,  
mobileimsdk server收到的登录请求 其实是 id 和密码 。
是这样理解的吗?
引用:吴佳同 发表于 2017-11-14 10:48
可以理解 成 登录名 是在客户端做的验证吗?
当用户输入登录名 密码,点击登录时,先发个请求验证 登录名 ...

是的,可以这么理解。

准确的说,你发给IM的是一个唯一的用户id和上一步http身份认证完成的token(这个token可以是SSO单点登陆接口返回的、也可以理解成是传统Web系统里的sessionId,差不多意义的东西,但具体怎么定义你系统去解读就行了,MobileIMSDK本身不限制你的逻辑)。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部