SIP АУТЕНТИФИКАЦИЯ Соединение

Я разрабатываю sip-телефон с использованием Java, и я использую Asterisk 1.8 как сервер. У меня проблема с подключением к серверу (compte sip 1700 - адрес Ip ​​Server: 192.168.1.10

У меня есть это сообщение:

>>> REGISTER sip:192.168.1.10:5060 SIP/2.0
Call-ID: [email protected]
CSeq: 1 REGISTER
From: "Jaafar" <sip:1700>;tag=647554
To: "Jaafar" <sip:1700>
Via: SIP/2.0/UDP 192.168.1.4:5060;branch=z9hG4bK19dfa39eec2c6ea76aff876d7facf2b2
Max-Forwards: 70
Contact: <sip:192.168.1.4:5060>
Expires: 60000
Content-Length: 0

<<< SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 192.168.1.4:5060;rport=5060;branch=z9hG4bK19dfa39eec2c6ea76aff876d7facf2b2;received=192.168.1.4
From: "Jaafar" <sip:1700>;tag=647554
To: "Jaafar" <sip:1700>;tag=as7841605b
Call-ID: [email protected]
CSeq: 1 REGISTER
Server: Asterisk PBX 1.8.22.0
Allow: INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,SUBSCRIBE,NOTIFY,INFO,PUBLISH
Supported: replaces,timer
WWW-Authenticate: Digest nonce="6993072a",realm="asterisk",algorithm=MD5
Content-Length: 0

Пожалуйста, помогите мне PS: Это URL-адрес источника клиента sip http://speedy.sh/H8YeK/SipClient.zip


Я решил эту проблему с Астериск. Теперь я мог подключить два софтфона, но у меня другая проблема. Голос и видео не работают. эти исключения появляются, когда я запускаю программный телефон из Eclipse

`

java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
at java.util.Vector.elementAt(Unknown Source)
at com.pfe.config.VoiceTool.startMedia(VoiceTool.java:32)
at com.pfe.phone.Softphone3Listener.processResponse(Softphone3Listener.java:426)
at gov.nist.javax.sip.EventScanner.deliverEvent(EventScanner.java:290)
at gov.nist.javax.sip.EventScanner.run(EventScanner.java:492)
at java.lang.Thread.run(Unknown Source)
EL LLAMANTE ESCUCHA EN40000"`

И это исключение, когда я не нажимаю кнопку

`
    java.lang.NullPointerException
        at com.pfe.config.VoiceTool.stopMedia(VoiceTool.java:88)
        at com.pfe.phone.Softphone3Listener.userInput(Softphone3Listener.java:613)
        at com.pfe.phone.Softphone3GUI.jButton4_actionPerformed(Softphone3GUI.java:288)
        at com.pfe.phone.zphone2GUI_jButton4_actionAdapter.actionPerformed(Softphone3GUI.java:360)
        at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
        at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
        at java.awt.Component.processMouseEvent(Unknown Source)
        at javax.swing.JComponent.processMouseEvent(Unknown Source)
        at java.awt.Component.processEvent(Unknown Source)
        at java.awt.Container.processEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Window.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$400(Unknown Source)
        at java.awt.EventQueue$2.run(Unknown Source)
        at java.awt.EventQueue$2.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)
`

person JHDev    schedule 08.07.2013    source источник
comment
В чем именно ваша проблема? Похоже, у вас нормально настроено соединение. Помните, что это SIP URI в заголовке To, который используется для регистрации, и это выглядит немного подозрительно (хост с именем «1700»?).   -  person forty-two    schedule 09.07.2013
comment
Моя проблема: когда я не могу подключиться к Asterisk (SIP/2.0 401 Unauthorized), я создал учетную запись sip в Asterisk (имя пользователя 1700, пароль 1700)   -  person JHDev    schedule 09.07.2013
comment
Синтаксис SIP URI: sip:userid:password@host:port, где все является необязательным, кроме хоста.   -  person forty-two    schedule 09.07.2013
comment
Я пробовал это, но не работает, я думаю, что я что-то упустил в своем коде, пожалуйста, посмотрите на него. (Извините, я не очень хорошо говорю по-английски)   -  person JHDev    schedule 09.07.2013
comment
Пожалуйста, кто-нибудь может мне помочь?   -  person JHDev    schedule 08.09.2013


Ответы (1)


java.lang.ArrayIndexOutOfBoundsException: 0 >= 0

потому что дайвер не нашел. Ты можешь измениться:

//    AudioFormat df=new AudioFormat(AudioFormat.LINEAR,44100,16,1);
//    Vector devices=CaptureDeviceManager.getDeviceList(df);
//    CaptureDeviceInfo di=(CaptureDeviceInfo) devices.elementAt(0);
//    DataSource daso=Manager.createDataSource(di.getLocator());

MediaLocator ml = new MediaLocator("javasound://44100");
DataSource daso = Manager.createDataSource(ml);

и

AudioFormat(AudioFormat.GSM_RTP, 8000, 4, 1);

если вы используете jainsip для кода. :D

person Vandai Doan    schedule 09.02.2015