Fix bugs with incall functionality around statusbar showing call duration
This commit is contained in:
parent
c5b665ca4f
commit
5f8aad0386
4 changed files with 11 additions and 16 deletions
|
@ -8,7 +8,7 @@ update() {
|
||||||
if pgrep -f sxmo_modemcall.sh; then
|
if pgrep -f sxmo_modemcall.sh; then
|
||||||
NOWS="$(date +"%s")"
|
NOWS="$(date +"%s")"
|
||||||
CALLSTARTS="$(date +"%s" -d "$(
|
CALLSTARTS="$(date +"%s" -d "$(
|
||||||
grep call_start ~/.config/sxmo/modem/modemlog.tsv |
|
grep -aE 'call_start|call_pickup' "$XDG_CONFIG_HOME"/sxmo/modem/modemlog.tsv |
|
||||||
tail -n1 |
|
tail -n1 |
|
||||||
cut -f1
|
cut -f1
|
||||||
)")"
|
)")"
|
||||||
|
|
|
@ -9,7 +9,7 @@ fatalerr() {
|
||||||
mmcli -m "$(mmcli -L | grep -oE 'Modem\/([0-9]+)' | cut -d'/' -f2)" --voice-hangup-all
|
mmcli -m "$(mmcli -L | grep -oE 'Modem\/([0-9]+)' | cut -d'/' -f2)" --voice-hangup-all
|
||||||
alsactl --file /usr/share/sxmo/alsa/default_alsa_sound.conf restore
|
alsactl --file /usr/share/sxmo/alsa/default_alsa_sound.conf restore
|
||||||
notify-send "$1"
|
notify-send "$1"
|
||||||
setsid -f sh -c 'sleep 2; smxo_statusbarupdate.sh'
|
setsid -f sh -c 'sleep 2; sxmo_statusbarupdate.sh'
|
||||||
kill -9 0
|
kill -9 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@ handlenewnotiffile(){
|
||||||
|
|
||||||
if [ "$(wc -l "$NOTIFFILE" | cut -d' ' -f1)" -lt 3 ]; then
|
if [ "$(wc -l "$NOTIFFILE" | cut -d' ' -f1)" -lt 3 ]; then
|
||||||
echo "Invalid notification file $NOTIFFILE found (<3 lines -- see notif spec in sxmo_notifwrite.sh), deleting!" >&2
|
echo "Invalid notification file $NOTIFFILE found (<3 lines -- see notif spec in sxmo_notifwrite.sh), deleting!" >&2
|
||||||
rm "$NOTIFFILE"
|
rm -f "$NOTIFFILE"
|
||||||
else
|
else
|
||||||
sxmo_setpineled green 1;
|
sxmo_setpineled green 1;
|
||||||
notificationhook &
|
notificationhook &
|
||||||
|
@ -32,9 +32,9 @@ handlenewnotiffile(){
|
||||||
NOTIFMSG="$(tail -n+3 "$NOTIFFILE" | cut -c1-70)"
|
NOTIFMSG="$(tail -n+3 "$NOTIFFILE" | cut -c1-70)"
|
||||||
|
|
||||||
if dunstify --action="2,open" "$NOTIFMSG" | grep 2; then
|
if dunstify --action="2,open" "$NOTIFMSG" | grep 2; then
|
||||||
eval "$NOTIFACTION"
|
setsid -f sh -c "$NOTIFACTION" &
|
||||||
elif [ -e "$NOTIFWATCHFILE" ]; then
|
elif [ -e "$NOTIFWATCHFILE" ]; then
|
||||||
inotifywait "$NOTIFWATCHFILE" && rm -f "$NOTIFFILE" &
|
(inotifywait "$NOTIFWATCHFILE" && rm -f "$NOTIFFILE") &
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -48,24 +48,19 @@ recreateexistingnotifs() {
|
||||||
|
|
||||||
monitorforaddordelnotifs() {
|
monitorforaddordelnotifs() {
|
||||||
while true; do
|
while true; do
|
||||||
|
find "$NOTIFDIR"/ -type f -mindepth 1 | read -r || sxmo_setpineled green 0
|
||||||
inotifywait -e create,attrib,moved_to,delete,delete_self,moved_from "$NOTIFDIR"/ | (
|
inotifywait -e create,attrib,moved_to,delete,delete_self,moved_from "$NOTIFDIR"/ | (
|
||||||
INOTIFYOUTPUT="$(cat)"
|
INOTIFYOUTPUT="$(cat)"
|
||||||
INOTIFYEVENTTYPE="$(echo "$INOTIFYOUTPUT" | cut -d" " -f2)"
|
INOTIFYEVENTTYPE="$(echo "$INOTIFYOUTPUT" | cut -d" " -f2)"
|
||||||
case "$INOTIFYEVENTTYPE" in
|
echo "$INOTIFYEVENTTYPE" | grep -E "CREATE|MOVED_TO|ATTRIB" || continue
|
||||||
"CREATE"|"MOVED_TO","ATTRIB")
|
|
||||||
NOTIFFILE="$NOTIFDIR/$(echo "$INOTIFYOUTPUT" | cut -d" " -f3)"
|
NOTIFFILE="$NOTIFDIR/$(echo "$INOTIFYOUTPUT" | cut -d" " -f3)"
|
||||||
handlenewnotiffile "$NOTIFFILE"
|
handlenewnotiffile "$NOTIFFILE"
|
||||||
;;
|
|
||||||
"DELETE"|"DELETE_SELF"|"MOVED_FROM")
|
|
||||||
# E.g. if no more notifications unset LED
|
|
||||||
find "$NOTIFDIR"/ -type f -mindepth 1 | read -r || sxmo_setpineled green 0
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
) & wait
|
) & wait
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
pgrep -f "$(command -v sxmo_notificationmonitor.sh)" | grep -Ev "^${$}$" | xargs kill
|
pgrep -f "$(command -v sxmo_notificationmonitor.sh)" | grep -Ev "^${$}$" | xargs kill
|
||||||
|
rm -f $NOTIFDIR/incomingcall
|
||||||
sxmo_setpineled green 0
|
sxmo_setpineled green 0
|
||||||
recreateexistingnotifs
|
recreateexistingnotifs
|
||||||
monitorforaddordelnotifs
|
monitorforaddordelnotifs
|
||||||
|
|
|
@ -25,7 +25,7 @@ notificationmenu() {
|
||||||
|
|
||||||
PICKEDNOTIFFILE="$(echo "$CHOICES" | grep "$PICKEDCONTENT" | cut -d^ -f2 | tr -d ' ')"
|
PICKEDNOTIFFILE="$(echo "$CHOICES" | grep "$PICKEDCONTENT" | cut -d^ -f2 | tr -d ' ')"
|
||||||
NOTIFACTION="$(head -n1 "$PICKEDNOTIFFILE")"
|
NOTIFACTION="$(head -n1 "$PICKEDNOTIFFILE")"
|
||||||
eval "$NOTIFACTION" &
|
setsid -f sh -c "$NOTIFACTION" &
|
||||||
rm "$PICKEDNOTIFFILE"
|
rm "$PICKEDNOTIFFILE"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue