禁用呼叫连接Android Pjsip Sip库

时间:2017-09-14 10:10:41

标签: android sip pjsip

如何使用本地服务器在Pjsip Android中执行呼叫?

我用过 用户代理:Pjsua2 Android 2.6-svn

我做了成功的注册,之后我试图打电话但是它被禁止投掷(503) 我的注册码:

     AccountConfig accCfg = new AccountConfig();
        accCfg.setIdUri("sip:localhost");
        accCfg.getNatConfig().setIceEnabled(true);
        accCfg.getVideoConfig().setAutoTransmitOutgoing(true);
        accCfg.getVideoConfig().setAutoShowIncoming(true);
     //Like 123.12.12.23 
       accCfg.getRegConfig().setRegistrarUri("sip:172.16.4.124");

        AuthCredInfoVector creds = accCfg.getAuthCreds();
        creds.clear();
        if (username.length() != 0) {
           creds.add(new AuthCredInfo("Digest", "*", "abc@172.16.4.124", 0,
            "123"));
                    }
         StringVector proxies = accCfg.getSipConfig().getProxies();
                    proxies.clear();
                    if (proxy.length() != 0) {
                        proxies.add("sip:172.16.4.124");
                    }                                  
           accCfg.getSipConfig().setProxies(proxies);

        /* Enable ICE */
                    accCfg.getNatConfig().setIceEnabled(true);
                    try {
                        account.add(accCfg);
                    } catch (Exception e) {
                        e.printStackTrace();
                        Log.i(TAG, "Exception in Dialog");
                    }
                }

拨打电话我使用

public void makeCall(View view) {
    if (buddyListSelectedIdx == -1)
        return;

/* Only one call at anytime */
    if (currentCall != null) {
        return;
    }

    HashMap<String, String> item = (HashMap<String, String>) buddyListView.
            getItemAtPosition(buddyListSelectedIdx);
    String buddy_uri = item.get("uri");

    MyCall call = new MyCall(account, -1);
    SendInstantMessageParam param = new SendInstantMessageParam();
    param.setContent("Hello Pjsip");
    param.setContentType("text");


    CallOpParam prm = new CallOpParam(true);

    try {
        call.makeCall(buddy_uri, prm);
//            call.delete();
//            call.sendInstantMessage(param);
    } catch (Exception e) {
        e.printStackTrace();
        call.delete();
        return;
    }
    currentCall = call;
    showCallActivity();

}

我能够连接sip默认客户端,如sip:localhost和其他sip提供程序,如linphone,但禁止使用我们的服务器。 专家请帮帮忙。

1 个答案:

答案 0 :(得分:-1)

非常感谢,最后我在3天锻炼后得到解决方案, 错过了我的亚马逊服务器的端口号,让我连接起来,并在sip端之间进行了一次简单的通话。