Asterisk SIP Configuratie voor SpeakUp
Asterisk ondersteunt helaas geen SRV records. Hieronder is een configuratie gegeven die load-balancing en failover bieden, rekening houdend met de beperkingen van Asterisk.
Configuratie
Een voorbeeld sip.conf staat hieronder voor asterisk 1.4. Onderstaande geldt voor de trunk dienst. Voor passport zijn een paar aanpassingen nodig, die staan verderop op deze pagina. De volgende zaken moeten aan de eigen configuratie aangepast worden:
- De 'context' in [speakup]: from-speakup moet overeenkomen met een context in het dialplan.
- De <gebruikersnaam> en <password> worden door SpeakUp opgegeven.
[speakup](!)
type=friend
insecure=invite
pedantic=no
canreinvite=no
nat=no
port=5060
context=from-speakup
qualify=4000
username=<gebruikersnaam>
secret=<password>
disallow=all
allow=alaw
allow=ulaw
allow=gsm
allow=g726
[speakup01](speakup)
host=switch1.sip.speakup.nl
[speakup02](speakup)
host=switch2.sip.speakup.nl
Let op: voor Asterisk versies < 1.4.18 moet vanwege een bug "canreinvite=no" ingesteld zijn.
Dialplan
Door het onderstaande dialplan te gebruiken is het mogelijk voor uitgaande gesprekken failover te hebben, in het geval dat een van de SpeakUp servers onbereikbaar is. Tevens zorgt het dialplan voor een loadbalancing m.b.v. onze Load-Balancing macro.
[to-speakup]
exten = _X.,1,Verbose(1,Outbound call from [${CALLERID(num)}] to [${EXTEN}] via SpeakUp)
exten = _X.,n,Macro(load-balancer,SIP/speakup01/${EXTEN}#SIP/speakup02/${EXTEN},,,)
[from-speakup]
exten = _X.,1,Verbose(Inbound call from [${CALLERID(num)}] to [${EXTEN}] via SpeakUp)
Nummeronderdrukking
Het CallerID nummer moet altijd een geldig nummer bevatten. Nummeronderdrukking kan door als CallerID naam Anonymous te gebruiken:
exten = _X.,n,Set(CALLERID(name)=Anonymous)
Passport
In het geval dat Asterisk van een account op onze Passport dienst gebruik maakt, dient Asterisk zich te registreren bij onze proxy. Uitgaande van bovenstaand sip.conf fragment dienen de volgende wijzigingen gedaan te worden.
In de [general] sectie moet de volgende regel worden toegevoegd:
[general]
register => <username>:<password>@sip.speakup.nl
- Let op: In de [general] sectie mag geen externip geconfigureerd worden (of zie Asterisk achter NAT)
Verder dient elke verwijzing naar switch1 en switch2 gewijzigd te worden in resp. proxy1 en proxy2:
[speakup01](speakup)
host=proxy1.sip.speakup.nl
[speakup02](speakup)v
host=proxy2.sip.speakup.nl

