如何通过域而不是IP地址注册到SIP服务器并从客户端创建SIP帐户?

时间:2014-08-15 18:18:26

标签: android sip linphone sip-server

我已经成功编译了用于Android的Liblinphone库并使用它注册到Brekeke SIP服务器并在Android客户端和PC客户端(x-Lite,linphone)之间进行调用。但我面临两个问题:

  1. 客户端使用其IP地址而不是域名注册到服务器。

    例如:如果服务器IP:192.168.10.105和客户端(IP,名称):( 192.168.10.101,101), 用户将注册到Brekeke sip:101@192.168.10.101而不是sip:101@192.168.10.105所以当我从linphone客户端拨打101时,结果是找不到的

    try{
        from = LinphoneCoreFactory.instance()
              .createLinphoneAddress("sip:101@192.168.10.105");
    
        proxy_cfg = LinphoneCoreFactory.instance().createProxyConfig
                    ("sip:101@192.168.10.105","sip:"+from.getDomain(),null,true);
    
    } catch (LinphoneCoreException e) {
        FileLog.e("proxy_cfg error",e);
    }
    
    LinphoneAuthInfo info;
    info = LinphoneCoreFactory.instance().createAuthInfo(from.getUserName(),
            "password",null,"sip:"+from.getDomain()); 
    
    mLinphoneCore.addAuthInfo(info);
    
    try {
        mLinphoneCore.addProxyConfig(proxy_cfg);
    } catch (LinphoneCoreException e) {
      FileLog.e("reg error",e);
    }
    
    mLinphoneCore.setDefaultProxyConfig(proxy_cfg); 
    
  2. 我需要在客户端通过代码在SIP服务器上创建用户,这可能是使用Liblinphone还是应该由我自己实现?

1 个答案:

答案 0 :(得分:0)

只需使用DNS SRV跟踪客户端IP

相关问题