[asterisk-users] Parsing IAXPeers from Asterisk Manager(PHP API)
Chris Earle
cearle at cbltech.ca
Mon Jul 23 11:39:30 CDT 2007
Great idea/strategy, thank you!
Going to be c00l if I can get this working
regards,
--
Chris
"Jared Smith" <jsmith at digium.com> wrote in message
news:1184856544.6910.24.camel at hockey.jaredsmith.net...
> On Thu, 2007-07-19 at 09:16 -0400, Chris Earle wrote:
> > Trying to do what should be a basic info retrieval from my asterisk
> > network -- get the list of IAXPeers and break down by IP, name, and
Status
> > etc.
>
> Unfortunately, this is one of those cases where the AMI output is the
> same as the CLI output, which makes it difficult to parse. (Regular
> expressions can help, but you obviously have an aversion to them, so
> we'll use another method.) As long as your IAX peer names are shorter
> than 16 characters, you can use a trick I've used for a while... first
> get the list of iax2 peer names:
>
> Action: IAXPeers
> ActionID: 987325918659161
>
> ActionID: 987325918659161
> Name/Username Host Mask Port
> Status
> flibbertygibbit (Unspecified) (D) 255.255.255.255 0
> Unmonitored
> demo/asterisk 216.207.245.47 (S) 255.255.255.255 4569
> Unmonitored
> 2 iax2 peers [0 online, 0 offline, 2 unmonitored]
>
> and break on the first space or forward slash. Once I have an array of
> IAX peer names, I use the Command action to run "iax2 show peer
> <peername>" on each of the IAX peers, like this:
>
> Action: Command
> Command: iax2 show peer flibbertygibbit
> ActionID: 762315185916555
>
> Response: Follows
> Privilege: Command
> ActionID: 762315185916555
>
>
> * Name : flibbertygibbit
> Secret : <Not set>
> Context : blah
> Mailbox :
> Dynamic : Yes
> Callerid : "" <>
> Expire : -1
> ACL : No
> Addr->IP : (Unspecified) Port 0
> Defaddr->IP : 0.0.0.0 Port 4569
> Username : hullabaloo
> Codecs : 0xe703 (g723|gsm|g729|speex|ilbc)
> Codec Order : (none)
> Status : Unmonitored
> Qualify : every 60000ms when OK, every 10000ms when UNREACHABLE
> (sample smoothing Off)
>
> --END COMMAND--
>
> That output is obviously somewhat easier to parse, although it's not
> perfect either. Hopefully the Asterisk development community will
> eventually get around to rewriting much of the AMI actions to make their
> output easier for programs to parse.
>
> --
> Jared Smith
> Community Relations Manager
> Digium, Inc.
>
> _______________________________________________
> --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
>
More information about the asterisk-users
mailing list