I would imagine that using some sort of variable temp structure might help you. However, the trick is keying the database tree so that in the event of multiple calls at the same time, you're looking at the "right" tree during your post-call processing. Hmm... is ${CHANNEL} getting erased in the h context? That would be the "best" key, I suppose.

JT

At 8:47 AM +0200 8/14/03, Florian Overkamp wrote:

At 11:50 13-8-2003 -0500, you wrote:
Correct me if i'm wrong but doesn't the cdr modules log the call duration?

True, but in some cases you would want to do more. I have built IVR's that require some after-call handling. For this I tried to use variables as well, but failed. The solution in my case was to pass the variables from the extensions.conf and passing them as arguments to the AGI script rather then reading them inside the AGI script.


> I'm trying to do some custom call logging, and I want to call an AGI
 script from a hangup handler to log call durations and things. Although
 the script executes, it isn't retrieving variables from the AGI
 interface. Looking closer, I realised the variables are actually getting
 unset before the h extension is reached.

 [foo]
 s,1,SetVar,foo=bar
 s,2,Play(audio/a-long-prompt)
 h,1,AGI(log-call-duration.pl)

 When I do an $agi->get_variable("foo") from the perl, I get the string
 "noresponse" returned.

 This all works fine if I don't call the AGI from the hangup extension,
 but from a normal one instead.




Met vriendelijke groet,
Florian Overkamp
ObSimRef BV (http://www.obsimref.com/)
_______________________________________________
Asterisk-Users mailing list
[EMAIL PROTECTED]
http://lists.digium.com/mailman/listinfo/asterisk-users

_______________________________________________ Asterisk-Users mailing list [EMAIL PROTECTED] http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to