Funnily enough, most people install phones with BLF lamps, on install something like hudlite/FOP/etc so you know if the person is on the phone before you call them.. PaulH > Daniel Johnson wrote: > > Hi, > > I am trying to implement the callback feature of our old phone system. > This feature may go by a different name in asterisk? > > It worked as follows. If phone A called phone B and it was BUSY, you > press a button to enable a callback. > User A is free to continue work or make other calls. > What this meant is that when both phones became free, phone A would > ring, on answer it would call phone B automatically. > > Here is how I have tried to achieve this with asterisk. > > When A calls B and B is busy you get a menu, 1 to set callback and 2 to > leave voicemail. > The set of the callback is done via AGI call to PHP script to set the > details in MySQL DB. > > On all call hangups I check to see if there is a pending Callback via > another AGI script. > The script sets a couple of variables which I check in my Dialplan. If > there is a callback pending for the > phone that just hung up, I need to check that the other phone involved > is FREE. This is what I can not get to work. > > I have tried ChanIsAvail which does not appear to work. > I have hints setup for each SIP phone. Which would be perfect, however > it does not appear that you can check the HINT STATE in the dialplan. > I have done plenty of googling and have found this > http://bugs.digium.com/view.php?id=10635 which appears that this kind of > > functionality was placed in 1.4.11. (DEVICE_STATE(), EXTENSION_STATE()) > I have 1.4.21.2 and do not have these features. > > To continue with the rest of the feature. If the ChanIsAvail says all is > > good. I then launch another AGI to write a CALLFILE and remove the > pending callback request from the DB. > This all works if A is not busy when B finishes their call etc. > > I am sure that others have implemented this kind of feature. If you > could share your implementation or give me some pointers or even the > correct asterisk name so I can google and get the help I need, that > would be great. > I am considering trying out 1.6 which should have these features, > however not sure if stability is going to be a problem. > > I have based my implantation based of a previous message to the list: > > On Tue, Jun 10, 2008 at 5:34 PM, Phil Knighton > wrote: > > > > Hello > > > > > > I'm looking for a way to do the following using my Asterisk system > and Snom > > > SIP phones... > > > > > > Scenario: > > > > > > Caller on Internal Phone 1 calls internal phone2. Phone 2 is busy > (or more > > > accurately goes straight to voicemail). > > > Caller on internal phone 1 can press a button / dial a code > (explained in > > > next step) and hangup > > > When phone 2 is free, phone 1 rings and on answer dials phone 2 > > > > > > I was sure this was called "camping" - but all the camping stuff I > can find, > > > refers to the caller having to hang on the phone and wait. Am I > missing > > > something? > > > > > > Anyone have a solution? > > > > > > > Quick solution that comes into mind: > > Set(exten_copy = ${EXTEN}); > Dial(SIP/${EXTEN}) > if ("${DIALSTATUS}"="BUSY") { > // prompt for camp > Set(DB(camp/${EXTEN}/call_to)=${CALLERID(num)); > } > > h => { > Set(call_to=${DB(camp/${exten_copy}/call_to)}); > if ("${call_to}"!="") { > Set(DB(camp/${exten_copy}/call_to)=); > System(call_to ${exten_copy} ${call_to}); > } > } > > So, in case if phone2 is busy, store callerid of phone1 in database, > so when phone2 will hangup it will triger a script "call_to" which > however can originate call trough manager or call-file. > > Of course you will need some additional handling in case if multiple > callers decide to camp, or diferent protocols are used, etc. > > Regards, > Atis > > > > Thanks in Advance for any help. > > Regards > > *Daniel Johnson* > Systems Administrator / Systems Development > Scanning Systems Australia > > Scanning Systems Australia > > *Office:* +61 7 3387 5555 > *Facsimile:* +61 7 3387 5588 > *E-mail:* dan.j@scanningsystems.com.au > > *Website:* http://www.scanningsystems.com.au