<< I was wondering if I could do something with regexten, but seemed like a messy solution. Is there any other way? I don't mind getting my hands dirty with perl or C, but I wouldn't really know where to start ...>>
A suggestion is to take a look at the commands available at the CLI and determine if the information they provide would meet your requirement. In particular look at the command "database show". This will/should show the phone registered and you can query the contents of the database from the dialplan using DBGet(). If this does not meet your needs you could try some of the other command to see if they do provide the information you are looking for. For example, the CLI command "sip show peers". Information such as that from the sip show peers command is not available (so far as I'm aware) from the dialplan. However, if one or more CLI commands do provide the information you are looking for and you are prepared to write a little code, you can use the Manager API to call these commands and write the status into the registry database or into variables. It would be inefficient to have to run a manager command periodically. Fortunately, Asterisk provides some "event" information to processes listening on the Manager API port. The events broadcast include register/unregister actions. By monitoring the events your code can respond to the events of interest and, for example, update status variables dynamically. For more information about the Manager API see: http://www.voip-info.org/tiki-index.php?page=Asterisk%20manager%20API Bill Seddon Lyquidity Solutions Limited -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Tim Pushor Sent: February 23, 2005 5:56 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [Asterisk-Users] Able to tell if phone is registered? Kevin, Thanks for the reply, and thats what I am doing now, but I would really like to know in advance if a particular phone has been registered before taking a certain action. I was wondering if I could do something with regexten, but seemed like a messy solution. Is there any other way? I don't mind getting my hands dirty with perl or C, but I wouldn't really know where to start ... Thanks, Tim Kevin P. Fleming wrote: > Tim Pushor wrote: > >> I have a new asterisk setup running at home and am very happy with >> it. One thing that I am trying to do is to take various actions in >> the dialplan *if* a particular phone is >> registered/authenticated/connected. For example, if someone dials >> *me* and is shows that I am connected via my softphone, to try it >> instead of my deskphone (and possibly notifiy the user in advance >> that it is taking that action). > > > Just go ahead and try to send the call there... it will fail > immediately if it is not registered, with a DIALSTATUS of CHANUNAVAIL. > > If you are using CVS HEAD, you can use "regexten" to accomplish > something similar, but I wouldn't recommend it as it's about to change > :-) > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users