termux-api: Update termux-notification
This commit is contained in:
parent
bdc45c6809
commit
a78e11404b
@ -1,51 +1,70 @@
|
||||
#!/bin/bash
|
||||
#!/data/data/com.termux/files/usr/bin/bash
|
||||
set -e -u
|
||||
|
||||
SCRIPTNAME=termux-notification
|
||||
show_usage () {
|
||||
echo "Usage: termux-notification [-c content] [-i id] [-t title] [-u url]"
|
||||
echo "Display a system notification."
|
||||
echo ""
|
||||
echo " -c,--content content notification content to show"
|
||||
echo " -i id notification id (will overwrite any previous notification with the same id)"
|
||||
echo " --led-color color of the blinking led as RRGGBB (default: none)"
|
||||
echo " --led-on number of milliseconds for the LED to be on while it's flashing (default: 800)"
|
||||
echo " --led-off number of milliseconds for the LED to be off while it's flashing (default: 800)"
|
||||
echo " --priority notification priority (high/low/max/min/default)"
|
||||
echo " --sound play a sound with the notification"
|
||||
echo " -t,--title title notification title to show"
|
||||
echo " -u url notification url when clicking on it"
|
||||
echo " --vibrate pattern vibrate pattern, comma separated as in 500,1000,200"
|
||||
echo ""
|
||||
echo "Usage: termux-notification [options]"
|
||||
echo "Display a system notification. Context text is read from stdin or specified using --content."
|
||||
echo " --action action action to execute when pressing the notification"
|
||||
echo " --button1 text text to show on the first notification button"
|
||||
echo " --button1-action action action to execute on the first notification button"
|
||||
echo " --button2 text text to show on the second notification button"
|
||||
echo " --button2-action action action to execute on the second notification button"
|
||||
echo " --button3 text text to show on the third notification button"
|
||||
echo " --button3-action action action to execute on the third notification button"
|
||||
echo " --content content contnet to show in the notification. Read from stdin not specified here."
|
||||
echo " --id id notification id (will overwrite any previous notification with the same id)"
|
||||
echo " --led-color rrggbb color of the blinking led as RRGGBB (default: none)"
|
||||
echo " --led-on milliseconds number of milliseconds for the LED to be on while it's flashing (default: 800)"
|
||||
echo " --led-off milliseconds number of milliseconds for the LED to be off while it's flashing (default: 800)"
|
||||
echo " --priority prio notification priority (high/low/max/min/default)"
|
||||
echo " --sound play a sound with the notification"
|
||||
echo " --title title notification title to show"
|
||||
echo " --vibrate pattern vibrate pattern, comma separated as in 500,1000,200"
|
||||
exit 0
|
||||
}
|
||||
|
||||
CONTENT_OR_TITLE_SET=no
|
||||
ARG_C=""
|
||||
OPT_C=""
|
||||
OPT_ACTION=""
|
||||
OPT_CONTENT=""
|
||||
OPT_ID=""
|
||||
ARG_T=""
|
||||
OPT_T=""
|
||||
ARG_U=""
|
||||
OPT_U=""
|
||||
OPT_PRIORITY=""
|
||||
OPT_LED_COLOR=""
|
||||
OPT_LED_ON=""
|
||||
OPT_LED_OFF=""
|
||||
OPT_VIBRATE=""
|
||||
OPT_LED_ON=""
|
||||
OPT_PRIORITY=""
|
||||
OPT_SOUND=""
|
||||
OPT_TITLE=""
|
||||
OPT_VIBRATE=""
|
||||
OPT_BUTTON1_TEXT=""
|
||||
OPT_BUTTON1_ACTION=""
|
||||
OPT_BUTTON2_TEXT=""
|
||||
OPT_BUTTON2_ACTION=""
|
||||
OPT_BUTTON3_TEXT=""
|
||||
OPT_BUTTON3_ACTION=""
|
||||
|
||||
TEMP=`busybox getopt \
|
||||
-n $SCRIPTNAME \
|
||||
-o hc:i:t:u: \
|
||||
--long content:,help,id:,led-color:,led-on:,led-off:,priority:,sound,vibrate: \
|
||||
-o hc:i:t: \
|
||||
--long action:,\
|
||||
button1:,button1-action:,\
|
||||
button2:,button2-action:,\
|
||||
button3:,button3-action:,\
|
||||
content:,help,id:,\
|
||||
led-color:,led-on:,led-off:,\
|
||||
priority:,sound,title:,vibrate: \
|
||||
-s bash \
|
||||
-- "$@"`
|
||||
eval set -- "$TEMP"
|
||||
|
||||
while true; do
|
||||
case "$1" in
|
||||
-c | --content) ARG_C="--es content"; OPT_C="$2"; CONTENT_OR_TITLE_SET=yes; shift 2;;
|
||||
--action) OPT_ACTION="$2"; shift 2;;
|
||||
--button1) OPT_BUTTON1_TEXT="$2"; shift 2;;
|
||||
--button1-action) OPT_BUTTON1_ACTION="$2"; shift 2;;
|
||||
--button2) OPT_BUTTON2_TEXT="$2"; shift 2;;
|
||||
--button2-action) OPT_BUTTON2_ACTION="$2"; shift 2;;
|
||||
--button3) OPT_BUTTON3_TEXT="$2"; shift 2;;
|
||||
--button3-action) OPT_BUTTON3_ACTION="$2"; shift 2;;
|
||||
-c | --content) OPT_CONTENT="$2"; shift 2;;
|
||||
-h | --help) show_usage;;
|
||||
-i | --id) OPT_ID="$2"; shift 2;;
|
||||
--led-color) OPT_LED_COLOR="$2"; shift 2;;
|
||||
@ -53,8 +72,7 @@ while true; do
|
||||
--led-off) OPT_LED_OFF="$2"; shift 2;;
|
||||
--priority) OPT_PRIORITY="$2"; shift 2;;
|
||||
--sound) OPT_SOUND="true"; shift 1;;
|
||||
-t | --title) ARG_T="--es title"; OPT_T="$2"; CONTENT_OR_TITLE_SET=yes; shift 2;;
|
||||
-u) ARG_U="--es url"; OPT_U="$2"; shift 2;;
|
||||
-t | --title) OPT_TITLE="$2"; shift 2;;
|
||||
--vibrate) OPT_VIBRATE="$2"; shift 2;;
|
||||
--) shift; break ;;
|
||||
esac
|
||||
@ -62,21 +80,25 @@ done
|
||||
|
||||
if [ $# != 0 ]; then echo "$SCRIPTNAME: too many arguments"; exit 1; fi
|
||||
|
||||
if [ $CONTENT_OR_TITLE_SET = "no" ]; then
|
||||
echo "$SCRIPTNAME: no title or content set"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set --
|
||||
if [ -n "$ARG_C" ]; then set -- "$@" $ARG_C "$OPT_C"; fi
|
||||
if [ -n "$OPT_ACTION" ]; then set -- "$@" --es action "$OPT_ACTION"; fi
|
||||
if [ -n "$OPT_BUTTON1_ACTION" ]; then set -- "$@" --es button_action_1 "$OPT_BUTTON1_ACTION"; fi
|
||||
if [ -n "$OPT_BUTTON1_TEXT" ]; then set -- "$@" --es button_text_1 "$OPT_BUTTON1_TEXT"; fi
|
||||
if [ -n "$OPT_BUTTON2_ACTION" ]; then set -- "$@" --es button_action_2 "$OPT_BUTTON2_ACTION"; fi
|
||||
if [ -n "$OPT_BUTTON2_TEXT" ]; then set -- "$@" --es button_text_2 "$OPT_BUTTON2_TEXT"; fi
|
||||
if [ -n "$OPT_BUTTON3_ACTION" ]; then set -- "$@" --es button_action_3 "$OPT_BUTTON3_ACTION"; fi
|
||||
if [ -n "$OPT_BUTTON3_TEXT" ]; then set -- "$@" --es button_text_3 "$OPT_BUTTON3_TEXT"; fi
|
||||
if [ -n "$OPT_ID" ]; then set -- "$@" --es id "$OPT_ID"; fi
|
||||
if [ -n "$ARG_T" ]; then set -- "$@" $ARG_T "$OPT_T"; fi
|
||||
if [ -n "$ARG_U" ]; then set -- "$@" $ARG_U "$OPT_U"; fi
|
||||
if [ -n "$OPT_LED_COLOR" ]; then set -- "$@" --es led-color "$OPT_LED_COLOR"; fi
|
||||
if [ -n "$OPT_LED_ON" ]; then set -- "$@" --ei led-on "$OPT_LED_ON"; fi
|
||||
if [ -n "$OPT_LED_OFF" ]; then set -- "$@" --ei led-off "$OPT_LED_OFF"; fi
|
||||
if [ -n "$OPT_LED_ON" ]; then set -- "$@" --ei led-on "$OPT_LED_ON"; fi
|
||||
if [ -n "$OPT_PRIORITY" ]; then set -- "$@" --es priority "$OPT_PRIORITY"; fi
|
||||
if [ -n "$OPT_SOUND" ]; then set -- "$@" --ez sound "$OPT_SOUND"; fi
|
||||
if [ -n "$OPT_TITLE" ]; then set -- "$@" --es title "$OPT_TITLE"; fi
|
||||
if [ -n "$OPT_VIBRATE" ]; then set -- "$@" --ela vibrate "$OPT_VIBRATE"; fi
|
||||
|
||||
@TERMUX_API@ Notification "$@"
|
||||
if [ -n "$OPT_CONTENT" ]; then
|
||||
echo $OPT_CONTENT | /data/data/com.termux/files/usr/libexec/termux-api Notification "$@"
|
||||
else
|
||||
/data/data/com.termux/files/usr/libexec/termux-api Notification "$@"
|
||||
fi
|
||||
|
Loading…
x
Reference in New Issue
Block a user