2014-10-10 4 views
0

저는 pjsip 프로젝트 2.3을 사용하고 있습니다. 얼음을 사용하여 내 P2P를 imp하고 싶습니다.icedemo에서 stunserver와 turnserver를 설정하는 방법은 무엇입니까?

그래서 iicedemo.c.를 컴파일하고 cmdline은 "-s stunserver.org"입니다.

하지만 데모를 실행하면 잘 작동하지 않는 것으로 나타났습니다. 이 같은 덤프 정보 :

11:46:45.343 os_core_win32. pjlib 1.4 for win32 initialized 
11:46:45.359   pjlib select() I/O Queue created (00A338E4) 
+----------------------------------------------------------------------+ 
|     M E N U           | 
+---+------------------------------------------------------------------+ 
| c | create   Create the instance        | 
| d | destroy   Destroy the instance       | 
| i | init o|a   Initialize ICE session as offerer or answerer | 
| e | stop    End/stop ICE session       | 
| s | show    Display local ICE info       | 
| r | remote   Input remote ICE info       | 
| b | start   Begin ICE negotiation       | 
| x | send <compid> .. Send data to remote        | 
+---+------------------------------------------------------------------+ 
| h | help   * Help! *          | 
| q | quit   Quit           | 
+----------------------------------------------------------------------+ 
Input: c 
11:46:49.703  icedemo Creating ICE stream transport with 1 component(s) 
11:46:49.734  icedemo Comp 1: srflx candidate starts Binding discovery 
11:46:50.000 stuntp00A34390 TX 36 bytes STUN message to 132.177.123.13:3478: 
--- begin STUN message --- 
STUN Binding request 
Hdr: length=16, magic=2112a442, tsx_id=6784482372ae3d6c00015f90 
Attributes: 
    SOFTWARE: length=10, value="pjnath-1.4" 
--- end of STUN message --- 
    11:46:50.000 stuntsx00A3BCF STUN client transaction created 
11:46:50.000 stuntsx00A3BCF STUN sending message (transmit count=1) 
11:46:50.015  icedemo Comp 1: host candidate 192.168.2.146:7033 added 
11:46:50.015  icedemo ICE stream transport created 
11:46:50.015  icedemo.c ICE instance successfully created 
+----------------------------------------------------------------------+ 
|     M E N U           | 
+---+------------------------------------------------------------------+ 
| c | create   Create the instance        | 
| d | destroy   Destroy the instance       | 
| i | init o|a   Initialize ICE session as offerer or answerer | 
| e | stop    End/stop ICE session       | 
| s | show    Display local ICE info       | 
| r | remote   Input remote ICE info       | 
| b | start   Begin ICE negotiation       | 
| x | send <compid> .. Send data to remote        | 
+---+------------------------------------------------------------------+ 
| h | help   * Help! *          | 
| q | quit   Quit           | 
+----------------------------------------------------------------------+ 
Input: 11:46:50.359 stuntsx00A3BCF STUN sending message (transmit count=2) 
11:46:50.562 stuntsx00A3BCF STUN sending message (transmit count=3) 
11:46:50.968 stuntsx00A3BCF STUN sending message (transmit count=4) 
11:46:51.781 stuntsx00A3BCF STUN sending message (transmit count=5) 
11:46:53.390 stuntsx00A3BCF STUN sending message (transmit count=6) 
11:46:56.593 stuntsx00A3BCF STUN sending message (transmit count=7) 
11:46:58.203 stuntsx00A3BCF STUN timeout waiting for response 
11:46:58.203 stuntp00A34390 Session failed because STUN Binding request failed 
: STUN transaction has timed out (PJNATH_ESTUNTIMEDOUT) 
    11:46:58.203  icedemo STUN binding request failed: STUN transaction has 
timed out (PJNATH_ESTUNTIMEDOUT) 
11:46:58.203  icedemo.c ICE initialization failed: STUN transaction has ti 
med out (PJNATH_ESTUNTIMEDOUT) 
11:47:00.203 stuntsx00A3BCF STUN client transaction destroyed 
+0

안녕하십니까. StackOverflow에 오신 것을 환영합니다. 이 질문은 약간의 작업을 사용할 수 있다고 생각합니다. 질문에 [조금 더 많은 정보] (http://stackoverflow.com/help/how-to-ask)를 추가해야하고 이미 문제를 해결하려고했는데 오류가 발생한 코드가 있습니다. – Yann

+0

조언 해 주셔서 감사합니다. – Rcan

답변

0

나는 나의 PjSIP 기반 응용 프로그램과 유사한 문제가되고있다. stunserver.org에있는 STUN 서버에 문제가있는 것 같습니다. 그것은 때때로 내려 가고 있습니다.

Google에서 제공하는 STUN 서버 중 하나를 사용해보세요. 나는 그 (것)들이 아주 견실하다는 것을 찾아 냈다.

stun.l.google.com:19302 
stun1.l.google.com:19302 
stun2.l.google.com:19302 
stun3.l.google.com:19302 
stun4.l.google.com:19302