rendered paste body#!/bin/bash -x#define max idle timemaxtime=600#define queue to monitorqnum=1qmembers=`asterisk -rx "queue show $qnum" | grep -a Local | sed 's/^[ \t]*//' | cut -d" " -f 1,10`while read channel idletime; dodevice=`asterisk -rx "database showkey AMPUSER/${channel:6}/device" | grep -a device | cut -d":" -f2 | sed 's/ //g' `bridge=`asterisk -rx "show channels" | grep $channel`dial=`asterisk -rx "database showkey DEVICE/$device/dial" | grep -a dial | cut -d":" -f2 | sed 's/ //g' `file=$RANDOM.call if (( ${idletime} >= ${maxtime} )); then if [ -z ${bridge} ]; then echo "Channel: $dial" >> $file echo "CallerID: system <${device}>" >> $file echo "MaxRetries: 6" >> $file echo "RetryTime: 2" >> $file echo "WaitTime: 30" >> $file echo "Context: custom-userlogoff" >> $file echo "Extension: autologoff" >> $file echo "Priority: 1" >> $file echo chown asterisk:asterisk $file mv $file /var/spool/asterisk/outgoing fi fi done <<< "$qmembers"