回復 14# ckleea
I've tried the setting and Asterisk returns error messages.
I've also attached the setting files for reference.
in Asterisk -vvvvc- == Using SIP RTP CoS mark 5
- -- Executing [450@LocalSets:1] NoOp("SIP/bob-00000000", "") in new stack
- -- Executing [450@LocalSets:2] Dial("SIP/bob-00000000", "SIP/skypetestuser/50") in new stack
- == Using SIP RTP CoS mark 5
- -- Couldn't call SIP/skypetestuser/50
- == Everyone is busy/congested at this time (0:0/0/0)
- -- Executing [450@LocalSets:3] Macro("SIP/bob-00000000", "stsdialresult") in new stack
- -- Executing [s@macro-stsdialresult:1] NoOp("SIP/bob-00000000", "HANGUPCAUSE is 0 and DIALSTATUS is CHANUNAVAIL") in new stack
- -- Executing [s@macro-stsdialresult:2] Verbose("SIP/bob-00000000", "1,debug1 "0:CHANUNAVAIL"") in new stack
- debug1 "0:CHANUNAVAIL"
- -- Executing [s@macro-stsdialresult:3] Set("SIP/bob-00000000", "TIMEOUT(absolute)=120") in new stack
- -- Channel will hangup at 2013-04-28 11:40:07.975 HKT.
- -- Executing [s@macro-stsdialresult:4] GotoIf("SIP/bob-00000000", "1?s,6") in new stack
- -- Goto (macro-stsdialresult,s,6)
- -- Executing [s@macro-stsdialresult:6] GotoIf("SIP/bob-00000000", "0?cause-19,1") in new stack
- -- Executing [s@macro-stsdialresult:7] GotoIf("SIP/bob-00000000", "0?cause-2,1") in new stack
- -- Executing [s@macro-stsdialresult:8] GotoIf("SIP/bob-00000000", "1?cause-0,1") in new stack
- -- Goto (macro-stsdialresult,cause-0,1)
- -- Executing [cause-0@macro-stsdialresult:1] NoOp("SIP/bob-00000000", "AST_CAUSE_NOTDEFINED") in new stack
- -- Executing [cause-0@macro-stsdialresult:2] Verbose("SIP/bob-00000000", "1,debug "cause-0"") in new stack
- debug "cause-0"
- -- Executing [cause-0@macro-stsdialresult:3] Playback("SIP/bob-00000000", "error") in new stack
- > 0xb750f960 -- Probation passed - setting RTP source address to 192.168.200.10:4010
- -- Executing [cause-0@macro-stsdialresult:4] Goto("SIP/bob-00000000", "exit-1,1") in new stack
- -- Goto (macro-stsdialresult,exit-1,1)
- -- Executing [450@LocalSets:4] Playback("SIP/bob-00000000", "pls-try-call-later") in new stack
- -- Auto fallthrough, channel 'SIP/bob-00000000' status is 'CHANUNAVAIL'
複製代碼 In extensions.conf, I've added- exten => _4.,1,Noop
- exten => _4.,n,Dial(SIP/skypetestuser/${EXTEN:1})
- exten => _4.,n,Macro(stsdialresult)
- exten => _4.,n,Playback(pls-try-call-later)
複製代碼 in sip.conf- [skypetestuser] ;SipToSis
- username=skypetestuser
- type=friend
- secret=skypetest
- host=dynamic
- nat=no
- dtmfmode=auto
- canreinvite=no
- port=5074
- qualify=yes
- defaultip=192.168.200.11
- incominglimit=1
- outgoinglimit=1
- call-limit=1
- busylevel=1
複製代碼 SkypeOutDialingRules.props:- #rules used by sip caller to make a skype call
- #skypeout dialing transforms:
- # each rule set on a new line
- # regex:replacement
- # if no rule matches, the destination is left unchanged
- # once a rule is matched, no further processing is done
- #If you are using a PBX and it can't be configured to strip the dialing prefix you can work around the PBX limitation
- # by adding entries here. If your PBX dialing prefix is 7 you could add the following line:
- # ^7([1-9][0-9]{10})$:+$1
- # The $1 will only capture what's in the parenthesis. In the example above, the 7 will be left out when making the SkypeOut call
- # with 11 digit dialing. If 713051234567 was sent to the this gateway,SipToSis would transform it to +13051234567. For other prefixes, change the 7
- # to the new prefix. Tip: make sure no other rules make the same match. Read up on regular expressions if you need to get more complicated.
- #You can initiate a conference call to multiple skype users like this (dialing 56 would call the 3 users specified - number of users limited by skype client)
- #You can also do this from a sip device by dialing: skypeuser1,skypeuser2,skypeuser3@SipToSisIpAddress:SipToSisPort
- #^56$:skypeuser1,skypeuser2,skypeuser3
- #you can also make conference to PSTN like this:
- #^57$:+18885555555,+18005555555
- #callback back example to specific users
- #^58$:CallBack:Skype=someskypeuser1,someskypeuser2
- #^58$:CallBack:Skype=someskypeuser1,someskypeuser2|SIP=6666@192.168.0.6:5060
- #callback example with IVR prompt (single target)
- #^58$:CallBack:Skype=someskypeuser1
- #^58$:CallBack:SIP=6666@192.168.0.6:5060
- #rule example below could be for USA and area code 561
- # dialing 3684111=+15613684111
- # or 5613684111=+15613684111
- # or 15613684111=+15613684111
- # This will also allow international dialing with 7 or more digits.
- #You have to dial with your dial plan prefix if you have one (i.e. #1).
- #^([1-9][0-9]{6})$:+1561$1
- ^([1-9][0-9]{9})$:+1$1
- ^([0-9]{7,})$:+$1
- #you can simulate speed dials this way also (dialing your prefix and 55 would call the skype echo test)
- ^50$:echo123
- ^57$:echo123
- ^58$:Skype=echo123
複製代碼 siptosis.cfg, generated by stsTrunkBuilder- #stsTrunkBuilder 20110808 generated trunk file 01 created: Sun Apr 28 01:04:17 GMT 2013 3120073164
- logConfigFile=log.properties
- recordSkypeIn=no
- recordSkypeOut=no
- recordSIPIn=no
- recordSIPOut=no
- runConnectorReliabilityTest=no
- linux_lockmode=0
- linux_idleSleepMs=150
- linux_activeSleepMs=75
- skypeAPITrace=no
- configWatchInterval=0
- AuthWaitingPollIntervalSeconds=0
- connectorWatchDogMinutes=0
- connectionFee=0
- MaxCallTimeLimitMinutes=0
- WarnMinutesBeforeCutoff=1
- OverLimitWarningFile=clips/overlimit.wav
- OverUsageLimitSipResponse=480
- dailyPstnLimitMinutes=350
- dailyPstnUniqueNumberLimit=48
- refuseNewPstnCallsWhenRemainingMinutesUnder=5
- MaxPstnCallTimeLimitMinutes=0
- loadSkypeClientCallHistory=yes
- tollFreeNumberPrefixes=1800,1888,1866,1877
- autoStartVideoMakeCall=no
- autoStartVideoAnswerCall=no
- emailWhenBalanceDropsTo=-1
- emailHost=
- emailPort=25
- emailusername=skypetestuser
- emailPassword=
- emailRecipients=
- emailFrom=
- emailTest=no
- setSkypeOnlineStatusInterval=0
- skypeOnlineStatus=ONLINE
- callBackForceSipPrefix=*
- callLogPath=log/
- siptoskypeauthfile=SipToSkypeAuth.props
- skypetosipauthfile=SkypeToSipAuth.props
- SkypeOutDialingRulesFile=SkypeOutDialingRules.props
- SipOutDialingRulesFile=SipOutDialingRules.props
- ua_jar=ua.jar
- audioPriorityIncrease=0
- jitterLevel=-1
- skype_connect=yes
- skype_audioportbase=64438
- enableSkypeDtmfDetector=yes
- SkypeDtmfGain=1
- SkypeDtmfDetectorHitThreshold=30
- SkypeDtmfDetectorSilenceThreshold=40
- SkypeDtmfDetectorTwistAdjust=1
- autoDisableSkypeDtmfDetectorSeconds=80
- sendSipDtmfToSkype=yes
- sendSkypeDtmfToSip=yes
- skypeDtmfInterDigitDelayms=700
- inbandFullTimeDtmfDetection=yes
- suppressSkypePSTNSipRingback=no
- JoinManualSkypeOutboundCallToSip=no
- SkypeInboundAllChannelsBusyAction=ignore
- SkypeTransferTimeoutMs=8000
- SkypeInboundSipDestUnavailableAction=refuse
- SipInboundAllChannelsBusyAction=busy
- skypeclientsupportsmulticalls=no
- concurrentcalllimit=1
- autoShutdownMinutes=0
- pintimeout=8
- pinretrylimit=3
- destinationtimeout=12
- destinationretrylimit=3
- pinFile=clips/enterPin.wav
- destinationFile=clips/enterDest.wav
- dialingFile=clips/dialing.wav
- invalidPinFile=clips/invalidPin.wav
- invalidDestFile=clips/invalidDest.wav
- skypePinFile=clips/enterPin.wav
- skypeDestinationFile=clips/enterDest.wav
- skypeDialingFile=clips/dialing.wav
- skypeInvalidPinFile=clips/invalidPin.wav
- skypeInvalidDestFile=clips/invalidDest.wav
- handleEarlyMedia=yes
- handleSipEarlyMedia=no
- sendRingToSkypeCaller=no
- skypeRingFile=clips/skypeRing.wav
- skypeRingInterval=8
- sendSkypeEarlyMediaOverSipSessionProgress=no
- replaceFromWithSkypeId=no
- sendSkypeIM=no
- skypeimmessage=You are about to receive a Skype Voice call from [callerid] [callernumber].
- sendSkypeImDelay=2
- autoAddContactCalledUsers=no
- autoAddContactAuthMessage=Please authorize me to contact you.
- transport_protocols=udp
- stunServer=stun.xten.net:3478,stunserver.org:3478
- stunTestInterval=30
- enableNatTranslate=yes
- enableClineFix=yes
- enableNatTranslateVia=no
- host_port=5074
- from_url="skypetestuser" <sip:skypetestuser@192.168.200.11:5060>
- username=skypetestuser
- realm=asterisk
- passwd=skypetest
- expires=3600
- do_register=yes
- minregrenewtime=120
- regfailretrytime=15
- DIDNumber=15551234567
- DIDNumber=to:15551234567
- keepalive_time=0
- audio=yes
- audio_port=63204
- noRtpReceivedAutoHangupSeconds=30
- audio_codec=PCMU,PCMA,ILBC,L16_16
- audio_frame_size=240,240,240,160
- audio_avp=-1,-1,98,102
- skype_audiooutgain=1,1,1,1
- skype_audioingain=1.2,1.2,1.2,1
- FilterParams=NONE
- enableSendRTPtoReceivedAddress=yes
- lockRtpSendAddressAfterPackets=1
- dtmf2833payloadtype=101
- enableSIPInbandDtmfDetector=no
- SIPInbandDtmfDetectorGain=1
- SipDtmfDetectorHitThreshold=30
- SipDtmfDetectorSilenceThreshold=40
- SipDtmfDetectorTwistAdjust=1
- autoDisableSipInbandDtmfDetectorSeconds=80
- useViaRport=yes
- useViaReceived=yes
- enableFixRemoteAddress=yes
- sendResponseUsingOutboundProxy=yes
- early_dialog=yes
- baseFailureResponse=403
- skypeRefusedResponse=603
- skypeFailedResponse=408
- skypeInvalidDestinationResponse=404
- skypeUnPlacedResponse=408
- skypeBusyResponse=600
- SkypeUserOfflineFailureResponse=410
- TcpRxBufferSize=8192
- TcpTxBufferSize=8192
- RtpRxBufferSize=8192
- RtpTxBufferSize=8192
- RtpTosFlags=0x10
- is_registrar=no
- register_new_users=yes
- allowMultiContactsPerUser=no
- domain_port_any=yes
- vmNoMessagesClip=clips/vmpnomessages.wav
- vmPlayingClip=clips/vmpplayingmessages.wav
- vmEndOfMessageClip=clips/vmpendofmessageprompt.wav
- vmMessageDeletedClip=clips/vmpmessagedeleted.wav
- vmMessageDeleteAllClip=clips/vmpmessagedeleteall.wav
- vmNoMoreMessagesClip=clips/vmpnomoremessages.wav
- vmRecordingBeepClip=clips/vmprecordingbeep.wav
複製代碼 |