[asterisk-users] pipeast [was: Re: How to repeat pri show span and zap show channel commands]
tzafrir.cohen at xorcom.com
Sun Dec 1 05:46:41 CST 2013
Long ago, On Wed, Feb 21, 2007 at 09:32:26AM +0200, Tzafrir Cohen wrote:
> On Wed, Feb 21, 2007 at 07:56:18AM +0100, Olivier wrote:
> > Any better idea than running an dedicated shell script with a "asterisk -rx
> > pri show span 1" line ?
> Here is my pipeast script:
> (while read line; do
> echo -n "$line" # trim the ending newline
> sleep 0.001 # generate different write(2)-s
> done) | socat - /var/run/asterisk/asterisk.ctl
> You can pipe whatever you want to that. e.g:
> while true; do
> echo pri show span 1
> sleep 30
> done | pipeast
> Note: socat is available as a debian package:
> http://packages.debian.org/socat .
It has lately come to my attention that this method is broken (and has
been, for quite some time. Sure enough. It does not use any published
inteerface) and that there is actually some demand for using it.
A version of pipeast that seems to work now is:
while read line; do
echo "$line" | tr '\n' '\0'
done | nc -U /var/run/asterisk/asterisk.ctl
1. nc, or at least openbsd-netcat, can use unix domain sockets (-U).
No need for socat.
2. that /var/run is slowly converting to /run , though the
compatibility link /var/run will likely stay for quite some time.
3. If this script breaks in the future, you get to keep both pieces.
But this is only guaranteed if it breaks to exactly two pieces.
icq#16849755 jabber:tzafrir.cohen at xorcom.com
+972-50-7952406 mailto:tzafrir.cohen at xorcom.com
More information about the asterisk-users