PDA

Voir la version complète : [ appels exterieur] recherche pistes



yoyo312
06/05/2011, 14h11
Bonjour,

Je vous recontactes à nouveau car j'envisages à présent de traiter les appels entrants/et sortants vers l’extérieur, puisque actuellement tout le côté interne fonctionne.

En outre, j'aimerais pouvoir composer un 0 de sortie pour spécifier une sortie vers l'extérieur.

Merci de me donner quelques pistes pour faire cela.

Je précises que j'utilises le sccp.conf couplé à des téléphones Cisco.

clepic
06/05/2011, 14h21
Tu as la carte digium ?
Si oui as tu chargé en mémoire par défaut le driver avec DAHDI ?

Pour sortir vers l'exterieur tu peux faire avec la commande

exten => _0.,1,Dial(DAHDI/g12/${EXTEN:1})

yoyo312
06/05/2011, 15h52
En fait, dans l'entreprise dans laquelle j'effectue mon stage, le but serrait de créer un trunk sccp entre mon asterisk rennais et un callmanager situé à paris, et d'utiliser le t0 branché sur le CME parisien pour sortir vers l'extérieur.

Je ne sais pas trop comment m'y prendre, car je n'y connais rien du tout sur asterisk , en dehors de l'aspect interne de la chose.


En vous remerciant pour votre aide.

Reaper
06/05/2011, 16h27
Penche toi sur sip. SCCP est pas très utilisé dans l'asterisk et sous développé.
Est ce que callmanger est capable de Sip ?

yoyo312
06/05/2011, 17h29
Je suis obligé d'utilisé le SCCP, car je ne peux changer la configuration des téléphone puisque l'objectif du projet est d'utiliser l'asterisk en redondance en cas de crash du CME (ce qui arrive souvent puisque celui-ci est ancien, mais je suppose qu'en cas de changement de firmware, ceux-ci ne s’enregistreront plus sur le CME), mais le remplacement de celui-ci par l'asterisk n'est pas à l'ordre du jour actuellement.

cedricscha
06/05/2011, 22h17
Euh a quoi cela te sert de sortir par le cme si c'est pour le remplacer en cas de plantee...... Tu pourras pas telephoner?

yoyo312
08/05/2011, 12h09
Je vais expliquer plus précisément le contexte:

-l'entreprise dispose de 2 call manager express (paris et rennes)

-ceux-ci sont sujets à pas mal de dysfonctionnements à cause de problèmes de perte de mémoire.

-L'objectif du projet est de remplacer provisoirement par l'asterisk l'un des deux cme si ils tombent. Par ce constat: en cas de chute du CME rennais, on connectera l'asterisk rennais a celui de paris pour assurer la téléphonie rennaise vers l'extérieur, et inversement pour le site parisien. On part donc du principe que l'un des deux cme fonctionne en permanence.

ffossard
08/05/2011, 23h53
Avoir les téléphones en sccp n'oblige pas à avoir l'interconnexion en sccp aussi, on peut très bien mixer les deux ! Vérifiez si vos CME ont ce qu'il faut pour s'interconnecter en sip (souvent ça passe par une licence ...)

Mais si vous êtes absolument persuadé qu'il ne faut que du sccp ...
Dans tous les cas, commencez par installer un asterisk sur votre site et faire fonctionner un téléphone sccp avec lui (juste appeler un service bidon comme un voicemail ou l'application echo() ), ensuite interconnecter Asterisk en local avec le CME du même site, si vous n'arrivez pas à faire ça, même pas la peine d'essayer avec le CME distant, j'espère que vous comprenez ça, je le précise car souvent je vois des stagiaires essayer éperdument de faire fonctionner "la totale" dès le début, évidemment ça ne donne rien ...

yoyo312
09/05/2011, 09h34
@fossard:

comme je l'ai dis: j'ai déjà tout configuré en local et tout marche parfaitement après divers tests (voicemail, transfert d'appel, conférence, interco LDAP...)

En ce qui concerne de faire une connexion entre le CME et l'asterisk du même site: cela me semble peu envisageable étant donné qu'ils fonctionnent sur le même plan d'adressage et de numérotation, puisque que l'Asterisk doit remplacer le CME s'il tombe en panne sans modification de configuration.

concernant le trunk : j'ai trouvé cela dans un premier temps (je ferais les tests ce midi puisque je ne peux pas intervenir n'importe quand)




;call manager
dial-peer voice ### voip
destination-pattern 9T
session protocol sipv2
session target ipv4:10.0.0.200
dtmf-relay rtp-nte
codec g711alaw





; asterisk extensions.conf

[default]

exten => _9XXX,1,Dial(SIP/$) ;asterisk

exten => _4XXX,1,Dial(SIP/$@x.x.x.x) ; call manager



par contre je ne sais pas si je dois remplacer sip par sccp, ou alors si je dois configurer le sip.conf uniquement pour le trunk.

ffossard
09/05/2011, 13h10
session protocol sipv2

Le CME fonctionne donc en SIP pour l'interco, donc vous paramètrerez le sip.conf d'Asterisk, et la ligne suivante est "bonne":


exten => _4XXX,1,Dial(SIP/$@x.x.x.x) ; call manager

Ici on passe par le trunk SIP pour tous les numéros de 4000 à 4999.
L'interco en SIP va aussi vous permettre de tester sans perturber le fonctionner de l'interco sccp déjà en place, plus pratique pour votre stage.

Quand je vous dis de paramétrer Asterisk avec le CME du même site, c'est pour tester le bon fonctionnement du trunk, pour l'instant c'est du test donc vous pouvez changer l'adresse ip du serveur et les numéros de téléphones sur Asterisk.
Une fois que ça fonctionnera, vous ne mettrez pas bien longtemps à reparamétrer le même trunk vers l'autre CME à travers internet (dans un vpn je suppose)

ps: je vois que vous parlez de ldap, je vous enjoins à aider un autre forumeur qui cherche en ce moment de ce côté là: http://www.asterisk-france.org/showthread.php/1005-Utilisation-de-res_ldap.conf

yoyo312
09/06/2011, 16h33
Bonjour à tous,

j'ai finalement réussi à faire ce trunk, mais exclusivement dans le sens

asterisk=>call manager


En revanche l'inverse n'est pas possible.

Je me demandes si le call manager a pour possibilité via son trunk sip d'appeler des téléphones en sccp?

J'ai toutefois essayé de basculer un téléphone en sip pour tester, mais c'est relativement incompatible avec cisco : temps de latence énormes (10sec pour un appel local) couplés à des reboot intempestifs, beaucoup de fonctions propres à cisco indisponibles.

Selon les logs: une communication sip est bien reconnue en provenance du call manager, mais le numéro entrant apparaît comme inconnu, et j'ai un message m'indiquant que l'extension n'existe pas.

A votre avis: le problème vient du call manager ou de l'asterisk?

voici les logs obtenus ci-dessous :





[Jun 9 16:42:04]
<--- SIP read from UDP:172.16.0.1:61402 --->
INVITE sip:3072@172.16.128.1:5060 SIP/2.0
Date: Thu, 09 Jun 2011 14:41:11 GMT
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
From: "9234" <sip:9234@172.16.0.1>;tag=E1EE50-198B
Allow-Events: telephone-event
Supported: 100rel,timer,resource-priority,replaces,sdp-anat
Min-SE: 1800
Remote-Party-ID: "9234" <sip:9234@172.16.0.1>;party=calling;screen=no;privacy=off
Cisco-Guid: 1493594418-2447184352-2180040113-699679628
Timestamp: 1307630471
Content-Length: 234
User-Agent: Cisco-SIPGateway/IOS-12.x
To: <sip:3072@172.16.128.1>
Contact: <sip:9234@172.16.0.1:5060>
Expires: 180
Content-Disposition: session;handling=required
Content-Type: application/sdp
Call-ID: 5A9EC57E-91DD11E0-81F5C5B1-29B4438C@172.16.0.1
Via: SIP/2.0/UDP 172.16.0.1:5060;branch=z9hG4bK121B80
CSeq: 101 INVITE
Max-Forwards: 70

v=0
o=CiscoSystemsSIP-GW-UserAgent 1707 5598 IN IP4 172.16.0.1
s=SIP Call
c=IN IP4 172.16.0.1
t=0 0
m=audio 19264 RTP/AVP 0 100
c=IN IP4 172.16.0.1
a=rtpmap:0 PCMU/8000
a=rtpmap:100 X-NSE/8000
a=fmtp:100 192-194
a=ptime:20

<------------->
[Jun 9 16:42:04] --- (21 headers 11 lines) ---
[Jun 9 16:42:04] Sending to 172.16.0.1 : 5060 (no NAT)
[Jun 9 16:42:04] Using INVITE request as basis request - 5A9EC57E-91DD11E0-81F5C5B1-29B4438C@172.16.0.1
[Jun 9 16:42:04] No matching peer for '9234' from '172.16.0.1:61402'
[Jun 9 16:42:04] Found RTP audio format 0
[Jun 9 16:42:04] Found RTP audio format 100
[Jun 9 16:42:04] Found audio description format PCMU for ID 0
[Jun 9 16:42:04] Found audio description format X-NSE for ID 100
[Jun 9 16:42:04] Capabilities: us - 0x8000e (gsm|ulaw|alaw|h263), peer - audio=0x4 (ulaw)/video=0x0 (nothing)/text=0x0 (nothing), combined - 0x4 (ulaw)
[Jun 9 16:42:04] Non-codec capabilities (dtmf): us - 0x1 (telephone-event), peer - 0x0 (nothing), combined - 0x0 (nothing)
[Jun 9 16:42:04] Peer audio RTP is at port 172.16.0.1:19264
[Jun 9 16:42:04] Looking for 3072 in default (domain 172.16.128.1)
[Jun 9 16:42:04]
<--- Reliably Transmitting (no NAT) to 172.16.0.1:5060 --->
SIP/2.0 404 Not Found
Via: SIP/2.0/UDP 172.16.0.1:5060;branch=z9hG4bK121B80;received=172. 16.0.1
From: "9234" <sip:9234@172.16.0.1>;tag=E1EE50-198B
To: <sip:3072@172.16.128.1>;tag=as39d4a141
Call-ID: 5A9EC57E-91DD11E0-81F5C5B1-29B4438C@172.16.0.1
CSeq: 101 INVITE
Server: Asterisk PBX 1.6.2.7-1ubuntu1.1
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces, timer
Content-Length: 0
asterisk*CLI>

<------------>
[Jun 9 16:42:04] NOTICE[5235]: chan_sip.c:20063 handle_request_invite: Call from '' to extension '3072' rejected because extension not found.
[Jun 9 16:42:04] Scheduling destruction of SIP dialog '5A9EC57E-91DD11E0-81F5C5B1-29B4438C@172.16.0.1' in 32000 ms (Method: INVITE)
[Jun 9 16:42:04]
<--- SIP read from UDP:172.16.0.1:61402 --->
ACK sip:3072@172.16.128.1:5060 SIP/2.0
Date: Thu, 09 Jun 2011 14:41:11 GMT
From: "9234" <sip:9234@172.16.0.1>;tag=E1EE50-198B
Allow-Events: telephone-event
Content-Length: 0
To: <sip:3072@172.16.128.1>;tag=as39d4a141
Call-ID: 5A9EC57E-91DD11E0-81F5C5B1-29B4438C@172.16.0.1
Via: SIP/2.0/UDP 172.16.0.1:5060;branch=z9hG4bK121B80
CSeq: 101 ACK
Max-Forwards: 70


<------------->
[Jun 9 16:42:04] --- (10 headers 0 lines) ---
[Jun 9 16:42:04] Really destroying SIP dialog '5A9EC57E-91DD11E0-81F5C5B1-29B4438C@172.16.0.1' Method: ACK
[Jun 9 16:42:15] Reliably Transmitting (NAT) to 172.16.0.1:5060:
OPTIONS sip:172.16.0.1 SIP/2.0
Via: SIP/2.0/UDP 172.16.128.1:5060;branch=z9hG4bK2337bddc;rport
Max-Forwards: 70
From: "asterisk" <sip:asterisk@172.16.128.1>;tag=as30adae72
To: <sip:172.16.0.1>
Contact: <sip:asterisk@172.16.128.1>
Call-ID: 220b59343dfbf722703fc39c73654811@172.16.128.1
CSeq: 102 OPTIONS
User-Agent: Asterisk PBX 1.6.2.7-1ubuntu1.1
Date: Thu, 09 Jun 2011 14:42:15 GMT
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO
Supported: replaces, timer
Content-Length: 0


---
[Jun 9 16:42:15]
<--- SIP read from UDP:172.16.0.1:5060 --->
SIP/2.0 200 OK
Date: Thu, 09 Jun 2011 14:41:22 GMT
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
From: "asterisk" <sip:asterisk@172.16.128.1>;tag=as30adae72
Allow-Events: telephone-event
Supported: 100rel,resource-priority,replaces,sdp-anat
Content-Length: 163
To: <sip:172.16.0.1>;tag=E21AE0-20DA
Content-Type: application/sdp
Call-ID: 220b59343dfbf722703fc39c73654811@172.16.128.1
Accept: application/sdp
Via: SIP/2.0/UDP 172.16.128.1:5060;branch=z9hG4bK2337bddc;rport
Server: Cisco-SIPGateway/IOS-12.x
CSeq: 102 OPTIONS

v=0
o=CiscoSystemsSIP-GW-UserAgent 4727 5364 IN IP4 172.16.0.1
s=SIP Call
c=IN IP4 172.16.0.1
t=0 0
m=audio 0 RTP/AVP 18 0 8 9 4 2 15 3
c=IN IP4 172.16.0.1

<------------->
[Jun 9 16:42:15] --- (14 headers 7 lines) ---
[Jun 9 16:42:15] Really destroying SIP dialog '220b59343dfbf722703fc39c73654811@172.16.128.1' Method: OPTIONS

yoyo312
10/06/2011, 09h21
quelqu'un aurait une idée?

merci d'avance

Reaper
10/06/2011, 10h47
Mais i suffit de lire, c'est écrit la:


[Jun 9 16:42:04] No matching peer for '9234' from '172.16.0.1:61402'

[Jun 9 16:42:04] Looking for 3072 in default (domain 172.16.128.1)

1: Il faut créer un peer [9234] qui tombe dans le bon contexte

yoyo312
10/06/2011, 13h13
Merci beaucoup.

le problème venait du fait qu'il fallait créer le contexte default incluant mon contexte.

Reaper
10/06/2011, 13h38
C'est une mauvaise solution! il ne faut pas utiliser le contexte défaut, pour les questions de sécurité, il faut créer un peer correspondant avec le bon contexte.

yoyo312
10/06/2011, 14h10
j'ai déjà créé un peer avec le bon contexte, mais il ne semble pas fonctionner en provenance du call manager qui envoie vers le contexte default.

Cependant, on vient de m'informer que vu qu'il s'agit uniquement d'une solution de backup : ce point n'est pas primordial, mais je vais quand même spécifier ma configuration:




sip.conf

[trunk-cme-rennes]
type=peer
port=5060
host= 172.16.0.1
context = from-internal
disallow=all
allow=ulaw
allow=alaw
nat=yes
canreinvite=yes
qualify=yes


extensions.conf


[default]

include => sccp

[from-internal]


include => sccp

exten => _9XXX,1,SetCallerPres(allowed)
exten => _9XXX,2,Set(CALLERID(num)=${CALLERID(num)})
exten => _9XXX,3,Dial(SIP/${EXTEN}@trunk-cme-rennes)
exten => _9XXX,4,Hangup()


cependant, je n'arrives pas à établir un appel vers l'Asterisk si le contexte default n'es pas spécifié.

Reaper
10/06/2011, 14h21
Une solution simple est de renommer
[trunk-cme-rennes]
en
[9234]

Ou changer le 9234 sur trunk-cme-rennes coté callmanager

yoyo312
10/06/2011, 15h28
je veux bien faire ça, mais sachant que je dois le faire sur plus de 50 numéros: ça me parait guère envisageable.

Reaper
10/06/2011, 15h41
Mais je ne comprends pas, votre invite stipule que:



INVITE sip:3072@172.16.128.1:5060 SIP/2.0

Votre callmanager appelle le numéro 3072



From: "9234" <sip:9234@172.16.0.1>;tag=E1EE50-198B


Depuis le compte 9234

Votre asterisk cherche le numéro 3072 et ne le trouve pas:


Looking for 3072 in default (domain 172.16.128.1)

Il ne faut pas changes 50 comptes, juste le nom du trunk.


<sip:9234@172.16.0.1>;party=calling;screen=no;privacy=off

Avec ces coordonnées.