mirror of
https://github.com/AG7GN/nexus-utilities.git
synced 2025-05-15 22:20:09 -07:00
Disable messaging
This commit is contained in:
parent
d11b47dec3
commit
fa7ae9c480
@ -16,7 +16,7 @@
|
|||||||
#%
|
#%
|
||||||
#================================================================
|
#================================================================
|
||||||
#- IMPLEMENTATION
|
#- IMPLEMENTATION
|
||||||
#- version ${SCRIPT_NAME} 2.1.5.4
|
#- version ${SCRIPT_NAME} 2.1.6
|
||||||
#- author Steve Magnuson, AG7GN
|
#- author Steve Magnuson, AG7GN
|
||||||
#- license CC-BY-SA Creative Commons License
|
#- license CC-BY-SA Creative Commons License
|
||||||
#- script_id 0
|
#- script_id 0
|
||||||
@ -49,7 +49,7 @@ Optnum=$#
|
|||||||
|
|
||||||
function TrapCleanup() {
|
function TrapCleanup() {
|
||||||
[[ -d "${TMPDIR}" ]] && rm -rf "${TMPDIR}/"
|
[[ -d "${TMPDIR}" ]] && rm -rf "${TMPDIR}/"
|
||||||
pkill -f "bash -c tail -F ${F[_LOGFILE_]}"
|
pkill -f "socat -u"
|
||||||
pkill -f "APRS Message"
|
pkill -f "APRS Message"
|
||||||
for P in $direwolf_PID $socat_PID $kissutil_PID ${YAD_PIDs[@]}
|
for P in $direwolf_PID $socat_PID $kissutil_PID ${YAD_PIDs[@]}
|
||||||
do
|
do
|
||||||
@ -131,7 +131,7 @@ function setDefaults () {
|
|||||||
D[17]="8011" # KISS Port
|
D[17]="8011" # KISS Port
|
||||||
D[18]="0" # Direwolf text colors
|
D[18]="0" # Direwolf text colors
|
||||||
D[19]="disabled" # Autostart APRS on boot
|
D[19]="disabled" # Autostart APRS on boot
|
||||||
D[20]="Monitor + Message Only" # digipeat/igate operating mode
|
D[20]="Monitor Only" # digipeat/igate operating mode
|
||||||
D[21]="" # Custom configuration file
|
D[21]="" # Custom configuration file
|
||||||
D[22]="TRUE" # Open monitor window at startup
|
D[22]="TRUE" # Open monitor window at startup
|
||||||
D[23]="" # Log file destination
|
D[23]="" # Log file destination
|
||||||
@ -231,7 +231,7 @@ function loadSettings () {
|
|||||||
#[[ $AUDIOSTATs =~ ${F[_AUDIOSTATS_]} ]] && AUDIOSTATs="$(echo "$AUDIOSTATs" | sed "s/${F[_AUDIOSTATS_]}/\^${F[_AUDIOSTATS_]}/")"
|
#[[ $AUDIOSTATs =~ ${F[_AUDIOSTATS_]} ]] && AUDIOSTATs="$(echo "$AUDIOSTATs" | sed "s/${F[_AUDIOSTATS_]}/\^${F[_AUDIOSTATS_]}/")"
|
||||||
|
|
||||||
#APRSMODEs="Digipeater~iGate (RX Only)~iGate (TX+RX)~Digipeater + iGate"
|
#APRSMODEs="Digipeater~iGate (RX Only)~iGate (TX+RX)~Digipeater + iGate"
|
||||||
APRSMODEs="Monitor + Message Only~Custom~Fill-in Digipeater~Fill-in Digipeater + iGate~Full Digipeater~Full Digipeater + iGate~iGate~iGate (RX Only)"
|
APRSMODEs="Monitor Only~Custom~Fill-in Digipeater~Fill-in Digipeater + iGate~Full Digipeater~Full Digipeater + iGate~iGate~iGate (RX Only)"
|
||||||
case ${F[_APRSMODE_]} in
|
case ${F[_APRSMODE_]} in
|
||||||
"Full Digipeater + iGate")
|
"Full Digipeater + iGate")
|
||||||
APRSMODEs="$(echo "$APRSMODEs" | sed -e "s/Full Digipeater + iGate/\^Full Digipeater + iGate/1")"
|
APRSMODEs="$(echo "$APRSMODEs" | sed -e "s/Full Digipeater + iGate/\^Full Digipeater + iGate/1")"
|
||||||
@ -254,8 +254,8 @@ function loadSettings () {
|
|||||||
"Custom")
|
"Custom")
|
||||||
APRSMODEs="$(echo "$APRSMODEs" | sed -e "s/Custom/\^Custom/1")"
|
APRSMODEs="$(echo "$APRSMODEs" | sed -e "s/Custom/\^Custom/1")"
|
||||||
;;
|
;;
|
||||||
"Monitor + Message Only")
|
"Monitor Only")
|
||||||
APRSMODEs="$(echo "$APRSMODEs" | sed -e "s/Monitor + Message Only/\^Monitor + Message Only/1")"
|
APRSMODEs="$(echo "$APRSMODEs" | sed -e "s/Monitor Only/\^Monitor Only/1")"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
@ -391,9 +391,9 @@ function monitorMessages () {
|
|||||||
local TITLE="Monitor APRS Messages to ${F[_CALL_]}"
|
local TITLE="Monitor APRS Messages to ${F[_CALL_]}"
|
||||||
(( ${F[_SSID_]} == 0 )) && MYCALL="${F[_CALL_]}" || MYCALL="${F[_CALL_]}-${F[_SSID_]}"
|
(( ${F[_SSID_]} == 0 )) && MYCALL="${F[_CALL_]}" || MYCALL="${F[_CALL_]}-${F[_SSID_]}"
|
||||||
#local CMD="tail -F ${F[_LOGFILE_]} | grep -Eav '^[0-9]+,[0-9]+,.*,${MYCALL}' | grep '${F[_CALL_]}'"
|
#local CMD="tail -F ${F[_LOGFILE_]} | grep -Eav '^[0-9]+,[0-9]+,.*,${MYCALL}' | grep '${F[_CALL_]}'"
|
||||||
local CMD="tail -F ${F[_LOGFILE_]} | grep --line-buffered '${F[_CALL_]}'"
|
#local CMD="tail -F ${F[_LOGFILE_]} | grep --line-buffered '${F[_CALL_]}'"
|
||||||
|
|
||||||
#local CMD="socat -u udp-recv:3333,reuseaddr >(sed -u 's/\x1b\[[0-9;]*m//g' | grep -Eav '^\[.* [0-9]{8}T.*\] ${F[_CALL_]}>' | sed -En '/^\[.* [0-9]{8}T.*\] .*>/,/^$/p' | sed -En '/^\[.* [0-9]{8}T.*\] .*>.*::${F[_CALL_]}.*/,/^$/p')"
|
local CMD="socat -u udp-recv:3333,reuseaddr >(sed -u 's/\x1b\[[0-9;]*m//g' | stdbuf -o0 grep -Eav '^\[.* [0-9]{8}T.*\] ${F[_CALL_]}' | sed -uEn '/^\[.* [0-9]{8}T.*\] .*>/,/^$/p' | sed -uEn '/^\[.* [0-9]{8}T.*\] .*>.*::${F[_CALL_]}.*/,/^$/p')"
|
||||||
lxterminal --geometry=80x15 -t "$TITLE" -e "$CMD" &
|
lxterminal --geometry=80x15 -t "$TITLE" -e "$CMD" &
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -451,24 +451,11 @@ function sendMessage () {
|
|||||||
echo "STATUS_TEXT=''" >> $MSG_CACHE_FILE
|
echo "STATUS_TEXT=''" >> $MSG_CACHE_FILE
|
||||||
echo "POSITION_TEXT='Station'" >> $MSG_CACHE_FILE
|
echo "POSITION_TEXT='Station'" >> $MSG_CACHE_FILE
|
||||||
fi
|
fi
|
||||||
source $MSG_CACHE_FILE
|
|
||||||
MESSAGE_TYPE="${1^^}"
|
MESSAGE_TYPE="${1^^}"
|
||||||
MYCALL="${F[_CALL_]^^}"
|
MYCALL="${F[_CALL_]^^}"
|
||||||
SSID="${F[_SSID_]}"
|
SSID="${F[_SSID_]}"
|
||||||
GRID="${F[_GRID_]}"
|
GRID="${F[_GRID_]}"
|
||||||
LOC="${F[_LOC_]}"
|
LOC="${F[_LOC_]}"
|
||||||
if [[ -z $ADD_PATH ]]
|
|
||||||
then
|
|
||||||
APRS_PATHs="^CQ~ARISS~CQ,ARISS"
|
|
||||||
else
|
|
||||||
APRS_PATHs="^${ADD_PATH}~CQ~ARISS~CQ,ARISS"
|
|
||||||
fi
|
|
||||||
if [[ -z $MESSAGE_TEXT ]]
|
|
||||||
then
|
|
||||||
MESSAGEs="QSL & 73 ${MYCALL} in ${GRID::4}~Heard you in ${LOC} ${GRID::4}"
|
|
||||||
else
|
|
||||||
MESSAGEs="^${MESSAGE_TEXT}~QSL & 73 ${MYCALL} in ${GRID::4}~Heard you in ${LOC} ${GRID::4}"
|
|
||||||
fi
|
|
||||||
local APRS_VERSION="$(direwolf -h | grep -m1 "^Dire.*version" | tr -d '[:alpha:][:space:].')"
|
local APRS_VERSION="$(direwolf -h | grep -m1 "^Dire.*version" | tr -d '[:alpha:][:space:].')"
|
||||||
[[ ${APRS_VERSION::2} =~ ^[0-9][0-9]$ ]] || APRS_VERSION="00"
|
[[ ${APRS_VERSION::2} =~ ^[0-9][0-9]$ ]] || APRS_VERSION="00"
|
||||||
local APRS_PATH="APDW${APRS_VERSION::2}"
|
local APRS_PATH="APDW${APRS_VERSION::2}"
|
||||||
@ -479,6 +466,19 @@ function sendMessage () {
|
|||||||
FREE)
|
FREE)
|
||||||
while true
|
while true
|
||||||
do
|
do
|
||||||
|
source $MSG_CACHE_FILE
|
||||||
|
if [[ -z $ADD_PATH ]]
|
||||||
|
then
|
||||||
|
APRS_PATHs="^CQ~ARISS~CQ,ARISS~CQ,WIDE2-1"
|
||||||
|
else
|
||||||
|
APRS_PATHs="^${ADD_PATH}~CQ~ARISS~CQ,ARISS~CQ,WIDE2-1"
|
||||||
|
fi
|
||||||
|
if [[ -z $MESSAGE_TEXT ]]
|
||||||
|
then
|
||||||
|
MESSAGEs="QSL & 73 ${MYCALL} in ${GRID::4}~Heard you in ${LOC} ${GRID::4}"
|
||||||
|
else
|
||||||
|
MESSAGEs="^${MESSAGE_TEXT}~QSL & 73 ${MYCALL} in ${GRID::4}~Heard you in ${LOC} ${GRID::4}"
|
||||||
|
fi
|
||||||
MSG=$(yad --center --width=400 --height=100 \
|
MSG=$(yad --center --width=400 --height=100 \
|
||||||
--title="Free-form APRS Message" --text-align=center \
|
--title="Free-form APRS Message" --text-align=center \
|
||||||
--text="$MESSAGE_GUI_TEXT" --form --item-separator='~' \
|
--text="$MESSAGE_GUI_TEXT" --form --item-separator='~' \
|
||||||
@ -634,7 +634,9 @@ mkfifo $PIPE
|
|||||||
exec 6<> $PIPE
|
exec 6<> $PIPE
|
||||||
|
|
||||||
MSGPATH="$TMPDIR/MESSAGES"
|
MSGPATH="$TMPDIR/MESSAGES"
|
||||||
|
RECEIVED_MESSAGES_PATH="$TMPDIR/received"
|
||||||
mkdir -p $MSGPATH
|
mkdir -p $MSGPATH
|
||||||
|
mkdir -p $RECEIVED_MESSAGES_PATH
|
||||||
|
|
||||||
#============================
|
#============================
|
||||||
# PARSE OPTIONS WITH GETOPTS
|
# PARSE OPTIONS WITH GETOPTS
|
||||||
@ -866,6 +868,7 @@ do
|
|||||||
echo -e "Direwolf listening on port ${F[_KISSPORT_]} for KISS connections." >&6
|
echo -e "Direwolf listening on port ${F[_KISSPORT_]} for KISS connections." >&6
|
||||||
echo -e "Direwolf listening on port ${F[_AGWPORT_]} for AGW connections." >&6
|
echo -e "Direwolf listening on port ${F[_AGWPORT_]} for AGW connections." >&6
|
||||||
fi
|
fi
|
||||||
|
#KISSUTIL="$(command -v kissutil) -o $RECEIVED_MESSAGES_PATH -f $MSGPATH -h 127.0.0.1 -p ${F[_KISSPORT_]}"
|
||||||
KISSUTIL="$(command -v kissutil) -f $MSGPATH -h 127.0.0.1 -p ${F[_KISSPORT_]}"
|
KISSUTIL="$(command -v kissutil) -f $MSGPATH -h 127.0.0.1 -p ${F[_KISSPORT_]}"
|
||||||
echo -e "Starting $KISSUTIL" >&6
|
echo -e "Starting $KISSUTIL" >&6
|
||||||
let COUNT=0
|
let COUNT=0
|
||||||
@ -878,6 +881,7 @@ do
|
|||||||
(( $COUNT > 5 )) && break
|
(( $COUNT > 5 )) && break
|
||||||
done
|
done
|
||||||
[[ -z $kissutil_PID ]] && echo -e "\nkissutil did not start!" >&6 || echo -e "\nkissutil running. PID=$kissutil_PID" >&6
|
[[ -z $kissutil_PID ]] && echo -e "\nkissutil did not start!" >&6 || echo -e "\nkissutil running. PID=$kissutil_PID" >&6
|
||||||
|
#echo "Received messages are in $RECEIVED_MESSAGES_PATH" >&6
|
||||||
fi
|
fi
|
||||||
if [[ $socat_PID != "" ]]
|
if [[ $socat_PID != "" ]]
|
||||||
then
|
then
|
||||||
@ -969,34 +973,43 @@ do
|
|||||||
YAD_PIDs+=( $! )
|
YAD_PIDs+=( $! )
|
||||||
|
|
||||||
# Start the Send Messages tab
|
# Start the Send Messages tab
|
||||||
yad --plug="$ID" --tabnum=3 --show-uri \
|
#yad --plug="$ID" --tabnum=3 --show-uri \
|
||||||
--item-separator="~" \
|
# --item-separator="~" \
|
||||||
--separator="~" \
|
# --separator="~" \
|
||||||
--align=right \
|
# --align=right \
|
||||||
--text-align=center \
|
# --text-align=center \
|
||||||
--borders=10 \
|
# --borders=10 \
|
||||||
--form \
|
# --form \
|
||||||
--scroll \
|
# --scroll \
|
||||||
--columns=1 \
|
# --columns=1 \
|
||||||
--field="<b>Compose Free-form Message</b>":FBTN "bash -c 'source $CONFIG_FILE; sendMessage FREE'" \
|
# --field="<b>Compose Free-form Message</b>":FBTN "bash -c 'source $CONFIG_FILE; sendMessage FREE'" \
|
||||||
--field="<b>Compose Status Message</b>":FBTN "bash -c 'source $CONFIG_FILE; sendMessage STATUS'" \
|
# --field="<b>Compose Status Message</b>":FBTN "bash -c 'source $CONFIG_FILE; sendMessage STATUS'" \
|
||||||
--field="<b>Compose Position Message</b>":FBTN "bash -c 'source $CONFIG_FILE; sendMessage POSITION'" \
|
# --field="<b>Compose Position Message</b>":FBTN "bash -c 'source $CONFIG_FILE; sendMessage POSITION'" \
|
||||||
--field="":LBL "" \
|
# --field="":LBL "" \
|
||||||
--field="<span color='blue'><b>Monitor incoming messages for ${F[_CALL_]}</b></span>":FBTN "bash -c 'source $CONFIG_FILE; monitorMessages'" >/dev/null &
|
# --field="<span color='blue'><b>Monitor incoming messages for ${F[_CALL_]}</b></span>":FBTN "bash -c 'source $CONFIG_FILE; monitorMessages'" >/dev/null &
|
||||||
YAD_PIDs+=( $! )
|
#YAD_PIDs+=( $! )
|
||||||
|
|
||||||
# Save the previous piano script autostart setting
|
# Save the previous piano script autostart setting
|
||||||
PREVIOUS_AUTOSTART="${F[_BOOTSTART_]}"
|
PREVIOUS_AUTOSTART="${F[_BOOTSTART_]}"
|
||||||
|
|
||||||
# Set up a notebook with the 3 tabs.
|
# Set up a notebook with the 3 tabs.
|
||||||
#yad --title="$TITLE" --text="<b><big>Direwolf APRS Monitor and Configuration</big></b>" \
|
#yad --title="$TITLE" --text="<b><big>Direwolf APRS Monitor and Configuration</big></b>" \
|
||||||
|
#yad --title="$TITLE" \
|
||||||
|
# --text-align="center" --notebook --key="$ID" --window-icon=logviewer \
|
||||||
|
# --posx=$POSX --posy=$POSY --width=$WIDTH \
|
||||||
|
# --buttons-layout=center \
|
||||||
|
# --tab="Direwolf Status" \
|
||||||
|
# --tab="Configure APRS" \
|
||||||
|
# --tab="Messaging" \
|
||||||
|
# --button="<b>Stop Direwolf APRS & Exit</b>":1 \
|
||||||
|
# --button="<b>Stop Direwolf APRS</b>":"bash -c 'killDirewolf $direwolf_PID'" \
|
||||||
|
# --button="<b>Save & [Re]start Direwolf APRS</b>":0
|
||||||
yad --title="$TITLE" \
|
yad --title="$TITLE" \
|
||||||
--text-align="center" --notebook --key="$ID" --window-icon=logviewer \
|
--text-align="center" --notebook --key="$ID" --window-icon=logviewer \
|
||||||
--posx=$POSX --posy=$POSY --width=$WIDTH \
|
--posx=$POSX --posy=$POSY --width=$WIDTH \
|
||||||
--buttons-layout=center \
|
--buttons-layout=center \
|
||||||
--tab="Direwolf Status" \
|
--tab="Direwolf Status" \
|
||||||
--tab="Configure APRS" \
|
--tab="Configure APRS" \
|
||||||
--tab="Messaging" \
|
|
||||||
--button="<b>Stop Direwolf APRS & Exit</b>":1 \
|
--button="<b>Stop Direwolf APRS & Exit</b>":1 \
|
||||||
--button="<b>Stop Direwolf APRS</b>":"bash -c 'killDirewolf $direwolf_PID'" \
|
--button="<b>Stop Direwolf APRS</b>":"bash -c 'killDirewolf $direwolf_PID'" \
|
||||||
--button="<b>Save & [Re]start Direwolf APRS</b>":0
|
--button="<b>Save & [Re]start Direwolf APRS</b>":0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user