0

Android用のLiblinphoneライブラリを正常にコンパイルし、それを使用してBrekeke SIPサーバーに登録し、AndroidクライアントとPCクライアント(x-Lite、linphone)の間で呼び出しを行います。しかし、私は2つの問題に直面しています:

  1. クライアントは、ドメインではなく IP アドレスを使用してサーバーに登録します。

    例: サーバー IP:192.168.10.105 およびクライアント (IP,name):(192.168.10.101,101) の場合、ユーザーは sip:101@192.168.10.105 ではなく sip:101@192.168.10.101 として Brekeke に登録されます。そのため、linphone クライアントから 101 を呼び出すと、結果は Not Found になります

    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 を使用してこれは可能ですか、それとも自分で実装する必要がありますか?

4

1 に答える 1

0

クライアントIPを追跡し続けるDNS SRVを使用するだけで

于 2014-10-01T11:49:34.743 に答える