2
votes

I am getting Sip exception while running this code. This is because of manager.register(me,20,listener).

Below is my code, so please help me to correct this code. I am using SipDemo code to register my account.

try {
    //  tv5.setText("inside try");
    SipProfile.Builder builder = new SipProfile.Builder("username", "sip2sip.info");
    builder.setPassword("PASSWORD");
    // builder.setAutoRegistration(false);
    // tv5.setText("after build ");

    me = builder.build();
    // tv5.setText("after me build");

    Log.d("+++++USER PROFILE", "CREATED-------------");

    Intent i = new Intent();
    i.setAction("com.example.vivekkumar3.voipcallnext.INCOMING_CALL");
    PendingIntent pi = PendingIntent.getBroadcast(this, 0, i, Intent.FILL_IN_DATA);
    manager.open(me, pi, null);

    Log.d("me:", String.valueOf(me));

    boolean isopened=manager.isOpened(me.getUriString());
    Log.d("IsOPENED::::::::", String.valueOf(isopened));

    manager.register(me, 60, null);
    SipRegistrationListener listener=new SipRegistrationListener() {
        public void onRegistering(String localProfileUri) {
            updateStatus("Registering with SIP Server...");
        }
        public void onRegistrationDone(String localProfileUri, long expiryTime) {
            updateStatus("Ready");

        }
        public void onRegistrationFailed(String localProfileUri, int errorCode,
                                         String errorMessage) {
            updateStatus("Registration failed.  Please check settings." + errorCode + "error message" + errorMessage);
        }
    };

    manager.register(me,20,listener);

    // tv5.setText("before registering");

    manager.setRegistrationListener(me.getUriString(),listener);

    // tv5.setText("after set registeration listener");
    Log.d("registration","almost done");
    // This listener must be added AFTER manager.open is called,
    // Otherwise the methods aren't guaranteed to fire.

    Log.d("register start", "-------------------------2 going to register-----------------------------");
    // manager.register(me, 30, null);
}catch (ParseException pe) {
    updateStatus("Connection Error. parse");
} catch (SipException se) {
 updateStatus("Connection error. sip");
}
1

1 Answers