Voir la version complète : Interception d'appels
alternatiq
01/04/2011, 18h50
Bonjour,
Comment faire pour intercepter un appel qui sonne sur un poste distant du mien, sans me lever ?
Question d'une secrétaire .... #XX# ?
Cordialement
Mettre pickupgroup =X ou X est le numéro de groupe pour chaque extension que vous voulez faire in 'pickup' (vous pouvez créer plusieurs groupes, seulement les membres de la groupe ont le droit de faire le pickup sur les membres de la même groupe O_0)
Assurer vous que dans le features.conf vous avez une chaîne 'pickupexten = valeur' ( *8 par défaut )ou voir dans le CLI que 'show features' elle existe sinon ajouter.
Voila tout.
Bonjour,
Le mieux, est d'utiliser des téléphones SIP avec touches à fonction BLF (touches avec LED) et la fonction DIRECTPICKUP d'Asterisk. C'est une interception d'appel d'un poste individuel et non de groupe (plus pratique si plusieurs postes du même groupe sonnent en même temps).
Dans ce cas, la supervision des postes via les touches BLF (et leur LED) permet de voir si un collègue est en ligne ou pas, et si son poste est en train de sonner. Dans ce dernier cas, le fait d'appuyer sur la touche BLF qui supervise ce poste permet d'intercepter l'appel en cours de sonnerie.
Exemple pour un Aastra SIP standard :
directed call pickup: 1
directed call pickup prefix: 999
prgkey3 type: blf
prgkey3 value: 6007
prgkey4 type: blf
prgkey4 value: 6008
prgkey5 type: icom
prgkey5 value: 1004
prgkey6 type: blf
prgkey6 value: 6009
Dans le Dialplan d'Asterisk (/etc/asterisk/extensions.conf) :
[PICKUP]
exten => _999.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _999.,n,NoOp(CALLERID=${CALLERID(all)})
exten => _999.,n,Pickup(${EXTEN:3})
exten => _999.,n,NoOp(CALLERID=${CALLERID(all)})
Il faut intégrer le contexte [PICKUP] dans le contexte des postes téléphoniques locaux :
include => PICKUP
Cordialement,
Francois
alternatiq
02/04/2011, 23h42
Merci Francois pour ces informations, mais 2 questions me brulent les doigts ...
Est-ce que la BLF marche sans LED ? (Type Poste 6731i Aastra ?)
Il faut intégrer le contexte [PICKUP] dans le contexte des postes téléphoniques locaux :
Je ne comprends pas, que faut-il faire exactement ?
Merci d'avance.
Bonjour,
Désolé si ce n'était pas assez clair.
Dans le fichier extensions.conf, un contexte spécifique contient toutes les extensions, ou une macro, afin de permettre de numéroter et joindre ces téléphones internes.
C'est dans ce contexte qu'il faudra inclure le contexte [PICKUP].
Autre chose passée sous silence dans mon précédent message :
il faut, bien entendu, que la supervision se fasse bien sur ces postes internes.
En général, c'est (encore) un contexte inclus dans celui qui permet de numéroter les postes internes.
Je l'appelle souvent [HINTS], pour mémoire.
Donc, voici un exemple ultra simple (même trop simpliste) :
[INTERNAL]
include => PICKUP
include => HINTS
exten => 6001,1,Dial(SIP/compte1)
exten => 6002,1,Dial(SIP/compte2)
[HINTS]
exten => 6001,hint,SIP/compte1
exten => 6002,hint,SIP/compte2
[PICKUP]
exten => _999.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _999.,n,NoOp(CALLERID=${CALLERID(all)})
exten => _999.,n,Pickup(${EXTEN:3})
exten => _999.,n,NoOp(CALLERID=${CALLERID(all)})
Ne pas oublier de paramétrer en conséquence les téléphones SIP...
Cordialement,
Francois
alternatiq
08/04/2011, 15h35
Bonjour,
Merci j'ai lu bien attentivement, mais je reste tétanisé par la methode.
Mon extensions.conf contient les 2 contextes, mais que faut'il faire sur les postes et qu'elles séquences de touches faut-il faire pour intercepter...
J'ai la maitrise sur du PBX traditionnel mais la je plane ...
Oulà ! Ca va devenir difficile...
Comment expliquer ?
1/ Savez-vous paramétrer votre Aastra 6731i ?
2/ Savez-vous lui programmer des BLF (les petits boutons avec une LED placés en haut sont programmables) ?
3/ Oubliez le provisionning pour faire plus simple, travaillez uniquement via les pages WEB d'admin du téléphone.
Si vous programmez une de ces touches en fonction "BLF", le poste dont l'extension sera "surveillée" par ce téléphone verra la LED éteinte si le poste du collègue est dispo ou déconnecté, fixe s'il est en ligne, clignotant s'il sonne.
S'il sonne, le fait d'appuyer sur cette touche BLF permettra d'intercepter la communication et de répondre à sa place depuis ce téléphone "superviseur" (qui voit donc les états des téléphones des collègues).
En fait, pour la "commande d'interception" issue du téléphone elle-même, vous devez renseigner le champs dédié dans le téléphone SIP Aastra "Park Pickup Config" ou "Directed Call Pickup" selon le modèle, situé dans la page "Global SIP", en ajoutant une sorte de préfixe qui sera envoyé ajouté en entête par le téléphone devant le numéro d'extension du poste à intercepter. Dans mon exemple, entrez "999" mais toute autre valeur peut marcher (ex: "*99")tant que vous la répliquerez dans le contexte "[PICKUP]" de mon exemple, pour "déclencher" l'action d'interception.
4/ Il faut modifier extensions.conf dans Asterisk pour y ajouter les instructions qui permettront l'interception des appels des autres postes.
Pour commencer, il faut qu'Asterisk supervise lui-même les postes en questions.
C'est via la fonction HINT que cela se fait.
C'est une sorte de déclaration (d'inscription) à un service dédié à la supervision.
Chaque poste surveillé est donc déclaré par une ligne HINT :
[HINTS]
exten => 6001,hint,SIP/compte1
exten => 6002,hint,SIP/compte2
Tous les postes à surveiller devront être ainsi "inscrit" au service de supervision.
Le contexte suivant permettra l'interception elle-même lors d'un appui sur une touche BLF qui clignotte :
[PICKUP]
exten => _999.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _999.,n,NoOp(CALLERID=${CALLERID(all)})
exten => _999.,n,Pickup(${EXTEN:3})
exten => _999.,n,NoOp(CALLERID=${CALLERID(all)})
Et donc, pour finir, ajoutez les deux lignes suivantes dans le contexte d'origine qui contient vos extensions internes :
include => PICKUP
include => HINTS
Cordialement,
Francois
Bonjour,
Merci j'ai lu bien attentivement, mais je reste tétanisé par la methode.
Mon extensions.conf contient les 2 contextes, mais que faut'il faire sur les postes et qu'elles séquences de touches faut-il faire pour intercepter...
J'ai la maitrise sur du PBX traditionnel mais la je plane ...
bonsoir,
Voir le lien suivant
http://www.voip-info.org/wiki/view/Asterisk+cmd+Pickup
et
http://www.voip-info.org/wiki/view/Asterisk+callgroups+and+pickupgroups
risque d'interception avec Pickup d'un poste en appel au lieu de celui a intercepter probleme rencontre lors d'une installation.
il y a cette methode
[Interception]
exten => _71.,1,Set(GLOBAL(PICKUPMARK)=${EXTEN:2})
exten => _71.,n,Pickup(${EXTEN:2}@PICKUPMARK)
exten => _71.,n,Hangup
mais deconseiller sur le premier lien pour GLOBAL
il y a aussi ce lien http://www.thorsten-knabe.de/linux/asterisk/pickup.jsp
PicKup2
beaucoup plus stable
[Interception] ; 71+Nro du poste a intercepter
;
exten => _71.,1,Set(Res_Pfx = "SIP/"${EXTEN:2})
exten => _71.,n,PicKup2(${Res_Pfx})
exten => _71.,n,Hangup
[Interception_Gen] ; interception sur sonnerie generale
exten => _72,1,PicKup2(${Sonnerie})
exten => _72,n,Hangup
ces contexts a include dans extensions.conf independant du phone.
A+
alternatiq
13/04/2011, 10h05
Bonjour,
Je reformule pour voir si j'ai bien compris ...
J'ai mis cela dans mon extensions.conf
[globals]
...
include => PICKUP
include => HINTS
...
[HINTS] ;(10,11,12 et 13, les 4 extensions à surveiller)
exten => 6000,hint,SIP/10
exten => 6001,hint,SIP/11
exten => 6002,hint,SIP/12
exten => 6003,hint,SIP/13
[PICKUP] ;(99 est le numéro à taper avant l'ext choisie)
exten => _99.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _99.,n,NoOp(CALLERID=${CALLERID(all)})
exten => _99.,n,Pickup(${EXTEN:3})
exten => _99.,n,NoOp(CALLERID=${CALLERID(all)})
dans mon aastra.cfg
directed call pickup: 1
directed call pickup prefix: 99
Mais maintenant la ou je pige pas, faut-il mettre dans les BLF les 6001 + 6002 ... ou les 10 + 11 ....
prgkey1 type: blf
prgkey1 value: 6001
prgkey2 type: blf
prgkey2 value: 6002
Merci
Bonjour,
Je reformule pour voir si j'ai bien compris ...
J'ai mis cela dans mon extensions.conf
[globals]
...
include => PICKUP
include => HINTS
...
[HINTS] ;(10,11,12 et 13, les 4 extensions à surveiller)
exten => 6000,hint,SIP/10
exten => 6001,hint,SIP/11
exten => 6002,hint,SIP/12
exten => 6003,hint,SIP/13
[PICKUP] ;(99 est le numéro à taper avant l'ext choisie)
exten => _99.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _99.,n,NoOp(CALLERID=${CALLERID(all)})
exten => _99.,n,Pickup(${EXTEN:3})
exten => _99.,n,NoOp(CALLERID=${CALLERID(all)})
dans mon aastra.cfg
directed call pickup: 1
directed call pickup prefix: 99
Mais maintenant la ou je pige pas, faut-il mettre dans les BLF les 6001 + 6002 ... ou les 10 + 11 ....
prgkey1 type: blf
prgkey1 value: 6001
prgkey2 type: blf
prgkey2 value: 6002
Merci
Bonjour,
Voir le lien suivant http://www.panoramisk.com/111/interception-de-ligne-avec-un-telephone-aastra-53i/fr/
cela pourra peut être vous servir
A+
Bonjour,
Je reformule pour voir si j'ai bien compris ...
Bonjour,
Les numéros 6001, 6002, 6003, sont des exemples de numéros d'extensions tels qu'utilisés par Digium dans ses fichiers d'exemples fournis avec la version Asterisk Open Source.
Je suppose que vous avez vos propres numéros d'extensions, donc utilisez les votres. Si vous utilisez HINT avec des extensions qui n'existent pas, ça ne marchera pas.
De plus, vous parlez "d'extensions" en place et lieu de "comptes SIP" : ne confondez pas, sinon, même résultat : ne marchera pas.
Donc, pour chacun de vos numéros d'extensions sur les lignes HINT, vous associerez le comprte SIP qui corresponds bien à chacun.
Dans les champs associés aux BLF des Aastra, vous devez entrer les numéros des EXTENSIONS à surveiller (les mêmes qui sont déclarées par les lignes HINT de votr edailplan, pas les comptes SIP).
C'est tout !
Cordialement,
Francois BERGERET
Opcom
Bonjour,
Je suis dans la meme situation que alternatiq , j'ai du mal à tout bien comprendre .
Voici un exemple de se que j'ai fais :
----extension.conf----
[internal]
...
include => PICKUP
include => HINTS
exten => 100,1,Dial(SIP/secretaire)
exten => 200,1,Dial(SIP/patron)
exten => 300,1,Dial(SIP/technicien)
[HINTS]
exten => 100,hint,SIP/secretaire
exten => 200,hint,SIP/patron
exten => 300,hint,SIP/technicien
[PICKUP]
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,NoOp(CALLERID=${CALLERID(all)})
exten => _**.,n,Pickup(${EXTEN:3})
exten => _**.,n,NoOp(CALLERID=${CALLERID(all)})
----aastra.cfg----
directed call pickup: 1
directed call pickup prefix: **
Les postes que j'ai son des aastra 6751i donc ils ont pas la fonction BLF on ne peut donc pas faire de la supervision. J'ai donc envie de faire de l'interception. J'aimerais que quand le patron appel le technicien, la secrétaire puisse intercepter lappel en fesant " ** ", le mieu aprés serai de faire " **+ le numero du poste "
Merci d'avance,
Cordialement.
ffossard
20/04/2011, 21h36
Bonjour,
Je suis dans la meme situation que alternatiq , j'ai du mal à tout bien comprendre .
Voici un exemple de se que j'ai fais :
Les postes que j'ai son des aastra 6751i donc ils ont pas la fonction BLF on ne peut donc pas faire de la supervision. J'ai donc envie de faire de l'interception. J'aimerais que quand le patron appel le technicien, la secrétaire puisse intercepter lappel en fesant " ** ", le mieu aprés serai de faire " **+ le numero du poste "
Merci d'avance,
Cordialement.
Oui pourquoi pas.
Ça ne fonctionne pas comme c'est là ?
Bonsoir,
Dans votre cas, il faut modifier la partie PICKUP :
[PICKUP]
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,Pickup(${EXTEN:2})
Il n'y a plus QUE 2 caractères en préfixe (**) et donc il ne faut supprimer QUE 2 caractères d'où ${EXTEN:2} au lieu de ${EXTEN:3}.
Supprimez les lignes "NoOp", car elles ne sont utiles que pour du debugging (trace de la valeur de la variable à la console Asterisk "CLI").
Et, si vous ne souhaitez pas modifier l'identité de l'appelant, simplifiez encore :
[PICKUP]
exten => _**.,1,Pickup(${EXTEN:2})
Strict minimum.
Cordialement,
Francois
Oui pourquoi pas.
Ça ne fonctionne pas comme c'est là ?
Non ça ne fonctionne pas...
J'ai fais les modifications de F6HQZ mais toujours rien. Quand je passe l'appel du technicien vers le patron et que sur le telephone de la secretaire je fais ** ça ne prend pas l'appel.
Une idée ?
Merci
Cordialement
Non ça ne fonctionne pas...
J'ai fais les modifications de F6HQZ mais toujours rien. Quand je passe l'appel du technicien vers le patron et que sur le telephone de la secretaire je fais ** ça ne prend pas l'appel.
Une idée ?
Merci
Cordialement
Bonjour,
F6HQZ vous a indiqué ce qu'il faut faire.
${EXTEN:2} c'est l'equivalent de substring ou substr ou mid etc... en développement
ce que vous dit F6HQZ
pour l'interception d'appel c'est qqchose comme **200, 200 etant le numero de poste a intercepter par exemple
donc
${EXTEN:2} = 200 pour ${EXTEN} = **200
[PICKUP]
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,Pickup(${EXTEN:2})
cela doit fonctionner
le context [PICKUP] est a inclure dans extensions.conf
A+
C'est bon ça marche , Merci beaucoup ;)
Peut t'on créer des groupes d'interception afin de pouvoir trié qui peut intercepter tel ou tel appel ?
Merci
Peut t'on créer des groupes d'interception afin de pouvoir trié qui peut intercepter tel ou tel appel ?
Merci
Voir ce qu'a dit Reaper
Mettre pickupgroup =X ou X est le numéro de groupe pour chaque extension que vous voulez faire in 'pickup' (vous pouvez créer plusieurs groupes, seulement les membres de la groupe ont le droit de faire le pickup sur les membres de la même groupe O_0)
Assurer vous que dans le features.conf vous avez une chaîne 'pickupexten = valeur' ( *8 par défaut )ou voir dans le CLI que 'show features' elle existe sinon ajouter.
Voila
A+
Voici la config que j'ai faite. J'ai bien mis les pickupgroups mais ça ne marche toujours pas.
Quand j'apel le patron qui est dans le groupe deux j'arrive à intercepter l'appel avec le standard en fesant " **200 " alors que ça ne devrais pas vu que le standard est groupe un.
sip.conf
;================================================= ================================================== ==
[patron] ;nom de login de l'utilisateur
type=friend ;utilisateur classique
context=internal ;le contexte (plan de numérotation) utilisé par cet utilisateur
secret=mdp ;mot de passe de l'utilisateur
host=dynamic ;registrar = enregistrement automatique du terminal
canreinvite=yes ;possibilité d'envoyer la voix duirectement sans passer par Asterisk
username=patron ;nom de l'utilisateur
callerid=patron <200> ;nom coomplet + n° d'annuaire
dtmfmode=inband ;transport des appuis de touches
disallow=all ;désactivation de tous les codecs
allow=ulaw ;activation du codec g711 loi mu
mailbox=2 ;patron
callgroup=2 ; We are in caller groups 1,3,4
pickupgroup=2 ; We can do call pick-p for call group 1,3,4,5
;================================================= ================================================== ===
[technicien] ;nom de login de l'utilisateur
type=friend ;utilisateur classique
context=internal ;le contexte (plan de numérotation) utilisé par cet utilisateur
secret=mdp ;mot de passe de l'utilisateur
host=dynamic ;registrar = enregistrement automatique du terminal
canreinvite=yes ;possibilité d'envoyer la voix duirectement sans passer par Asterisk
username=technicien ;nom de l'utilisateur
callerid=technicien <300> ;nom coomplet + n° d'annuaire
dtmfmode=inband ;transport des appuis de touches
disallow=all ;désactivation de tous les codecs
allow=ulaw ;activation du codec g711 loi mu
mailbox=3 ;technicien
callgroup=1 ; We are in caller groups 1,3,4
pickupgroup=1 ; We can do call pick-p for call group 1,3,4,5
;================================================= ================================================== ===
[secretaire] ;nom de login de l'utilisateur
type=friend ;utilisateur classique
context=internal ;le contexte (plan de numérotation) utilisé par cet utilisateur
secret=mdp ;mot de passe de l'utilisateur
host=dynamic ;registrar = enregistrement automatique du terminal
canreinvite=yes ;possibilité d'envoyer la voix duirectement sans passer par Asterisk
username=secretaire ;nom de l'utilisateur
callerid=secretaire <100> ;nom coomplet + n° d'annuaire
dtmfmode=inband ;transport des appuis de touches
disallow=all ;désactivation de tous les codecs
allow=ulaw ;activation du codec g711 loi mu
mailbox=1 ;secretaire
callgroup=1 ; We are in caller groups 1,3,4
pickupgroup=1 ; We can do call pick-p for call group 1,3,4,5
;================================================= ================================================== ===
[standard] ;nom de login de l'utilisateur
type=friend ;utilisateur classique
context=internal ;le contexte (plan de numérotation) utilisé par cet utilisateur
secret=mdp ;mot de passe de l'utilisateur
host=dynamic ;registrar = enregistrement automatique du terminal
canreinvite=yes ;possibilité d'envoyer la voix duirectement sans passer par Asterisk
username=standard ;nom de l'utilisateur
callerid=standard <500> ;nom coomplet + n° d'annuaire
dtmfmode=inband ;transport des appuis de touches
disallow=all ;désactivation de tous les codecs
allow=ulaw ;activation du codec g711 loi mu
mailbox=5 ;secretaire
callgroup=1 ; We are in caller groups 1,3,4
pickupgroup=1 ; We can do call pick-p for call group 1,3,4,5
;================================================= ================================================== ===
feature.conf
;
; Sample Call Features (parking, transfer, etc) configuration
;
[general]
parkext => 700 ; What extension to dial to park (all parking lots)
parkpos => 701-720 ; What extensions to park calls on. (defafult parking lot)
; These needs to be numeric, as Asterisk starts from the start position
; and increments with one for the next parked call.
context => from-internal ; Which context parked calls are in (default parking lot)
pickupexten = ** ; Configure the pickup extension. (default is *8)
extension.conf
include => PICKUP
include => HINTS
exten => 100,Dial(SIP/secretaire)
exten => 200,Dial(SIP/patron)
exten => 300,Dial(SIP/technicien)
exten => 500,Dial(SIP/standard)
# INTERCEPTION DAPPEL
[HINTS]
exten => 100,hint,SIP/secretaire
exten => 200,hint,SIP/patron
exten => 300,hint,SIP/technicien
exten => 400,hint,SIP/standard
[PICKUP]
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,Pickup(${EXTEN:2})
Bonjour,
C'est normal !
Il fallait laisser pickupexten = *8 dans le fichier de feature.conf et si un poste compose *8 alors la communication qui ferait sonner un poste du groupe serait interceptée.
L'interception de groupe et le pickup sont DEUX choses différentes et autonomes.
Cordialement,
Francois
ça fonctionne parfaitement,
Merci beaucoup.
Bonjour,
Est-il possible de faire une interception d'appel lorsque les téléphones sont déclarés dans des contextes différents.
Par exemple
[contexte1]
dial(sip/1012)
[Contexte2]
dial(sip/1013)
Est-il donc possible d'intercepter le 1012 à partir du 1013 ?
alternatiq
28/04/2011, 18h36
C'est bon ça marche , Merci beaucoup ;)
Bonjour CLEPIC,
J'ai suivi correctement les infos mais rien, ... peut-on s'entraider, car il me manque qq chose pour y arriver.
mes users sont :
10, 11, 12 ou 13, avec des noms en Caller ID Name = Maxime P. par exemple pour 10
dans extensions.conf j'ai mis à la fin du fichier :
[PICKUP]
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,Pickup(${EXTEN:2})
[HINTS]
exten => 10,hint,SIP/10
exten => 11,hint,SIP/11
exten => 12,hint,SIP/12
exten => 13,hint,SIP/13
Ensuite j'ai mis en BLF dans mes phones ou du moins dans le premier (10) des BLF pour suivre l'occupation et faire une interception.
ou met-on le :
include => HINTS
include => PICKUP
dans un [...] ou à la fin en vrac ?
Merci d'avance
ffossard
28/04/2011, 18h41
Bonjour,
Est-il possible de faire une interception d'appel lorsque les téléphones sont déclarés dans des contextes différents.
Par exemple
[contexte1]
dial(sip/1012)
[Contexte2]
dial(sip/1013)
Est-il donc possible d'intercepter le 1012 à partir du 1013 ?
Oui, c'est possible.
ffossard
28/04/2011, 18h58
Bonjour CLEPIC,
J'ai suivi correctement les infos mais rien, ... peut-on s'entraider, car il me manque qq chose pour y arriver.
mes users sont :
10, 11, 12 ou 13, avec des noms en Caller ID Name = Maxime P. par exemple pour 10
Plutôt une mauvaise idée d'utiliser les numéros de téléphones comme noms d'utilisateurs, beaucoup cèdent à cette facilité au départ, ça n'amène que des problèmes de compréhension, mais bon.
dans extensions.conf j'ai mis à la fin du fichier :
[PICKUP]
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,Pickup(${EXTEN:2})
[HINTS]
exten => 10,hint,SIP/10
exten => 11,hint,SIP/11
exten => 12,hint,SIP/12
exten => 13,hint,SIP/13
Pour commencer il faut isoler le problème: est-ce le pickup, est-ce l'extension _**., est-le callerid ...
Mets juste ça et teste une interception d'un appel sonnant sur le téléphone "11" en tapant 000:
exten => 000,1,Pickup(11)
Si ça marche, teste le "**" comme tu souhaite faire:
exten => _**.,1,noop(exten: ${EXTEN})
same => n,noop(exten moins deux: ${EXTEN:2})
Le callerid tu le changera plus tard, quand tout ça fonctionnera ...
et REGARDE LA CLI, tout est dedans :wahoo:
Ensuite j'ai mis en BLF dans mes phones ou du moins dans le premier (10) des BLF pour suivre l'occupation et faire une interception.
Tu peux mettre la BLF sur plusieurs téléphones, tant qu'à faire.
Teste l'état des hints sur le serveurs, et vérifie que ton tel qui intercepte voit bien l'état de l'autre.
Cherche les commandes core show hints, sip show subscription, etc...
ou met-on le :
include => HINTS
include => PICKUP
dans un [...] ou à la fin en vrac ?
Merci d'avance
Dans le contexte du téléphone.
Si dans sip.conf pour les téléphones tu as "context=telephones":
[telephones]
include => internal
include => externe
include => messagerie
include => pickup
include => hints
Digium recommande même de mettre les hints dans le même contexte que les appels internes (après tout ce sont les mêmes extensions donc c'est logique) mais ça fonctionne très bien sans.
CLI CLI CLI :o
alternatiq
28/04/2011, 19h46
Non, j'ai bien des nom de users pour les extensions ... j'utilise le Web-GUI asterisk, c'est peut-etre là que je suis plus ...
si je prends mon extension 10 dans users.conf
[10]
username = 10
transfer = yes
mailbox = 10
call-limit = 100
type = peer
fullname = Nadine G.
registersip = no
host = dynamic
callgroup = 1
type = peer
context = DLPN_AtelierK
cid_number = 10
hasvoicemail = yes
vmsecret = 1234
email = nadine.g@xxx.fr
threewaycalling = no
hasdirectory = yes
callwaiting = no
hasmanager = no
hasagent = yes
hassip = yes
hasiax = no
secret = !!!
nat = yes
canreinvite = no
dtmfmode = rfc2833
insecure = no
pickupgroup = 1
macaddress = 00085D297E89
autoprov = yes
label = 10
linenumber = 1
LINEKEYS = 1
callcounter = yes
disallow = all
allow = alaw,ulaw
Qu'est ce qui n'est pas bon pour que j'utilise le HINTS après
Salut alternatiq ,
Je pense que le problème vien de ton sip.conf regarde le mien pour l'utilisateur technicien:
[technicien] ;nom de login de l'utilisateur
type=friend ;utilisateur classique
context=internal ;le contexte (plan de numérotation) utilisé par cet utilisateur
secret=mdp ;mot de passe de l'utilisateur
host=dynamic ;registrar = enregistrement automatique du terminal
canreinvite=yes ;possibilité d'envoyer la voix duirectement sans passer par Asterisk
username=technicien ;nom de l'utilisateur
callerid=technicien <300> ;nom coomplet + n° d'annuaire
dtmfmode=inband ;transport des appuis de touches
disallow=all ;désactivation de tous les codecs
allow=ulaw ;activation du codec g711 loi mu
mailbox=3 ;technicien
callgroup=1 ; We are in caller groups 1,3,4
pickupgroup=1 ; We can do call pick-p for call group 1,3,4,5
Il te manque cette ligne :
callerid=technicien <300> ;nom coomplet + n° d'annuaire
Pour ton cas ça serai
callerid=Nadine G. <10>
Le :
include => HINTS
include => PICKUP
Je l'ai mis en [internal] au tout début :
extension.conf
[internal]
include => PICKUP
include => HINTS
exten => 100,Dial(SIP/secretaire)
exten => 200,Dial(SIP/patron)
exten => 300,Dial(SIP/technicien)
exten => 500,Dial(SIP/standard)
exten => 100,1,Answer()
exten => 100,2,DIAL(SIP/secretaire,20)
exten => 100,3,voiceMail(1)
exten => 100,4,HangUp()
exten => 300,1,Answer()
exten => 300,2,DIAL(SIP/technicien,20)
exten => 300,3,voiceMail(2)
exten => 300,4,HangUp()
# INTERCEPTION DAPPEL
[HINTS]
exten => 100,hint,SIP/secretaire
exten => 200,hint,SIP/patron
exten => 300,hint,SIP/technicien
exten => 400,hint,SIP/standard
[PICKUP]
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,Pickup(${EXTEN:2})
Je pense que ça devrais être bon :)
Tien moi au courant :pt1cable:
ffossard
29/04/2011, 12h09
Rajoute subscribecontext=HINTS pour tes users dans sip.conf
Rajoute subscribecontext=HINTS pour tes users dans sip.conf
ça sert à quoi exactement subscribecontext ? Car moi je ne l'ai pas mis. Es important ?
Merci
ffossard
29/04/2011, 18h30
Je te laisse regarder dans le fichier sample du sip.conf, c'est une mine d'informations :)
Bonjour
Voir aussi http://www.voip-info.org/wiki/view/Asterisk+standard+extensions
extrait.
Privacy considerations: In sip.conf you can define a subscribecontext= value that determines in which context Asterisk should search for the matching extension when a subscribe request is received from the phone; however, if the extension doesn't exist in that context Asterisk is going to look for it in the default context! In other words: Everyone can subscribe to a "hinted" extension that is defined in the default context. By the way, specifying an empty subscribecontext is also fine if the phone should not at all subscribe to _any_ context.
A+
alternatiq
01/05/2011, 15h48
Je pense que je vais passer pour un boulet ... mais bon, ... J'ai fait une plateforme de tests ...
Pour être clair :
Ma plateforme est une VM debian avec asterisk 1.6, j'ai installé les addons + WebGUI d'asterisk ...
Je configure mon PBX avec le Web GUI Astreisk (Bien ou pas Bien)
3 Extensions : 6000 + 6001 et 6299
6000 = Mr S
6001 = Mll C
6299 = Standard
J'ai fait les conf en tftp pour mes 3 6731i pas de soucis ...
Quand j'appels le 6001 depuis 6299, en ayant mis les blfxfer dans mes conf, cela clignote bien et fixe quand décroché ... nativement sans rien ajouter dans extensions.conf ou sip.conf ...
dans les télephones j'ai ajouter de manière commune dans le aastra.cfg :
directed call pickup: 1
directed call pickup prefix: **
Ce que je voudrais, c'est intercepté en cliquant sur le bouton du 6731i pour prendre l'appel ....
Si je suis vos infos, j'ai des trucs qui marchent plus ... je deviens OUF de chez OUF
Je comprends bien que le ** doit etre compris et traitre par le PBX, mais j'ai un ecchec d'appel même à la mano.
Dans un test je fais sonner 6001 depuis 6000 et je veux prendre l'appel depuis 6299
donc je decroche et tape **6001
Mais echec de l'appel, le CLI me met cela :
Connected to Asterisk 1.6.0.1 currently running on ipbx (pid = 12069)
Verbosity is at least 7
== Using SIP RTP CoS mark 5
-- Executing [6001@DLPN_NMC:1] Macro("SIP/6000-020d5b00", "stdexten,6001,SIP/6001") in new stack
-- Executing [s@macro-stdexten:1] Set("SIP/6000-020d5b00", "__DYNAMIC_FEATURES=") in new stack
-- Executing [s@macro-stdexten:2] Set("SIP/6000-020d5b00", "ORIG_ARG1=6001") in new stack
-- Executing [s@macro-stdexten:3] GotoIf("SIP/6000-020d5b00", "0?6:4") in new stack
-- Goto (macro-stdexten,s,4)
-- Executing [s@macro-stdexten:4] Dial("SIP/6000-020d5b00", "SIP/6001,35,") in new stack
== Using SIP RTP CoS mark 5
-- Called 6001
== Extension Changed 6001[default] new state Ringing for Notify User 6001
== Extension Changed 6001[default] new state Ringing for Notify User 6299
-- SIP/6001-020cc320 is ringing
== Using SIP RTP CoS mark 5
[May 1 15:51:45] NOTICE[12106]: chan_sip.c:16869 handle_request_invite: Call from '6299' to extension '**6001' rejected because extension not found.
== Spawn extension (macro-stdexten, s, 4) exited non-zero on 'SIP/6000-020d5b00' in macro 'stdexten'
== Extension Changed 6001[default] new state Idle for Notify User 6001
== Extension Changed 6001[default] new state Idle for Notify User 6299
== Spawn extension (macro-stdexten, s, 4) exited non-zero on 'SIP/6000-020d5b00'
Donc c'est que cela commence à etre bon, mais faut que je traite le **
Nativement si je fait un "core show hints" j'ai cela :
ipbx*CLI> core show hints
-= Registered Asterisk Dial Plan Hints =-
6000@default : SIP/6000 State:Idle Watchers 2
6001@default : SIP/6001 State:Idle Watchers 2
6299@default : SIP/6299 State:Idle Watchers 2
----------------
- 3 hints registered
Donc j'ai déjà 2 tel qui surveillent les ext, donc pas besoin de [HINTS], je pense ?
Si j'ajoute cela à extensions.conf
[PICKUP] ;(** est le numéro à taper avant l'ext choisie)
exten => _**.,1,Set(CALLERID(all)=PICKUP <${CALLERID(num)}>)
exten => _**.,n,NoOp(CALLERID=${CALLERID(all)})
exten => _**.,n,Pickup(${EXTEN:3})
exten => _**.,n,NoOp(CALLERID=${CALLERID(all)})
CLI repond toujours "ext not found"
Extension Changed 6000[default] new state Idle for Notify User 6001
-- Executing [6001@DLPN_NMC:1] Macro("SIP/6000-01d3e100", "stdexten,6001,SIP/6001") in new stack
-- Executing [s@macro-stdexten:1] Set("SIP/6000-01d3e100", "__DYNAMIC_FEATURES=") in new stack
-- Executing [s@macro-stdexten:2] Set("SIP/6000-01d3e100", "ORIG_ARG1=6001") in new stack
-- Executing [s@macro-stdexten:3] GotoIf("SIP/6000-01d3e100", "0?6:4") in new stack
-- Goto (macro-stdexten,s,4)
-- Executing [s@macro-stdexten:4] Dial("SIP/6000-01d3e100", "SIP/6001,35,") in new stack
== Using SIP RTP CoS mark 5
-- Called 6001
== Extension Changed 6001[default] new state Ringing for Notify User 6299
== Extension Changed 6001[default] new state Ringing for Notify User 6001
-- SIP/6001-01d574c0 is ringing
== Using SIP RTP CoS mark 5
[May 1 16:00:05] NOTICE[12245]: chan_sip.c:16869 handle_request_invite: Call from '6299' to extension '**6001' rejected because extension not found.
== Spawn extension (macro-stdexten, s, 4) exited non-zero on 'SIP/6000-01d3e100' in macro 'stdexten'
== Extension Changed 6001[default] new state Idle for Notify User 6299
== Extension Changed 6001[default] new state Idle for Notify User 6001
== Spawn extension (macro-stdexten, s, 4) exited non-zero on 'SIP/6000-01d3e100'
Mais hormis avoir saisie cela, nul part je dis que c'est un context à gérer
HELP me !!!
alternatiq
01/05/2011, 16h43
En relisant et relisant et relisant
J'ai modifier mon context [PICKUP] par :
[PICKUP] ;(*8 est le numéro à taper avant l'ext choisie)
exten => _*8.,1,Set(exten(all)=PICKUP ${EXTEN})
exten => _*8.,n,Pickup(${EXTEN:2})
Si un telephone sonne, par exemple le 6001 appelé depuis le 6000, en faisant *8# j'intercepte l'appel
Maintenant, si je veux faire des groupes, cela va etre plus chaud ?
alternatiq
01/05/2011, 16h49
Dans mes config, j'ai bien une extension qui est un chiffre, 10 ou 6000 ou 3256, par exemple
Le Caller ID, c'est Sebastien DUPONT par exemple ...
Mais comment le pbx fait un distinguo entre 10 et Sebastien DUPONT ...
J'ai toujours travailler sur des numéros, le "texte" de l'utilisateur est peu important en téléphonie traditionnelle, c'est même du "lard pour les cochons" ...
Je mets un nom sur les phones, juste pour reconnaitre la conf SIP qui est derrière ... est-ce le bon feeling ?
ffossard
01/05/2011, 16h52
En relisant et relisant et relisant
J'ai modifier mon context [PICKUP] par :
[PICKUP] ;(*8 est le numéro à taper avant l'ext choisie)
exten => _*8.,1,Set(exten(all)=PICKUP ${EXTEN})
exten => _*8.,n,Pickup(${EXTEN:2})
Si un telephone sonne, par exemple le 6001 appelé depuis le 6000, en faisant *8# j'intercepte l'appel
Maintenant, si je veux faire des groupes, cela va etre plus chaud ?
Je t'avais dis dans mon message du 28/04/2011 18h58 d'oublier la double-étoile et de tester avec quelque chose de plus simple pour commencer :)
Le problème d'utiliser le WebGUI, c'est que comme dans Freepbx et Trixbox il y'a des Macro qui empêche d'analyser la CLI pour trouver le problème, je te conseille d'oublier la GUI le temps de tout faire fonctionner, tu verra comme ça ira plus vite :na:
Pour les groupes, il faut mettre les bonnes variables dans sip.conf (callgroups, pickupgroups): http://www.voip-info.org/wiki/view/Asterisk+callgroups+and+pickupgroups
alternatiq
01/05/2011, 17h28
Je t'avais dis dans mon message du 28/04/2011 18h58 d'oublier la double-étoile et de tester avec quelque chose de plus simple pour commencer :)
Le problème d'utiliser le WebGUI, c'est que comme dans Freepbx et Trixbox il y'a des Macro qui empêche d'analyser la CLI pour trouver le problème, je te conseille d'oublier la GUI le temps de tout faire fonctionner, tu verra comme ça ira plus vite :na:
Pour les groupes, il faut mettre les bonnes variables dans sip.conf (callgroups, pickupgroups): http://www.voip-info.org/wiki/view/Asterisk+callgroups+and+pickupgroups
Oui je suis d'accord avec toi, mais comme je travaillais sur une prod, j'ai préféré arrêter et commencer une VM de test, le temps de monter et vérifier ..
Mon SIP.conf et blindé de commentaires, il y a une 15aines de lignes avec :
;!
;! Automatically generated configuration file
;! Filename: sip.conf (/etc/asterisk/sip.conf)
;! Generator: Manager
;! Creation Date: Sun May 1 14:02:17 2011
;!
;
; SIP Configuration example for Asterisk
;
[general]
context = default ; Default context for incoming calls
allowoverlap = no ; Disable overlap dialing support. (Default is yes)
bindport = 5060 ; UDP Port to bind to (SIP standard port for unencrypted UDP
bindaddr = 0.0.0.0 ; IP address to bind UDP listen socket to (0.0.0.0 binds to all)
tcpenable = no ; Enable server for incoming TCP connections (default is no)
tcpbindaddr = 0.0.0.0 ; IP address for TCP server to bind to (0.0.0.0 binds to all interfaces)
srvlookup = yes ; Enable DNS SRV lookups on outbound calls
subscribecontext = default
[basic-options](!); a template
dtmfmode = rfc2833
context = from-office
type = friend
[natted-phone](!,basic-options); another template inheriting basic-options
nat = yes
canreinvite = no
host = dynamic
[public-phone](!,basic-options); another template inheriting basic-options
nat = no
canreinvite = yes
[my-codecs](!); a template for my preferred codecs
disallow = all
allow = ilbc
allow = g729
allow = gsm
allow = g723
allow = ulaw
[ulaw-phone](!); and another one for ulaw-only
disallow = all
Je pense que comme tu dis, la structure entre un asterisk basic et un asterisk avec GUI, ils ont modifier le structure ... c'est pas aux mêmes endroits les infos ...
Je vais donc chercher ...
ffossard
01/05/2011, 19h16
Dans le sample, tu peux tout virer et repartir à zéro, c'est pas un soucis.
alternatiq
18/05/2011, 09h06
Bonjour,
Par défaut mon Asterisk fait déjà une surveillance des lignes ...
Je ne sais pas si c'est natif, ou dû au Asterisk GUI de l'installation.
Après une fresh install si je fais un "core show hints" dans la console j'aurais :
ipbx*CLI> core show hints
-= Registered Asterisk Dial Plan Hints =-
14@default : SIP/14 State:Idle Watchers 0
15@default : SIP/15 State:Idle Watchers 0
16@default : SIP/16 State:Idle Watchers 0
10@default : SIP/10 State:Idle Watchers 0
11@default : SIP/11 State:Idle Watchers 0
12@default : SIP/12 State:Idle Watchers 0
13@default : SIP/13 State:Idle Watchers 0
21@default : SIP/21 State:Unavailable Watchers 0
20@default : SIP/20 State:Unavailable Watchers 0
----------------
- 9 hints registered
Donc la je vois bien les phones allumés et ceux qui ne le sont pas et ceux qui sont occupés ou qui sonnent.
J'essaye de trouver le contexte qui les a déclaré, car dès que je cré un compte c'est auto il est dans ce contexte ...
J'aimerais y ajouter des "RingGroup" est-ce possible pour surveiller un groupe d'entrée et afficher sur les phones que cela sonnent pour intercepter ...
une idée ?
Merci à vous
ffossard
18/05/2011, 18h54
Les joies des distributions packagées et de leurs choses fonctionnant d'origine on ne sait pas trop comment, qu'on cherche à modifier sans trouver d'aide car pas vraiment de communauté autour :)
(ptit coup de pub: t'a essayé Xivo ? :whistle: )
Tu veux superviser un ring-group en fait ?
alternatiq
22/05/2011, 17h42
Tu veux superviser un ring-group en fait ?
Oui exact, mais j'ai fait des tas de recherche en Find sur le rep /etc/asterisk avec différentes "string" mais je trouve pas la déclaration des hints par défaut.
Y-a-t-il un forum ou support pour l'asterisk Web-gui ?
Merci pour le coup de main en attendant ...
ffossard
22/05/2011, 22h20
Oui exact, mais j'ai fait des tas de recherche en Find sur le rep /etc/asterisk avec différentes "string" mais je trouve pas la déclaration des hints par défaut.
Y-a-t-il un forum ou support pour l'asterisk Web-gui ?
Merci pour le coup de main en attendant ...
En forum de support, à mon avis chez Digium et nul part ailleurs, asterisk-gui ne passionne pas les foules :/
Si le répertoire de config est bien /etc/asterisk (vérifiable dans le fichier asterisk.conf), les hints doivent être dans extensions.conf ou un fichier inclus dans celui-ci, ça peut se trouver, mais peut-être qu'asterisk-gui fonctionne très différemment ... (encore une raison de ne pas l'utiliser, c'est le bordel pour trouver le fonctionnement d'un truc basique)
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions, Inc. Tous droits réservés