PDA

Voir la version complète : Freepbx 2 Lignes externes 1 seule centrale



GiGii
30/01/2018, 14h59
Bonjour à tous, et merci pour le temps que vous prendrez pour me lire.


Je débute dans la téléphonie IP.

Actuellement nous avons une centrale qui gère les appels d'un numéro externe et qui les dispatches en plusieurs numéros en interne.

Nous aimerions ajouter un numéro de ligne extérieur (une deuxième enseigne va ouvrir ses portes dans le même établissement).

Le principe serait : Si on appelle le premier numéro externe, on est redirigé en interne comme d'habitude.
Si on appelle le nouveau numéro ajouté (la ligne externe donc), on est redirigé vers une nouvelle extension créée...

Pouvez-vous m'éclairer sur la démarche à effectuer ?

J'ai regardé sur des forums ou ils parlaient de créer un deuxième SIP Trunk, et d'autres qui suggéraient de récupérer le numéro sur lequel l'appel est fait pour créer une route directement vers cette extension...

Je vous avoue que vu que je débute la dedans et que je reprend le travail d'un IT qui aujourd'hui n'est plus à mes côtés.... Je suis un peu perdu...

Un tout grand merci pour vos pistes.

jean
30/01/2018, 15h08
tout dépend du support sur lequel tu veux recevoir les appels de cette 2 ligne - si tu as déjà des T0 avec passerelle ou carte pour ta première ligne, tu peux commander une sda supplémentaire sur ce T0. Si c'est une ligne analogique, tu ne peux avoir qu'un numéro. Il te faut alors soit commander une 2nde ligne analogique (avec une carte/passerelle si plus de place sur l'existant), ou allez chez un opérateur ip commander un trunk sip (l'équivalent d'un lien téléphonique) avec un numéro.

GiGii
30/01/2018, 16h04
tout dépend du support sur lequel tu veux recevoir les appels de cette 2 ligne - si tu as déjà des T0 avec passerelle ou carte pour ta première ligne, tu peux commander une sda supplémentaire sur ce T0. Si c'est une ligne analogique, tu ne peux avoir qu'un numéro. Il te faut alors soit commander une 2nde ligne analogique (avec une carte/passerelle si plus de place sur l'existant), ou allez chez un opérateur ip commander un trunk sip (l'équivalent d'un lien téléphonique) avec un numéro.

Merci pour votre réponse. Ce ne sont pas des lignes analogique mais un SIP Trunk.

Le principe donc serait de mettre deux trunk sur la même centrale.

Je ne retrouve pas dans l'interface de Freepbx ou retrouver le numéro trunk sur lequel l'appel est passé.

Est-ce possible avec un seul SIP Trunk ?
Ou faut-il demandé un nouveau numéro porté, faire un deuxième SIP Trunk et donc renvoyer dessus. (Sur une même centrale toujours)

Ps : J'espère ne pas commettre d'impair dans mon vocabulaire et que ce que je dis est compréhensible.

jean
30/01/2018, 21h58
si c'est un trunk sip, il suffit juste de déclarer dans les numéros entrant la nouvelle sda qui va etre ajoutée. de mémoire, il y a une rubrique appels entrants ou qq chose du genre sur freepbx

GiGii
31/01/2018, 11h39
si c'est un trunk sip, il suffit juste de déclarer dans les numéros entrant la nouvelle sda qui va etre ajoutée. de mémoire, il y a une rubrique appels entrants ou qq chose du genre sur freepbx

Bonjour,

merci pour votre réponse.

J'ai ajouté une route entrante. J'ai redirigé vers l'extension.

J'ai testé les appels. Mais ça ne redirige pas vers l'extension..

Dans un cas comme dans l'autre ça renvoi vers la ligne principale du numéro déjà existant aujourd'hui.

Donc je récapitule.


J'ai 2 numéros.

Le premier est renvoyé vers mon SIP TRUNK . C'était la situation avant modification.

Sur ovh le deuxième numéro est redirigé vers le SIP TRUNK.
Dans la centrale freepbx au niveau des routes entrantes j'ai ajouté ce deuxième numéro en le renvoyant vers une extension.

Ca n'a pas fonctionné.

J'en suis bloqué la et à court d'idée...

Merci à vous.

jean
31/01/2018, 14h54
- la config ovh a l'air bonne à priori
- il faut se connecter à la console asterisk et regarder les traces, et tenter de comprendre le numéro qui est présenté. Sur XIVO, il y a un bout de code qui permet de pallier à une présentation douteuse par ovh de la ligne appelée. Sur freepbx, je ne sais pas - il faut peut etre faire cette manipulation explicitement - un truc à base de CUT, un recherche sur CUT et OVH devrait donner le résultat

GiGii
31/01/2018, 16h53
Après plusieurs heures de recherche je pense que le problème est au niveau du TRUNK SIP...

Je trouve une information qui parle du DID number qui va permettre de suivre cette route...

Je colle ici la config du TRUNK

Dans le PEER Details :

video=yes
username=0032NUMEROSIP
type=peer
secret=********
restrictcid=no
nat=yes
language=fr
insecure=very
host=sip3.ovh.be
fromuser=0032NUMEROSIP
dtmfmode=auto
context=from-trunk
canreinvite=no
amaflags=default

Dans le User Details :

video=no
username=0032NUMEROSIP
type=peer
secret=********
restrictcid=no
nat=no
language=fr
insecure=very
host=sip3.ovh.be
dtmfmode=auto
disallow=all
context=from-trunk
canreinvite=no
amaflags=default
allow=alaw


Comment faire pour que si l'appel arrive sur le numéro 2 qui est redirigé vers ce SIP TRUNK il tienne compte de ma demande de route... Et non pas de la redirection traditionnelle de ce sip trunk vers l'extension de l'accueil ...

jean
01/02/2018, 18h13
j'ai fait une recherche sur freepbx ovh cut et ca donne plein de trucs:
https://forum.ovh.com/showthread.php/69120-Plusieurs-Num%C3%A9ros-OVH-1-ligne-SIP-Asterisk

GiGii
02/02/2018, 17h59
Hello merci pour la réponse. J'ai regardé le lien mais je n'ai rien trouvé.

En revanche en scrutant les logs je pense que le problème vient juste du fait que le numéro de téléphone qui est transmis par le Trunk est le numéro SIP principal.

Deux possibilités.

La registration key : 003271*******:kA88kH7m@sip3.ovh.be/003271******

est elle bonne ou dois je mettre un autre code qui renvoi le numéro appelé?

L'autre possibilité dans la route d'appel dans le CallID j'ai mis le numéro que je tente de joindre.

Voici un extrait des logs


[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:1] Set("SIP/003271*****-00003c91", "__DIRECTION=INBOUND") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:2] Gosub("SIP/003271*****-00003c91", "sub-record-check,s,1(in,003271*****,dontcare)") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:1] GotoIf("SIP/003271*****-00003c91", "0?initialized") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:2] Set("SIP/003271*****-00003c91", "__REC_STATUS=INITIALIZED") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:3] Set("SIP/003271*****-00003c91", "NOW=1517586486") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:4] Set("SIP/003271*****-00003c91", "__DAY=02") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:5] Set("SIP/003271*****-00003c91", "__MONTH=02") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:6] Set("SIP/003271*****-00003c91", "__YEAR=2018") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:7] Set("SIP/003271*****-00003c91", "__TIMESTR=20180202-164806") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:8] Set("SIP/003271*****-00003c91", "__FROMEXTEN=unknown") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:9] Set("SIP/003271*****-00003c91", "__MON_FMT=wav") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:10] NoOp("SIP/003271*****-00003c91", "Recordings initialized") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:11] ExecIf("SIP/003271*****-00003c91", "0?Set(ARG3=dontcare)") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:12] Set("SIP/003271*****-00003c91", "REC_POLICY_MODE_SAVE=") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:13] ExecIf("SIP/003271*****-00003c91", "0?Set(REC_STATUS=NO)") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:14] GotoIf("SIP/003271*****-00003c91", "2?checkaction") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Goto (sub-record-check,s,17)
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@sub-record-check:17] GotoIf("SIP/003271*****-00003c91", "1?sub-record-check,in,1") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Goto (sub-record-check,in,1)
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [in@sub-record-check:1] NoOp("SIP/003271*****-00003c91", "Inbound Recording Check to 003271*****") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [in@sub-record-check:2] Set("SIP/003271*****-00003c91", "FROMEXTEN=unknown") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [in@sub-record-check:3] ExecIf("SIP/003271*****-00003c91", "13?Set(FROMEXTEN=0032486414057)") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [in@sub-record-check:4] Gosub("SIP/003271*****-00003c91", "recordcheck,1(dontcare,in,003271*****)") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [recordcheck@sub-record-check:1] NoOp("SIP/003271*****-00003c91", "Starting recording check against dontcare") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [recordcheck@sub-record-check:2] Goto("SIP/003271*****-00003c91", "dontcare") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Goto (sub-record-check,recordcheck,3)
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [recordcheck@sub-record-check:3] Return("SIP/003271*****-00003c91", "") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [in@sub-record-check:5] Return("SIP/003271*****-00003c91", "") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:3] Gosub("SIP/003271*****-00003c91", "app-blacklist-check,s,1()") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@app-blacklist-check:1] GotoIf("SIP/003271*****-00003c91", "0?blacklisted") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@app-blacklist-check:2] Set("SIP/003271*****-00003c91", "CALLED_BLACKLIST=1") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [s@app-blacklist-check:3] Return("SIP/003271*****-00003c91", "") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:4] Set("SIP/003271*****-00003c91", "__FROM_DID=003271*****") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:5] Set("SIP/003271*****-00003c91", "CDR(did)=003271*****") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:6] ExecIf("SIP/003271*****-00003c91", "0 ?Set(CALLERID(name)=0032486414057)") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:7] Set("SIP/003271*****-00003c91", "CHANNEL(musicclass)=default") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:8] Set("SIP/003271*****-00003c91", "__MOHCLASS=default") in new stack
[2018-02-02 16:48:06] WARNING[14598][C-00001968] func_channel.c: Unknown or unavailable item requested: 'reversecharge'
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:9] GotoIf("SIP/003271*****-00003c91", "0?macro-hangupcall") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:10] Set("SIP/003271*****-00003c91", "__CALLINGPRES_SV=allowed_not_screened") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:11] Set("SIP/003271*****-00003c91", "CALLERPRES()=allowed_not_screened") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [003271*****@from-trunk:12] Goto("SIP/003271*****-00003c91", "from-did-direct,122,1") in new stack
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Goto (from-did-direct,122,1)
[2018-02-02 16:48:06] VERBOSE[14598][C-00001968] pbx.c: -- Executing [122@from-did-direct:1] GotoIf("SIP/003271*****-00003c91", "0?ext-local,122,1") in new stack


D'avance merci.

jean
02/02/2018, 21h59
chez ovh, la ligne représente le lien entre toi et ovh. elle peut transporter plusieurs numéro. mais ovh ne présente que le numéro (ou s) dans la R-URI, et met le numéro demandé dans le champ To: Il faut aller le chercher avec les fameux CUT (à ma connaissance)
pour en être sur, fais soit un sip set debug on qui montre l'invite recu, soit un sngrep ou ngrep, qui montre aussi ces paquets

J.

fastm3
03/02/2018, 12h12
Avec ovh, c'est un peu plus compliqué que cela. En fait , la prochaine difficulté sera la présentation d'un numero different dynamiquement en utilisant le trunk. Donc autant traiter tout en meme temps vu que la config indiquée ne marchera pas pour les sortants.
En fait, on peut avoir une config qui marche pour les appels mais pour que les entrants ET la presentation dynamique des numeros en sortant fonctionnent avec OVH, il faut vraiment qu'au niveau manager ET au niveau definiton du trunk que cela soit defini comme je l'indique dans le document joint.

Pour les entrants, avec freepbx, oui , on pointera sur un contexte entrant avec au minimum

exten => _.,1,Goto(from-pstn,${CUT(CUT(SIP_HEADER(To),@,1),:,2)},1)


Je joins un lien tempo vers un doc memo que j'avais fait en 2016 et toujours ok aujourd'hui:
https://www.dropbox.com/s/fil7ohcz4at392a/config%20ovh%20pour%20presentation%20numero%20dyna mique%20sur%20ligne%20entreprise%20ovh.pdf?dl=0
Ca s'applique au trunk ovh ou ligne entreprise ovh.

On notera par exemple pour la presentation dynamique des numeros:

Si vous avez placé “/0033974123456 » a la fin du register , ca ne marchera pas/plus.
fromuser=0033974123456 empechera aussi la presentation « dynamique » avec OVH.


Cheers !
Francois.

GiGii
09/02/2018, 15h23
Bonjour un grand merci pour votre réponse (malheureusement je ne l'ai pas vu plutôt)
En finalité nous avons fini par prendre une deuxième ligne SIP afin de mettre en place un deuxième trunk.

Avec ce trunk nous avons mis en place une route entrante et une route sortante.

Malheureusement la route sortante n'affiche pas le bon numéro (ou n'utilise tout bonnement pas le bon trunk...)

Je me penche sur votre doc mais si toutefois les informations que je vous ai mentionné ici vous donnent un gros indice sur la manière de faire...

Car j'ai changé le ROUTE CID sur la route sortante ça n'a rien fait.
j'ai défini le outbound CID dans le trunk et ça n'a rien changé non plus.

J'ai dans le manager ovh également forcé la présentation du numéro lors d'un appel sortant.

Rien n'a fait...

Je me dis que si j'en suis la c'est simplement parce qu'il n'utilise pas le bon trunk en sortie...


D'avance merci.