wow, this thread really took off.
There’s a ton of fun things to do with the System() application. I’ve implemented the NWS integration, through System(), which will pull up the latest forecast, as opposed the last daily like cron does. Try this (for NWS zones, not cities):
[macro-nws]
exten => s,1,System(wget -O - ${ARG1} | tail +11 | head -n-3 | sed \'s/\\./ /g\' | sed \'s/30S/thirties/g\' | sed \'s/40S/fourties/g\' | sed \'s/50S/fifties/g\' | sed \'s/60S/sixties/g\' | sed \'s/70S/seventies/g\' | sed \'s/80S/eighties/g\' | text2wave -f 8000 -o /var/lib/asterisk/sounds/forecast.wav)
exten => s,n,Playback(forecast,wav)
exten => s,n,Hangup()
And call, like:
exten => 98,1,Macro(nws,ftp://tgftp.nws.noaa.gov/data/forecasts/zone/nc/ncz104.txt)
exten => 99,1,Macro(nws,ftp://tgftp.nws.noaa.gov/data/forecasts/zone/va/vaz095.txt)
how about the following suggestion if you want to do something fun and useful. Write a dialplan (or web interface to control would probably be more useful) that an administrator could set up a channel to automatically be ‘monitored’ with tcpdump. Have options like turn on always if xyz channel is engaged, turn on once only next time, turn on only when xyz + abc channel are bridged, etc. Have it tag the tcpdump with the unique callid so that it can be subsequently correlated to the cdr for analysys. This would be a very useful troubleshooting tool.
have fun (shouldn’t be too hard).
p