[asterisk-users] Help getting info from caller
Steve Edwards
asterisk.org at sedwards.com
Sat Jan 2 13:30:47 CST 2010
On Sat, 2 Jan 2010, Landy Landy wrote:
> I have a small WISP and would like to have customers to call our number
> to check their balance. I am planning on writing an AGI with php so it
> can get the customer info from the customer database. I don't know how
> to interact with the caller while in the agi script so this is what I
> have in mind.
There are 3 approaches you could take for this:
1) You could do the entire task in dialplan. Personally, I find database
access in dialplan unwieldy and ugly.
2) You could do the user interaction in dialplan and the database access
in an AGI.
3) You could do the entire task in an AGI. This would be my choice because
it wraps everything up into a nice little black box with a seasonal bow on
top. Your dialplan then just looks like:
exten = 33,n,agi(say-balance)
I have nightmares about "fat-fingering" an impossible to find syntactical
error into a previously working ream of dialplan with my boss watching
impatiently over my shoulder, constantly reminding me how much money he is
loosing per minute :)
> [test-agi]
> exten => 33,1,Answer()
> exten => 33,n,Wait(0.5)
You could "merge" these as "answer(500)."
> exten => 33,n,BackGround(please-enter)
> exten => 33,n,BackGround(customer-account)
> exten => 33,n, ---- I would like to set a variable here but don't know how -----
> exten => 33,n,BackGround(enter-password)
> exten => 33,n, ---- I would like to set a variable here but don't know how -----
You could use read() or authenticate() here.
> exten => 33,n,AGI(testphp.agi,${ACCOUNT},${PASSWORD})
> ---- receive the balance here from agi ----
The AGI would use "set variable" to create and set the channel variable.
> I've never worked with agi but, I'm reading some documents I found
> online but, need more help trying to get this working.
Use somebody's established and debugged library. Nobody gets it right the
first time.
--
Thanks in advance,
-------------------------------------------------------------------------
Steve Edwards sedwards at sedwards.com Voice: +1-760-468-3867 PST
Newline Fax: +1-760-731-3000
More information about the asterisk-users
mailing list