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 sedwa...@sedwards.com Voice: +1-760-468-3867 PST Newline Fax: +1-760-731-3000 _______________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users