PDA

Voir la version complète : Call ID



kuusou
07/05/2013, 14h51
Bonjour,

J'ai un problème pour afficher le call ID sur mes téléphones.
Mon FXO est un spa-3102, et son syslog indique bien qu'il reçoit correctement l'id de l'appelant.
FXO:Start CNDD
FXO:CNDD Name= Phone=06xxxxxxxx
puis il semble le perdre FXO:CNDD name=, number=06xxxxxxxx
pour finalement le récuperer: caller id parse number=06xxxxxxxx
puis appelle mon serveur asterisk : Calling:@monserveur.fr:0

Coté du CLI d'asterisk,
je vois ceci : Executing [s@incoming:1] NoOp("SIP/SPA-3102-PSTN-00000010", "") in new stack
J'ai l'impression qu'il ne récupere pas l'ID...


J'aimerai savoir si mon problème d'ID se situe avant l'envoi de l'id au serveur asterisk, ou à la réception. Sinon , cela pourrait il être lié à mon extensions.conf qui contient :

[incoming]
exten => s,1,NoOp(${CALLERID})
exten => s,n,Dial(SIP/6001, 20)


Merci de vos conseils.

jean
07/05/2013, 15h06
- fais un ngrep/tcpdump/wireshark (au choix) sur l'interface et tu verras ce qui arrive.

kuusou
07/05/2013, 18h45
Merci Jean pour cette piste. Voici ce qu'il en retourne avec ngrep



NUM_TEL_APPELANT téléphone entrant de l'appelant
XXX.XXX.XXX.XXX publique du SPA-3102
192.168.1.230 local du SPA-3102
YYY.YYY.YYY.YYY = IP du serveur asterisk


U YYY.YYY.YYY.YYY:5060 -> XXX.XXX.XXX.XXX:1027
INVITE sip:6001@192.168.1.230:5060 SIP/2.0..Via: SIP/2.0/UDP YYY.YYY.YYY.YYY:5060;branch=z9hG4bK086e75c;rport.. Max-Forwards: 70..From:
"PSTN Line" <sip:NUM_TEL_APPELANT@YYY.YYY.YYY.YYY>;tag=as7199852c..To: <sip:6001@192.168.1.230:5060>..Contact: <sip:NUM_TEL_APPELANT@YYY.YYY.YYY.YYY:5
060>..Call-ID: 0c3cc91f79130db94905ac61a5c938d@YYY.YYY.YYY.YYY:50 60..CSeq: 102 INVITE..User-Agent: Asterisk PBX 1.8.13.1~dfsg-1ubuntu2.
.Date: Tue, 07 May 2013 14:29:14 GMT..Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH..Supported: re
places, timer..Content-Type: application/sdp..Content-Length: 251....v=0..o=root 68624139 86284139 IN IP4 YYY.YYY.YYY.YYY..s=Asterisk
PBX 1.8.13.1~dfsg-1ubuntu2..c=IN IP4 YYY.YYY.YYY.YYY..t=0 0..m=audio 12888 RTP/AVP 0 101..a=rtpmap:0 PCMU/8000..a=rtpmap:101 telephone-e
vent/8000..a=fmtp:101 0-16..a=ptime:20..a=sendrecv..

U XXX.XXX.XXX.XXX:1027 -> YYY.YYY.YYY.YYY:5060
SIP/2.0 100 Trying..To: <sip:6001@192.168.1.230:5060>..From: "PSTN Line" <sip:NUM_TEL_APPELANT@YYY.YYY.YYY.YYY>;tag=as719952c..Call-ID: 0ccc
91f79130db949025ac6a5c938d@YYY.YYY.YYY.YYY:5060..C Seq: 102 INVITE..Via: SIP/2.0/UDP YYY.YYY.YYY.YYY:5060;branch=z9hG4K508675c..Server:
Linksys/SPA3102-5.2.13(GW002)..Content-Length: 0....

U XXX.XXX.XXX.XXX:1027 -> YYY.YYY.YYY.YYY:5060
SIP/2.0 180 Ringing..To: <sip:6001@192.168.1.230:5060>;tag=9a654d17a58dbc3fi0..From: "PSTN Line" <sip:NUM_TEL_APPELANT@YYY.YYY.YYY.YYY>;tag=as
719982c..Call-ID: 0c3cc91f79130db949025ac61ac938d@YYY.YYY.YYY.YYY:50 60..CSeq: 102 INVITE..Via: SIP/2.0/UDP YYY.YYY.YYY.YYY:5060;branch=z
9hG4bK506e75c..Contact: 6001 <sip:6001@192.168.1.230:5060>..Server: Linksys/SPA3102-5.2.13(GW002)..Remote-Party-ID: 6001 <sip:6001@ti
nda.fr>;screen=yes;party=called..Content-Length: 0....

U YYY.YYY.YYY.YYY:5060 -> XXX.XXX.XXX.XXX:5061
SIP/2.0 180 Ringing..Via: SIP/2.0/UDP 192.168.1.230:5061;branch=z9hGbK-b52c6df;received=XXX.XXX.XXX.XXX;rport=5061..From: PSTN Line <si
p:NUM_TEL_APPELANT@tinda.fr>;tag=3065f7146725257o1..To: <sip:YYY.YYY.YYY.YYY>;tag=as3517fe4..Call-ID: 6b9f98-bd7a23a3@192.168.1.230..CSeq:
102 INVITE..Server: Asterisk PBX 1.8.13.1~dfsg-1ubuntu2..Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUB
LISH..Supported: replaces, timer..Contact: <sip:s@YYY.YYY.YYY.YYY:5060>..Content-Length: 0....



Dur pour moi de tirer une quelconque conclusion si ce n'est que le NUM_TEL_APPELANT arrive bien sur mon serveur asterisk, ou tout au moins figure dans les paquets reçus.
Serait ce un problème de version asterisk (je suis avec le paquet le plus récent sur ubuntu 1.8.13, mais je pense compiler 1.8.21), ou un problème de paramètre dans un de mes fichier conf ?

Merci en tout cas, Jean, pour votre retour.

jean
07/05/2013, 19h42
la conclusion, c'est que je suis une nouille !!! :pt1cable::pt1cable::pt1cable:

il faut utiliser: ${CALLERID(num)} et ${CALLERID(name)}

désolé de t'avoir fait prendre des traces !!

kuusou
07/05/2013, 20h36
la conclusion, c'est que je suis une nouille !!! :pt1cable::pt1cable::pt1cable:

il faut utiliser: ${CALLERID(num)} et ${CALLERID(name)}

désolé de t'avoir fait prendre des traces !!

A la place de mon NoOp(${CALLERID}) ? Ou autre part ?

jean
07/05/2013, 20h51
Oui, quand tu as besoin du caller id, le numéro est dans ${CALLERID(num)} et le nom dans ${CALLERID(name)}

Généralement, j'utilise Verbose, mais c'est une question de gout... donc ca donnerait:
exten => s,1,Verbose(1,Caller Id: ${CALLERID(num)} - ${CALLERID(name)} )
etc...

J.
ps: plutot que exten => s,n, utilise same => n,
c'est plus facile ensuite pour copier/coller entre extensions et plus facilement lisible - mais à nouveau, l'égout et les couleurs, comme disait coluche !

kuusou
08/05/2013, 01h11
Merci Jean, j'avance doucement :)

Voici ce que me retourne le verbose :
Executing [s@incoming:1] Verbose("SIP/SPA-3102-PSTN-00000006", "1,Caller Id: SPA-3102-PSTN - PSTN ") in new stack

le num : SPA-3102-PSTN
le name : PSTN

mais pas de numéro de tel.
Ai je loupé quelque chose ?
La version d'asterisk peut elle être la source du problème ?

jean
08/05/2013, 02h19
- tu es sur une 1.8.13.1, ca doit pas etre un pbm

- essaie de regarder: ${CUT(CUT(SIP_HEADER(To),@,1),:,2) }
et ${CUT(CUT(SIP_HEADER(From),@,1),:,2) }
et ${CUT(CUT(SIP_HEADER(Contact),@,1),:,2) }

(pas sur que tout marche)

kuusou
08/05/2013, 02h35
- tu es sur une 1.8.13.1, ca doit pas etre un pbm

- essaie de regarder: ${CUT(CUT(SIP_HEADER(To),@,1),:,2) }
et ${CUT(CUT(SIP_HEADER(From),@,1),:,2) }
et ${CUT(CUT(SIP_HEADER(Contact),@,1),:,2) }

(pas sur que tout marche)

Je suis en train de compiler et installer la 1.8.21 sensé être plus aboutie. J'essayerai dès demain la manipulation après avoir réintégré mes config. J'ai encore passé toute la soirée sur le problème ! pffff

kuusou
08/05/2013, 03h16
Alors après reinstallation de la 1.8.21, et avec

exten => s,1,Verbose(1,Caller Id: ${CALLERID(num)} - ${CALLERID(name)} ) j'obtiens bien sous le CLId'asterisk le numéro de l'appelant grâce au ${CALLERID(num)} et c'est deja un progrès :)

Du coup, comment l'intégrer dans mon dial ?
voila ce que j'ai actuelement et rien ne s'affiche:


[incoming]
exten => s,1,Verbose(1,Caller Id: ${CALLERID(num)} - ${CALLERID(name)} )
exten => s,n,Dial(SIP/6001, 20)

Merci pour ton aide

jean
08/05/2013, 03h55
la je suis bluffé.... t'avais bien fait un dialplan reload ??? ca me parait impossible un tel bug !

le no qui s'affiche ? sur le poste ? là, il doit s'afficher !!! quel type de poste ?

Note - à choisir une version d'asterisk pour démarrer, la 11 serait mon choix (https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions) c'est une LTS, elle intègre une gateway fax T38-T30, et c'est la dernière, donc tant qu'à faire !

sinon :whistle: la 13, qui sera aussi LTS avec le chan_sip refait, mais elle sort qu'en 2014 !!!

kuusou
08/05/2013, 09h53
et bien non, je me suis mal exprimé. Le numéro est visible dans le CLI, à la place de la variable Caller Id: ${CALLERID(num)}

Seulement elle ne passe pas sur le telephone. donc je me disais qu'il y avait un code pour l'afficher durant l'appel ?

olppp
08/05/2013, 12h29
Bonjour,

regarde sur le spa, sur l'interface web les informations sur les com. en cours sont affichées : uri callid codec etc...
il faut souvent rafraîchir la page.
si les infos sont corrects, c'est dans les réglages pour le poste sur le spa que se situe le problème.

kuusou
08/05/2013, 14h27
A priori coté du SPA tout semble normal, et via Syslog je vois bien transiter le numéro de l'appelant.

Coté serveur Asterix, le CLI affiche bien le numéro de l'appelant en verbose dans la variable ${CALLERID(num)}.

Puisque je peux la récupérer, n'y a t'il pas moyen d'afficher ?

olppp
08/05/2013, 14h32
quel est ton client ?
poste sip, softphone, poste analogique sur ata/gateway

kuusou
08/05/2013, 17h05
quel est ton client ?
poste sip, softphone, poste analogique sur ata/gateway

Que des posts analogiques sur des PAP2T et SPA-3102.

Voila mon schema :
Appel -> FreeboxV6 -> SPA-3102 -> Server Asterisk 1,8,21 -> SPA-3102 (ligne sip1) + 3xPAP2T (soit 3x2sip)

Cela colle non ?

Je re-souligne que le CLI d'asterisk recoit bien la variable du numéro. C'est le renvoi ou l'affichage qui me bloque

olppp
08/05/2013, 17h31
je n'ai pas de papt2 en service actuellement, si la configuration est similaire au spa-3102 compte FXS, il faut activer les services supplémentaires et régler les paramètres CALLER ID Method, CALLER ID FSK Standard en fonction du téléphone.
les paramètres d'impédance peuvent aussi jouer

kuusou
08/05/2013, 21h22
Et bien ca m'a donné une idée, j'ai logué le compte sip sur un softphone voir si les infos arrivaient bien et elles arrivent...

c'est donc la partie finale de la chaine qui ne récupère pas les infos :
ni les SPA-3102 , ni les PAP2T...
Et sur la partie ligne 1 du SPA ou ligne 1 et 2 du PAP2T je ne trouve pas trop ou paramétrer cette réception...

olppp
08/05/2013, 22h56
es-tu sur que tes postes analogiques supportent la présentation du numéro/du nom ?
comme dit précédemment tu peux voir les informations sur une com. en cours dans la page info sur le spa
sur le spa les réglages "hard" pour la présentation du numéro sont dans l'onglet "régional" en mode "advanced"
les réglages "soft" sont dans 2 onglets "line 1" "user 1" mode advanced

Miscellaneous
Set Local Date (mm/dd): Set Local Time (HH/mm):
Time Zone: FXS Port Impedance: 270 + 750 || 150 nF
Daylight Saving Time Rule:
FXS Port Input Gain: FXS Port Output Gain:
DTMF Playback Level: DTMF Playback Length:
Detect ABCD: Playback ABCD:
Caller ID Method: bellcore Caller ID FSK Standard: bell 202
Feature Invocation Method: More Echo Suppression:

la méthode et le standard à tester

kuusou
10/05/2013, 02h22
Après avoir pisté un peu plus chaque jour, je constate que le CID transite bien vers asterisk, mais ne part pas (ou pas au bon format, ou mal formaté) vers les pap2t et le spa-3102. Tous les téléphones branchés sur les linksys n'ont qu'un symbole de sonnerie qui apparait sur leur écrn LCD mais pas de numéro.

Les postes analogique acceptent bien entendu les nom, et le faisait jusqu'a ce qu'ils soient reliés aux pap2t & SPa3102