Fedora Talk - Asterisk

Jon Masters jonathan at jonmasters.org
Tue Feb 16 14:31:05 UTC 2010


Folks,

Perhaps someone can use this to update the wiki if they have time.

The current recommendations for Fedora Talk "talking" to a private
Asterisk server are incorrect for recent versions. The following
snippets are sufficient for two-way friendly chat, and are a
simplification of the system I use for forwarding to my cell. You dial
an internal Fedora number using a prefix of "5", followed by the
extension, but you can replace that with whatever you like. I have DISA
support on my Asterisk, so I can call myself and enter a password to
access SIP from any phone - can send an example if requested.

Note the hack to munge in a "valid" 10 digit number for the outgoing
caller ID to the cellphone. Depending upon your locality, you may or may
not be able to do this, but your provider may enforce that CID must be a
valid looking 10 digit NANPA allocation as in this case. I explicitly
don't use the DNS records to lookup the correct server, ever.

Jon.

# /etc/asterisk/sip.conf:

register => FAS_USERNAME:VOIP_PASSWORD at talk.fedoraproject.org
...
[fedora]
type=friend
username=FAS_USERNAME
secret=VOIP_PASSWORD
authuser=FAS_USERNAME:VOIP_PASSWORD at fedoraproject.org
host=talk.fedoraproject.org
fromuser=FAS_USERNAME
fromdomain=fedoraproject.org
nat=yes
context=incomingfedora
insecure=very
canreinvite=no
dtmfmode=rfc2833

# /etc/asterisk/extensions.conf:

# "internal" is the local context for e.g. outgoing trusted calls
[internal]
...
exten => _5.,1,Set(CALLERID(number)=VOIP_EXTENSION)
exten => _5.,2,Set(CALLERID(name)="FAS_USERNAME Fedora Talk")
exten => _5.,3,Dial(SIP/${EXTEN:1}@fedora,300,trWw)
exten => _5.,4,PlayBack(invalid)
exten => _5.,5,Hangup

# The above supports call forwarding, recording, and other options

...
[incomingfedora]

# only do this if you have rules for call recording and forwarding
include => parkedcalls

exten => h,1,HangUp()

exten => s,1,Answer()
exten => s,2,Wait(1)
exten => s,3,PlayBack(call-forwarding)
exten => s,4,Goto(VOIP_EXTENSION,1)
exten => s,5,HangUp()

exten => 3,1,VoiceMail(VOICEMAIL_EXTENSION)
exten => 3,2,HangUp()

exten => _5100570,1,Answer()
exten => _5100570,2,WaitExten(1)
exten => _5100570,3,BackGround(one-moment-please)
exten => _5100570,4,WaitExten(1)
exten => _5100570,5,Set(CallerIDNumber=15550000000${CALLERID(number)})
exten => _5100570,6,Set(CallerIDNumber=1${CallerIDNumber:-10:10})
exten => _5100570,7,Set(CALLERID(number)=${CallerIDNumber})
exten => _5100570,8,Dial(IAX2/SIP_PROVIDER/CELL_NUMBER,300,tdmWw)
exten => _5100570,9,HangUp()

exten => *,1,Goto(3,1)
exten => *,2,HangUp()

# Have various fun

Jon.




More information about the devel mailing list