|
#!/bin/bash
# Send a call desktop notification to sparrow and ehelpwpg. The notify-send job
# is run in the background to speed processing of this script.
source $AST_AGI_DIR/bashagi.sh
#--- Prepare some variables and launch a background process
if [ "$1" != '--background' ]
then
AGI_read_vars
AGI_GET_VARIABLE 'SUPERFECTA_OLD' SF_OLD
AGI_GET_VARIABLE 'SUPERFECTA_NEW' SF_NEW
AGI_GET_VARIABLE 'WHITELIST_RESULT' WHITELIST_RESULT
export SF_OLD SF_NEW WHITELIST_RESULT
AGI_background
exit
fi
#--- Background portion of the script
AGI_VERBOSE_FN=${AGI_VERBOSE_FN:=/dev/stderr}
CNUM="$AGI_CALLERID"
CNAM="$AGI_CALLERIDNAME"
[ "$AGI_DNID" = '12044783561' -o "$AGI_DNID" == '3561' ] && LINE='Personal line' || LINE='E-Help Wpg'
# Testing
#[ "$CNUM" ] || CNUM='2045550198' CNAM='B BOFFENRIDGE' WHITELIST_RESULT='success'
# Normalise the phone number
[ "${CNUM:0:1}" == 1 ] && ONE_DASH='1-' CNUM=${CNUM:1}
CNUM="${ONE_DASH}${CNUM:0:3}-${CNUM:3:3}-${CNUM:6}"
if [ "$SF_OLD" ]
then
[ "${SF_OLD:0:13}" == 'LOOKUP_FAILED' ] && SF_OLD="${SF_OLD:14}"
[ "${SF_NEW:0:13}" == 'LOOKUP_FAILED' ] && SF_NEW="${SF_NEW:14}"
CNAM="$SF_OLD"
[ "$SF_NEW" -a "$SF_OLD" != "$SF_NEW" ] && SF_TEXT="$SF_NEW<br>"
fi
BODY="${SF_TEXT}Number is $CNUM<br><i>Whitelist result <b>$WHITELIST_RESULT</b></i>"
V_BODY="$(echo "$BODY" | sed 's:</\?[ib]>::g;s:<br>:; :g')"
AGI_VERBOSE "PBX $LINE: Call from $CNAM; $V_BODY"
TIMEOUT=60
ICON="/usr/share/icons/Adwaita/48x48/legacy/call-start.png"
for HOST in sparrow ehelpwpg; do
ping -c1 $HOST &>/dev/null && ssh brian@$HOST "export DISPLAY=:0.0
notify-send --app-name='PBX $LINE' --icon $ICON --expire-time $((TIMEOUT*1000)) \
'Call from $CNAM' '$BODY'"
done
# vim: tabstop=4
|