April 30, 2004 Asterisk Call Parking These all work with sip native transfers and sip attended transfers in the example of "query" option. I tested this on my 7960 and it works great. Please others test it. cd /usr/src/asterisk cp contrib/scripts/astxs /usr/bin/ cd apps wget http://www.bkw.org/app_valetparking.c cd .. astxs -install apps/app_valetparking.c ; ; Lets Auto Park the person in the first available slot in mylot ; 360 second timeout and return to default,10,1 on timeout ; exten => *1,1,ValetParkCall(auto|mylot|360|10|1|default) ; ; Lets pickup the first call in the lot using fifo in mylot ; exten => *2,1,ValetUnParkCall(fifo|mylot) ; ; Lets pickup the last call parked in the lot use filo in mylot ; exten => *3,1,ValetUnParkCall(filo|mylot) ; ; Lets cycle thru a list of calls in mylot and press * when you hear the one ; you want to pickup. ; exten => *4,1,ValetParkList(mylot) ; ; Ok lets query for the slot to park the call on in mylot. ; And have a 360 second timeout and return to default,10,1 on timeout ; exten => *5,1,ValetParkCall(query|mylot|360|10|1|default) ; ; Ok lets query for the slot to pickup in mylot ; exten => *6,1,ValetUnparkCall(query|mylot) ; ; This is used for absolute parking. My extensions are 2 digits. So if ; I park a call on 810 it would return to default,10,1 on timeout ; Note: you can't park calls on top of each other. You will get reorder ; or busy and the transfer will fail and you can resume the call with flash ; or resume. ; exten => _8XX,1,ValetParkCall(${EXTEN}|mylot|500|${EXTEN:1}|1|default) ; ; This is used to pickup a call that is parked. ; exten => _*8XX,1,ValetUnParkCall(${EXTEN:1}|mylot) Have fun!!! Posted by brian at 05:23 PM | Comments (0) | TrackBack