Consultant Informatique Réseau et Internet

12 décembre 2008

Configurer un serveur freepbx ou trixbox avec un forfait OVH

Vous avez souscrit un forfait telephonie chez OVH et souhaitez le raccorder à votre serveur FreePBX ou trixbox, voici un exemple de configuration qui fonctionne (sur mon installation) pour les appels entrants et sortants.


Si vous souhaitez disposez d’un serveur tribox hébergé avec assistance et conseil inclus, je vous recommande cette offre.

0) Le DID chez OVH

OVH envoi l’information du numéro appelé (il s’agit du DID = Direct Inward Dialing Number) dans l’en-tête “To” des packets SIP.
Ci-dessous un exemple:

—————————————————————————
SIP/2.0 200 OK
Via: SIP/2.0/UDP 91.121.129.17:5060;branch=z9hG4bK-6B1F-46BF6;received=91.121.129.17
From: “0953000000″ <sip:0953000000@sip.ovh.net;user=phone>;tag=22817-WM-007312f4-68a8f7317
To: <sip:015800000000@91.121.120.170;user=phone>;tag=as367b1a52
Call-ID: 22817-NM-007312f3-3edb56003@sip.ovh.net
CSeq: 7496576 BYE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces
Contact: <sip:0033974500000@188.165.70.203>
Content-Length: 0
—————————————————————————-

Par défaut, cette information n’est pas récupérée par Asterisk. Cela devient un problème si vous souhaitez faire  du routage en fonction du numéro appelé. C’est à dire, orienter les appels entrants vers  des postes différents en fonction du numéro appelé (à ne pas confondre avec le numéro appelant = numéro de la personne qui appelle). En d’autres termes, cela revient à créer des numéros d’appel direct vers les différents postes de votre installation.

Dans le cas de numéro supplémentaire souscrit via le Manager OVH dans la rubrique “Numéro”, il convient de rattacher le numéro à une ligne(rubrique “Ligne”).
Pour cela, aller à:

Manager OVH >> Téléphonie >> Numéro >> Configuration du numéro >> Modifier : Choisir Redirection

Puis, via l’item “Redirection “, choisir un numéro de ligne.

Vous devrez ensuite créer un trunk SIP par ligne, et non pas par numéro.

1) Créer un trunk SIP OVH

Il vous faudra remplacer “0033974000000” par votre numéro et “password” par votre password

1.1) Avec un seul numéro entrant (ou plusieurs numéros mais sans routage entrant):

Pour créer un trunk SIP, choisir l’item “Trunks”, et entrer les informations suivantes

OUTBOUND CALLER ID: 0033974000000
Never Override CallerID: yes (cocher)
Maximum Channels: 2 (nombre d’appels simultannés autorisés par l’opérateur)

Trunk Name : ovh0033974000000

PEER Details:

type=peer
host=sip.ovh.net
context=from-trunk
language=fr
insecure=very
username=0033974000000
secret=password
disallow=all
allow=alaw&ulaw
nat=yes
canreinvite=no
dtmfmode=inband
restrictcid=no
amaflags=default
fromuser=0033974000000

USER Context: laisser vide

USER Details: laisser vide

Registration String:
0033974000000:password@sip.ovh.net/0033974000000

Noter le numéro ajouté en fin de chaîne (après le /), il permet de forcer un DID pour les appels entrants, et donc, de les router via la configuration définie dans “Inbound Routes”.

1.2) Avec plusieurs numéros entrants et routage entrant:

Pour commencer, il faut ajouter un context pour extraire le numéro appelé.
Pour cela, ajouter les lignes ci-dessous au fichier /etc/asterisk/extensions_custom.conf:

[custom-get-did-ovh]
exten => s,1,Goto(from-trunk,${CUT(CUT(SIP_HEADER(To),@,1),:,2)},1)

Puis créer un trunk SIP en utilisant le numéro de ligne OVH. Pour cela, choisir l’item “Trunks”, et entrer les informations suivantes

OUTBOUND CALLER ID: 0033974000000
Never Override CallerID: yes (cocher)
Maximum Channels: 2 (nombre d’appels simultannés autorisés par l’opérateur)

Trunk Name : ovh0033974000000

PEER Details:

type=peer
host=sip.ovh.net
context=
custom-get-did-ovh
language=fr
insecure=very
username=0033974000000
secret=password
disallow=all
allow=alaw&ulaw
nat=yes
canreinvite=no
dtmfmode=inband
restrictcid=no
amaflags=default
fromuser=0033974000000

USER Context: laisser vide

USER Details: laisser vide

Registration String:
0033974000000:password@sip.ovh.net

Pour information, les différences avec la cas précédent sont:

- Le context context=from-trunkest remplacé par “context=custom-get-did-ovh”,
- Dans la “Registration String” le numéro appelé après le “/” est supprimé.

2) Créer une route par numéros pour les appels entrants:

Cette fois, vous devez créer une route pour chaque numéros (lignes et numéros supplémentaires)

  • choix “inbound Routes”
  • cliquer usr “Add Incoming Route”
  • entrer un nom dans “Description”
  • entrer le DID dans “DID number”.
  • choisir une destination
  • Valider

Le DID étant le numéro spécifié après le “/” dans la configuration du trunk, dans le champ “Registration String”, ou extrait des packets SIP. A noter, qu’à ce jour (Décembre 2009) il faut utiliser le format international pour les numéros de lignes (0033XXXXXXXXX), et le format national pour les numeros supplémentaire (01XXXXXXXX). Pourquoi ?

3) En cas de problème

Se connecter en SSH au serveur et de se connecter à asterisk:

/usr/sbin/asterisk -cvvvvvvvr

ceci fait, en principe, vous devriez voir les traces de vos tentatives d’appels entrants et sortants:

Exemple de log pour un appel sortant:

– Executing [80663960000@from-internal:1] Macro(”SIP/200-08213b00″, “user-callerid|SKIPTTL|”) in new stack
– Executing [s@macro-user-callerid:1] NoOp(”SIP/200-08213b00″, “user-callerid: device 200″) in new stack
– Executing [s@macro-user-callerid:2] Set(”SIP/200-08213b00″, “AMPUSER=200″) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(”SIP/200-08213b00″, “0?report”) in new stack
– Executing [s@macro-user-callerid:4] ExecIf(”SIP/200-08213b00″, “1|Set|REALCALLERIDNUM=200″) in new stack
– Executing [s@macro-user-callerid:5] NoOp(”SIP/200-08213b00″, “REALCALLERIDNUM is 200″) in new stack
– Executing [s@macro-user-callerid:6] Set(”SIP/200-08213b00″, “AMPUSER=200″) in new stack
– Executing [s@macro-user-callerid:7] Set(”SIP/200-08213b00″, “AMPUSERCIDNAME=Phil Ten SIP”) in new stack
– Executing [s@macro-user-callerid:8] GotoIf(”SIP/200-08213b00″, “0?report”) in new stack
– Executing [s@macro-user-callerid:9] Set(”SIP/200-08213b00″, “AMPUSERCID=200″) in new stack
– Executing [s@macro-user-callerid:10] Set(”SIP/200-08213b00″, “CALLERID(all)=”Phil Ten SIP” <200>”) in new stack
– Executing [s@macro-user-callerid:11] Set(”SIP/200-08213b00″, “REALCALLERIDNUM=200″) in new stack
– Executing [s@macro-user-callerid:12] ExecIf(”SIP/200-08213b00″, “0|Set|CHANNEL(language)=”) in new stack
– Executing [s@macro-user-callerid:13] NoOp(”SIP/200-08213b00″, “TTL:  ARG1: SKIPTTL”) in new stack
– Executing [s@macro-user-callerid:14] GotoIf(”SIP/200-08213b00″, “1?continue”) in new stack
– Goto (macro-user-callerid,s,23)
– Executing [s@macro-user-callerid:23] NoOp(”SIP/200-08213b00″, “Using CallerID “Phil Ten SIP” <200>”) in new stack
– Executing [80663960000@from-internal:2] Set(”SIP/200-08213b00″, “_NODEST=”) in new stack
– Executing [80663960000@from-internal:3] Macro(”SIP/200-08213b00″, “record-enable|200|OUT|”) in new stack
– Executing [s@macro-record-enable:1] GotoIf(”SIP/200-08213b00″, “0?2:4″) in new stack
– Goto (macro-record-enable,s,4)
– Executing [s@macro-record-enable:4] AGI(”SIP/200-08213b00″, “recordingcheck|20081130-161038|1228057838.56″) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20081130-161038|1228057838.56: Outbound recording not enabled
– AGI Script recordingcheck completed, returning 0
– Executing [s@macro-record-enable:5] NoOp(”SIP/200-08213b00″, “No recording needed”) in new stack
– Executing [80663960000@from-internal:4] Macro(”SIP/200-08213b00″, “dialout-trunk|4|0663960000||”) in new stack
– Executing [s@macro-dialout-trunk:1] Set(”SIP/200-08213b00″, “DIAL_TRUNK=4″) in new stack
– Executing [s@macro-dialout-trunk:2] ExecIf(”SIP/200-08213b00″, “0|Authenticate|”) in new stack
– Executing [s@macro-dialout-trunk:3] GotoIf(”SIP/200-08213b00″, “0?disabletrunk|1″) in new stack
– Executing [s@macro-dialout-trunk:4] Set(”SIP/200-08213b00″, “DIAL_NUMBER=0663960000″) in new stack
– Executing [s@macro-dialout-trunk:5] Set(”SIP/200-08213b00″, “DIAL_TRUNK_OPTIONS=tT”) in new stack
– Executing [s@macro-dialout-trunk:6] Set(”SIP/200-08213b00″, “GROUP()=OUT_4″) in new stack
– Executing [s@macro-dialout-trunk:7] GotoIf(”SIP/200-08213b00″, “0?nomax”) in new stack
– Executing [s@macro-dialout-trunk:8] GotoIf(”SIP/200-08213b00″, “0?chanfull”) in new stack
– Executing [s@macro-dialout-trunk:9] GotoIf(”SIP/200-08213b00″, “0?skipoutcid”) in new stack
– Executing [s@macro-dialout-trunk:10] Set(”SIP/200-08213b00″, “DIAL_TRUNK_OPTIONS=tT”) in new stack
– Executing [s@macro-dialout-trunk:11] Macro(”SIP/200-08213b00″, “outbound-callerid|4″) in new stack
– Executing [s@macro-outbound-callerid:1] ExecIf(”SIP/200-08213b00″, “0|SetCallerPres|”) in new stack
– Executing [s@macro-outbound-callerid:2] GotoIf(”SIP/200-08213b00″, “1?start”) in new stack
– Goto (macro-outbound-callerid,s,4)
– Executing [s@macro-outbound-callerid:4] NoOp(”SIP/200-08213b00″, “REALCALLERIDNUM is 200″) in new stack
– Executing [s@macro-outbound-callerid:5] GotoIf(”SIP/200-08213b00″, “1?normcid”) in new stack
– Goto (macro-outbound-callerid,s,10)
– Executing [s@macro-outbound-callerid:10] Set(”SIP/200-08213b00″, “USEROUTCID=0170617466″) in new stack
– Executing [s@macro-outbound-callerid:11] Set(”SIP/200-08213b00″, “EMERGENCYCID=”) in new stack
– Executing [s@macro-outbound-callerid:12] Set(”SIP/200-08213b00″, “TRUNKOUTCID=0033974000000″) in new stack
– Executing [s@macro-outbound-callerid:13] GotoIf(”SIP/200-08213b00″, “1?trunkcid”) in new stack
– Goto (macro-outbound-callerid,s,17)
– Executing [s@macro-outbound-callerid:17] GotoIf(”SIP/200-08213b00″, “0?usercid”) in new stack
– Executing [s@macro-outbound-callerid:18] Set(”SIP/200-08213b00″, “CALLERID(all)=0033974000000″) in new stack
– Executing [s@macro-outbound-callerid:19] GotoIf(”SIP/200-08213b00″, “0?report”) in new stack
– Executing [s@macro-outbound-callerid:20] Set(”SIP/200-08213b00″, “CALLERID(all)=0170617466″) in new stack
– Executing [s@macro-outbound-callerid:21] GotoIf(”SIP/200-08213b00″, “1?report:hidecid”) in new stack
– Goto (macro-outbound-callerid,s,23)
– Executing [s@macro-outbound-callerid:23] NoOp(”SIP/200-08213b00″, “CallerID set to “” <0170617466>”) in new stack
– Executing [s@macro-dialout-trunk:12] AGI(”SIP/200-08213b00″, “fixlocalprefix”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
– AGI Script fixlocalprefix completed, returning 0
– Executing [s@macro-dialout-trunk:13] Set(”SIP/200-08213b00″, “OUTNUM=0663960000″) in new stack
– Executing [s@macro-dialout-trunk:14] Set(”SIP/200-08213b00″, “custom=SIP/ovh974000000″) in new stack
– Executing [s@macro-dialout-trunk:15] GotoIf(”SIP/200-08213b00″, “1?gocall”) in new stack
– Goto (macro-dialout-trunk,s,17)
– Executing [s@macro-dialout-trunk:17] Macro(”SIP/200-08213b00″, “dialout-trunk-predial-hook|”) in new stack
– Executing [s@macro-dialout-trunk:18] GotoIf(”SIP/200-08213b00″, “0?bypass|1″) in new stack
– Executing [s@macro-dialout-trunk:19] GotoIf(”SIP/200-08213b00″, “0?customtrunk”) in new stack
– Executing [s@macro-dialout-trunk:20] Dial(”SIP/200-08213b00″, “SIP/ovh974000000/0663960000|300|tT”) in new stack
– Called ovh974000000/0663960000
– SIP/ovh974000000-0826ce28 is ringing
– SIP/ovh974000000-0826ce28 is making progress passing it to SIP/200-08213b00
– SIP/ovh974000000-0826ce28 is making progress passing it to SIP/200-08213b00
== Spawn extension (macro-dialout-trunk, s, 20) exited non-zero on ‘SIP/200-08213b00′ in macro ‘dialout-trunk’
== Spawn extension (macro-dialout-trunk, s, 20) exited non-zero on ‘SIP/200-08213b00′
– Executing [h@macro-dialout-trunk:1] Macro(”SIP/200-08213b00″, “hangupcall|”) in new stack
– Executing [s@macro-hangupcall:1] ResetCDR(”SIP/200-08213b00″, “w”) in new stack
– Executing [s@macro-hangupcall:2] NoCDR(”SIP/200-08213b00″, “”) in new stack
– Executing [s@macro-hangupcall:3] GotoIf(”SIP/200-08213b00″, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,6)
– Executing [s@macro-hangupcall:6] GotoIf(”SIP/200-08213b00″, “1?skipblkvm”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] GotoIf(”SIP/200-08213b00″, “1?theend”) in new stack
– Goto (macro-hangupcall,s,11)
– Executing [s@macro-hangupcall:11] Hangup(”SIP/200-08213b00″, “”) in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘SIP/200-08213b00′ in macro ‘hangupcall’
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘SIP/200-08213b00′
————————————–

exemple de log pour un appel entrant:
– Executing [0033974000000@from-trunk:1] Set(”SIP/0033974000000-41062558″, “__FROM_DID=0033974000000″) in new stack
– Executing [0033974000000@from-trunk:2] Gosub(”SIP/0033974000000-41062558″, “app-blacklist-check|s|1″) in new stack
– Executing [s@app-blacklist-check:1] LookupBlacklist(”SIP/0033974000000-41062558″, “”) in new stack
– Executing [s@app-blacklist-check:2] GotoIf(”SIP/0033974000000-41062558″, “0?blacklisted”) in new stack
– Executing [s@app-blacklist-check:3] Return(”SIP/0033974000000-41062558″, “”) in new stack
– Executing [0033974000000@from-trunk:3] GotoIf(”SIP/0033974000000-41062558″, “1 ?cidok”) in new stack
– Goto (from-trunk,0033974000000,5)
– Executing [0033974000000@from-trunk:5] NoOp(”SIP/0033974000000-41062558″, “CallerID is “0953000000″ <0953000000>”) in new stack
– Executing [0033974000000@from-trunk:6] Set(”SIP/0033974000000-41062558″, “__CALLINGPRES_SV=allowed_not_screened”) in new stack
– Executing [0033974000000@from-trunk:7] SetCallerPres(”SIP/0033974000000-41062558″, “allowed_not_screened”) in new stack
– Executing [0033974000000@from-trunk:8] Goto(”SIP/0033974000000-41062558″, “from-did-direct|200|1″) in new stack
– Goto (from-did-direct,200,1)
– Executing [200@from-did-direct:1] Macro(”SIP/0033974000000-41062558″, “exten-vm|200|200″) in new stack
– Executing [s@macro-exten-vm:1] Macro(”SIP/0033974000000-41062558″, “user-callerid”) in new stack
– Executing [s@macro-user-callerid:1] NoOp(”SIP/0033974000000-41062558″, “user-callerid: 0953000000 0953000000″) in new stack
– Executing [s@macro-user-callerid:2] Set(”SIP/0033974000000-41062558″, “AMPUSER=0953000000″) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(”SIP/0033974000000-41062558″, “0?report”) in new stack
– Executing [s@macro-user-callerid:4] ExecIf(”SIP/0033974000000-41062558″, “1|Set|REALCALLERIDNUM=0953000000″) in new stack
– Executing [s@macro-user-callerid:5] NoOp(”SIP/0033974000000-41062558″, “REALCALLERIDNUM is 0953000000″) in new stack
– Executing [s@macro-user-callerid:6] Set(”SIP/0033974000000-41062558″, “AMPUSER=”) in new stack
– Executing [s@macro-user-callerid:7] Set(”SIP/0033974000000-41062558″, “AMPUSERCIDNAME=”) in new stack
– Executing [s@macro-user-callerid:8] GotoIf(”SIP/0033974000000-41062558″, “1?report”) in new stack
– Goto (macro-user-callerid,s,13)
– Executing [s@macro-user-callerid:13] NoOp(”SIP/0033974000000-41062558″, “TTL:  ARG1: 200″) in new stack
– Executing [s@macro-user-callerid:14] GotoIf(”SIP/0033974000000-41062558″, “0?continue”) in new stack
– Executing [s@macro-user-callerid:15] Set(”SIP/0033974000000-41062558″, “__TTL=64″) in new stack
– Executing [s@macro-user-callerid:16] GotoIf(”SIP/0033974000000-41062558″, “1?continue”) in new stack
– Goto (macro-user-callerid,s,23)
– Executing [s@macro-user-callerid:23] NoOp(”SIP/0033974000000-41062558″, “Using CallerID “0953000000″ <0953000000>”) in new stack
– Executing [s@macro-exten-vm:2] Set(”SIP/0033974000000-41062558″, “RingGroupMethod=none”) in new stack
– Executing [s@macro-exten-vm:3] Set(”SIP/0033974000000-41062558″, “VMBOX=200″) in new stack
– Executing [s@macro-exten-vm:4] Set(”SIP/0033974000000-41062558″, “EXTTOCALL=200″) in new stack
– Executing [s@macro-exten-vm:5] Set(”SIP/0033974000000-41062558″, “CFUEXT=”) in new stack
– Executing [s@macro-exten-vm:6] Set(”SIP/0033974000000-41062558″, “CFBEXT=”) in new stack
– Executing [s@macro-exten-vm:7] Set(”SIP/0033974000000-41062558″, “RT=15″) in new stack
– Executing [s@macro-exten-vm:8] Macro(”SIP/0033974000000-41062558″, “record-enable|200|IN”) in new stack
– Executing [s@macro-record-enable:1] GotoIf(”SIP/0033974000000-41062558″, “0?2:4″) in new stack
– Goto (macro-record-enable,s,4)
– Executing [s@macro-record-enable:4] AGI(”SIP/0033974000000-41062558″, “recordingcheck|20081212-114016|1229078416.204″) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20081212-114016|1229078416.204: Inbound recording not enabled
– AGI Script recordingcheck completed, returning 0
– Executing [s@macro-record-enable:5] NoOp(”SIP/0033974000000-41062558″, “No recording needed”) in new stack
– Executing [s@macro-exten-vm:9] Macro(”SIP/0033974000000-41062558″, “dial|15|tT|200″) in new stack
– Executing [s@macro-dial:1] GotoIf(”SIP/0033974000000-41062558″, “1?dial”) in new stack
– Goto (macro-dial,s,3)
– Executing [s@macro-dial:3] AGI(”SIP/0033974000000-41062558″, “dialparties.agi”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi
dialparties.agi: Starting New Dialparties.agi
== Parsing ‘/etc/asterisk/manager.conf’: Found
== Parsing ‘/etc/asterisk/manager_additional.conf’: Found
== Parsing ‘/etc/asterisk/manager_custom.conf’: Found
== Manager ‘admin’ logged on from 127.0.0.1
dialparties.agi: Caller ID name is ‘0953000000′ number is ‘0953000000′
dialparties.agi: USE_CONFIRMATION:  ‘FALSE’
dialparties.agi: RINGGROUP_INDEX:   ”
dialparties.agi: Methodology of ring is  ‘none’
–  dialparties.agi: Added extension 200 to extension map
–  dialparties.agi: Extension 200 cf is disabled
–  dialparties.agi: Extension 200 do not disturb is disabled
>  dialparties.agi: extnum 200 has:  cw: 1; hascfb: 0 [] hascfu: 0 []
>  dialparties.agi: ExtensionState: 0
–  dialparties.agi: dbset CALLTRACE/200 to 0953000000
–  dialparties.agi: Filtered ARG3: 200
== Manager ‘admin’ logged off from 127.0.0.1
– AGI Script dialparties.agi completed, returning 0
– Executing [s@macro-dial:7] Dial(”SIP/0033974000000-41062558″, “SIP/200|15|tT”) in new stack
– Called 200
– SIP/200-0820f360 is ringing
– Got SIP response 486 “Busy Here” back from 82.234.125.20
– SIP/200-0820f360 is busy
== Everyone is busy/congested at this time (1:1/0/0)
– Executing [s@macro-dial:8] Set(”SIP/0033974000000-41062558″, “DIALSTATUS=BUSY”) in new stack
– Executing [s@macro-exten-vm:10] Set(”SIP/0033974000000-41062558″, “SV_DIALSTATUS=BUSY”) in new stack
– Executing [s@macro-exten-vm:11] GosubIf(”SIP/0033974000000-41062558″, “0?docfu|1″) in new stack
– Executing [s@macro-exten-vm:12] GosubIf(”SIP/0033974000000-41062558″, “0?docfb|1″) in new stack
– Executing [s@macro-exten-vm:13] Set(”SIP/0033974000000-41062558″, “DIALSTATUS=BUSY”) in new stack
– Executing [s@macro-exten-vm:14] NoOp(”SIP/0033974000000-41062558″, “Voicemail is 200″) in new stack
– Executing [s@macro-exten-vm:15] GotoIf(”SIP/0033974000000-41062558″, “0?s-BUSY|1″) in new stack
– Executing [s@macro-exten-vm:16] NoOp(”SIP/0033974000000-41062558″, “Sending to Voicemail box 200″) in new stack
– Executing [s@macro-exten-vm:17] Macro(”SIP/0033974000000-41062558″, “vm|200|BUSY”) in new stack
– Executing [s@macro-vm:1] Macro(”SIP/0033974000000-41062558″, “user-callerid|SKIPTTL”) in new stack
– Executing [s@macro-user-callerid:1] NoOp(”SIP/0033974000000-41062558″, “user-callerid: 0953000000 0953000000″) in new stack
– Executing [s@macro-user-callerid:2] Set(”SIP/0033974000000-41062558″, “AMPUSER=0953000000″) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(”SIP/0033974000000-41062558″, “0?report”) in new stack
– Executing [s@macro-user-callerid:4] ExecIf(”SIP/0033974000000-41062558″, “0|Set|REALCALLERIDNUM=0953000000″) in new stack
– Executing [s@macro-user-callerid:5] NoOp(”SIP/0033974000000-41062558″, “REALCALLERIDNUM is 0953000000″) in new stack
– Executing [s@macro-user-callerid:6] Set(”SIP/0033974000000-41062558″, “AMPUSER=”) in new stack
– Executing [s@macro-user-callerid:7] Set(”SIP/0033974000000-41062558″, “AMPUSERCIDNAME=”) in new stack
– Executing [s@macro-user-callerid:8] GotoIf(”SIP/0033974000000-41062558″, “1?report”) in new stack
– Goto (macro-user-callerid,s,13)
– Executing [s@macro-user-callerid:13] NoOp(”SIP/0033974000000-41062558″, “TTL: 64 ARG1: SKIPTTL”) in new stack
– Executing [s@macro-user-callerid:14] GotoIf(”SIP/0033974000000-41062558″, “1?continue”) in new stack
– Goto (macro-user-callerid,s,23)
– Executing [s@macro-user-callerid:23] NoOp(”SIP/0033974000000-41062558″, “Using CallerID “0953000000″ <0953000000>”) in new stack
– Executing [s@macro-vm:2] Set(”SIP/0033974000000-41062558″, “VMGAIN=”"”) in new stack
– Executing [s@macro-vm:3] GotoIf(”SIP/0033974000000-41062558″, “1?vmx|1″) in new stack
– Goto (macro-vm,vmx,1)
– Executing [vmx@macro-vm:1] GotoIf(”SIP/0033974000000-41062558″, “0?s-BUSY|1″) in new stack
– Executing [vmx@macro-vm:2] Set(”SIP/0033974000000-41062558″, “MODE=busy”) in new stack
– Executing [vmx@macro-vm:3] GotoIf(”SIP/0033974000000-41062558″, “1?notdirect”) in new stack
– Goto (macro-vm,vmx,5)
– Executing [vmx@macro-vm:5] NoOp(”SIP/0033974000000-41062558″, “Checking if ext 200 is enabled: disabled”) in new stack
– Executing [vmx@macro-vm:6] GotoIf(”SIP/0033974000000-41062558″, “1?s-BUSY|1″) in new stack
– Goto (macro-vm,s-BUSY,1)
– Executing [s-BUSY@macro-vm:1] NoOp(”SIP/0033974000000-41062558″, “BUSY voicemail”) in new stack
– Executing [s-BUSY@macro-vm:2] Macro(”SIP/0033974000000-41062558″, “get-vmcontext|200″) in new stack
– Executing [s@macro-get-vmcontext:1] Set(”SIP/0033974000000-41062558″, “VMCONTEXT=default”) in new stack
– Executing [s@macro-get-vmcontext:2] GotoIf(”SIP/0033974000000-41062558″, “0?200:300″) in new stack
– Goto (macro-get-vmcontext,s,300)
– Executing [s@macro-get-vmcontext:300] NoOp(”SIP/0033974000000-41062558″, “”) in new stack
– Executing [s-BUSY@macro-vm:3] VoiceMail(”SIP/0033974000000-41062558″, “200@default|b“) in new stack
– <SIP/0033974000000-41062558> Playing ‘/var/spool/asterisk/voicemail/default/200/busy’ (language ‘fr’)
== Spawn extension (macro-vm, s-BUSY, 3) exited non-zero on ‘SIP/0033974000000-41062558′ in macro ‘vm’
== Spawn extension (macro-vm, s-BUSY, 3) exited non-zero on ‘SIP/0033974000000-41062558′ in macro ‘exten-vm’
== Spawn extension (macro-vm, s-BUSY, 3) exited non-zero on ‘SIP/0033974000000-41062558′

Vous pouvez egalement pour obtenir plus d’information en activant le mode debug:

sip set debug peer <peername>

4) Firewall et gestion de bande passante

Bien que cela sorte du cadre de cet article, je rappelle qu’il est très important de protéger votre serveur Asterisk par un firewall.

D’autre part, dans les cas ou l’accès Internet coté client SIP est chargé, il est conseiller de mettre en place une gestion de la bande passante donnant le priorité au traffic avec le serveur Asterisk.

Un commentaire

  1. Etes vous satisfait du fonctionnement des comptes SIP d’OVH ? la fiabilité est elle bonne ?

    Commentaire par Grillon — 28 octobre 2009 @ 10:13

Flux RSS des commentaires de cet article.

Désolé, les commentaires sont fermés pour le moment.

Propulsé par WordPress