Outgoing Call


I am new to asterisk.
I want to use it as outbound dialer, where asterisk should pick Phonenumbers from database table, & make call automatically through all available channels of E1.

what are the alternatives ?

Can I implements it in dialplan as
(psuedo code)

extern => s,1, getcli from DB to dial out
extern=> s,n, Dial/Originate call via Dhadi/g1/Phone_number
extern=> s,n, update database
extern=> s,n, Play IVR /promts
extern=> s,n, take input etc …
extern=> s,n, Hangup
extern=> s,n, goto( s,1)

so it will work in continous loop ???

PLZ guide in detail, the recommended way to heavy productive system, & sample syntex

I will be thanksful to you

Google vicidial