2012-11-24 4 views
2

다른 컨텍스트를 가진 확장 프로그램은 서로 통신 할 수 있습니까?

[technical-office] 
exten => 101,1,answer() 
exten => 101,2,dial(sip/101) 
exten => 101,3,hangup() 

[employment-department] 
exten => 102,1,answer() 
exten => 102,2,dial(sip/102) 
exten => 102,3,hangup() 

내가 '102'전화를 '101'확장자를 사용 extension.conf

[101] 
context = technical-office 
[102] 
context = employment-department 

sip.conf, 난 오류 "를 destionation 할 경로"가 없습니다. 하지만 컨텍스트가 동일합니다. 오류가 없습니다.

답변

6

올바른 컨텍스트가 없기 때문에 그 때문입니다. SIP 피어 101은 컨텍스트 technical-office를 가리키며 해당 컨텍스트에서 확장 102가 없습니다. 는 사용 작동으로 활용하려면 다음

extension.conf

[101] 
    context = technical-office 
    [102] 
    context = technical-office 

sip.conf 모두 전화가 같은 맥락에있는

[technical-office] 
    exten => _1XX,1,answer() 
    exten => _1XX,n,dial(sip/${EXTEN}) 
    exten => _1XX,n,hangup() 

, 101 전화 (102), 작동가는 경우 이렇게 102가 101로 전화를 걸면 그 전화도 제대로 작동합니다. 실제로 _1XX는 패턴이라고하고 $ {EXTEN}은 사용자가 다이얼 한 내선 번호를 나타냅니다. 별표 다이얼 플랜에서 정말 일반적입니다.

4

물론 하나의 컨텍스트에서 다음 컨텍스트로 전화를 걸 수 있습니다.

sip.conf :

[101] 
context = technical-office 
[102] 
context = employment-department 

extensions.conf 다음 exten => XXX이 아닌 전화에서 전화를 건 전화를 의미하기 때문에 귀하의 예제가 작동하지

[technical-office] 
include => dial-context 

[employment-department] 
include => dial-context 

[dial-context] 
exten => _1XX,1,answer() 
exten => _1XX,n,dial(sip/${EXTEN}) 
exten => _1XX,n,hangup() 

. 예를 들어 dialplan (extensions.conf) 101을 102로 교환하면 컨텍스트 A의 확장이 extenion 102를 호출하고 다른 방법으로 동일한 작업을 수행 할 수 있습니다.

voip-info을 확인하거나 Asterisk: The future of telephony (O'Reilly) 책을 찾아 Asterisk에 대한 전체 소개를 찾아보십시오.

희망 하시겠습니까?

관련 문제