Bonjour,
Mon problème concerne les transferts.

je souhaiterais être en mesure de déterminer quand arrive un appel entrant et le moment où il se termine, ainsi que la durée des différents appels sortants qui seraient effectués durant les transferts.
Sans transfert aucun problème Mais avec les transferts j'ai vraiment du mal à comprendre ce qui se passe.
Il y a un moyen simple, c'est passer par un proxy, et prendre mes mesures au niveau du proxy. Malheureusement je dois écarter cette méthode car je n'ai qu'un serveur.

En dehors de mon problème j'aurais bien aimé comprendre :
- fonctionnement des channels
- comment utiliser les fonctions qui agissent sur les CDR et dans quel cadre les utiliser : ForkCDR, ResetCDR, NoCDR, Dial (option "C")
Connaisez-vous des sites avec la documentation et qui donne des exemples d'utilisation ?

Mes contraintes : un seul serveur asterisk & la version 1.6

Voici un extrait de mon code, en faites j'ai quelque chose de vraiment bizarre, si je recois un appel, et qu'ensuite j'effectue un transfert, je vois dans ma console le channel en zombie se terminer avec l'extension "H" au moment du transfert. puis quand on raccroche j'ai bien mon son "aurevoir" qui est joué, mais du coup l'extension "H" n'est plus exécutée ????


[transfert]
exten => _X.,1,Answer()
exten => _X.,n,NoOp(Debut transfert)
exten => _X.,n,Dial(SIP/1/33632005XXX,20,tT)
exten => h,n,NoOp(Fin Transfert ${CDR(billsec)}/$[${DIALEDTIME}-${ANSWEREDTIME}])

[depart]
exten => _X.,1,Wait(2)
exten => _X.,n,Answer()
exten => _X.,n,NoOp(bonjour)
exten => _X.,n,Set(TRANSFER_CONTEXT=transfert)
exten => _X.,n,Dial(SIP/2/33632005XXX,20,gT)
exten => _X.,n,Playback(aurevoir)
exten => h,1,NoOp(Fin entrant ${CDR(billsec)} $[${DIALEDTIME}-${ANSWEREDTIME}])