mirror of
https://github.com/octoleo/telegram-bot-bash.git
synced 2025-02-10 22:28:28 +00:00
bashbot.sh: fix UPD array access to use "real" strings
This commit is contained in:
parent
62378f7cf6
commit
427f670a02
160
bashbot.sh
160
bashbot.sh
@ -30,7 +30,7 @@ BOTCOMMANDS="-h help init start stop status suspendback resumeback killb
|
|||||||
# 8 - curl/wget missing
|
# 8 - curl/wget missing
|
||||||
# 10 - not bash!
|
# 10 - not bash!
|
||||||
#
|
#
|
||||||
#### $$VERSION$$ v1.31-dev-0-gfe1fb75
|
#### $$VERSION$$ v1.31-dev-1-g62378f7
|
||||||
##################################################################
|
##################################################################
|
||||||
|
|
||||||
# emmbeded system may claim bash but it is not
|
# emmbeded system may claim bash but it is not
|
||||||
@ -420,7 +420,7 @@ delete_message() {
|
|||||||
get_file() {
|
get_file() {
|
||||||
[ -z "$1" ] && return
|
[ -z "$1" ] && return
|
||||||
sendJson "" '"file_id": "'"$1"'"' "${URL}/getFile"
|
sendJson "" '"file_id": "'"$1"'"' "${URL}/getFile"
|
||||||
printf "%s\n" "${URL}/${UPD["result","file_path"]}"
|
printf "%s\n" "${URL}/${UPD["result,file_path"]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
# iconv used to filter out broken utf characters, if not installed fake it
|
# iconv used to filter out broken utf characters, if not installed fake it
|
||||||
@ -558,8 +558,8 @@ sendJsonResult(){
|
|||||||
[ -n "${BASHBOTDEBUG}" ] && log_message "New Result ==========\n$1"
|
[ -n "${BASHBOTDEBUG}" ] && log_message "New Result ==========\n$1"
|
||||||
BOTSENT[OK]="${UPD["ok"]}"
|
BOTSENT[OK]="${UPD["ok"]}"
|
||||||
if [ "${BOTSENT[OK]}" = "true" ]; then
|
if [ "${BOTSENT[OK]}" = "true" ]; then
|
||||||
BOTSENT[ID]="${UPD["result","message_id"]}"
|
BOTSENT[ID]="${UPD["result,message_id"]}"
|
||||||
BOTSENT[CHAT]="${UPD["result","chat","id"]}"
|
BOTSENT[CHAT]="${UPD["result,chat,id"]}"
|
||||||
[ -n "${UPD["result"]}" ] && BOTSENT[RESULT]="${UPD["result"]}"
|
[ -n "${UPD["result"]}" ] && BOTSENT[RESULT]="${UPD["result"]}"
|
||||||
return
|
return
|
||||||
# hot path everything OK!
|
# hot path everything OK!
|
||||||
@ -568,7 +568,7 @@ sendJsonResult(){
|
|||||||
if [ -n "$1" ]; then
|
if [ -n "$1" ]; then
|
||||||
BOTSENT[ERROR]="${UPD["error_code"]}"
|
BOTSENT[ERROR]="${UPD["error_code"]}"
|
||||||
BOTSENT[DESCRIPTION]="${UPD["description"]}"
|
BOTSENT[DESCRIPTION]="${UPD["description"]}"
|
||||||
[ -n "${UPD["parameters","retry_after"]}" ] && BOTSENT[RETRY]="${UPD["parameters","retry_after"]}"
|
[ -n "${UPD["parameters,retry_after"]}" ] && BOTSENT[RETRY]="${UPD["parameters,retry_after"]}"
|
||||||
else
|
else
|
||||||
BOTSENT[OK]="false"
|
BOTSENT[OK]="false"
|
||||||
BOTSENT[ERROR]="999"
|
BOTSENT[ERROR]="999"
|
||||||
@ -851,146 +851,146 @@ pre_process_message(){
|
|||||||
# unset everything to not have old values
|
# unset everything to not have old values
|
||||||
CMD=( ); iQUERY=( ); MESSAGE=(); CHAT=(); USER=(); CONTACT=(); LOCATION=(); unset CAPTION
|
CMD=( ); iQUERY=( ); MESSAGE=(); CHAT=(); USER=(); CONTACT=(); LOCATION=(); unset CAPTION
|
||||||
REPLYTO=( ); FORWARD=( ); URLS=(); VENUE=( ); SERVICE=( ); NEWMEMBER=( ); LEFTMEMBER=( ); PINNED=( ); MIGRATE=( )
|
REPLYTO=( ); FORWARD=( ); URLS=(); VENUE=( ); SERVICE=( ); NEWMEMBER=( ); LEFTMEMBER=( ); PINNED=( ); MIGRATE=( )
|
||||||
iQUERY[ID]="${UPD["result",${num},"inline_query","id"]}"
|
iQUERY[ID]="${UPD["result,${num},inline_query,id"]}"
|
||||||
CHAT[ID]="${UPD["result",${num},"message","chat","id"]}"
|
CHAT[ID]="${UPD["result,${num},message,chat,id"]}"
|
||||||
USER[ID]="${UPD["result",${num},"message","from","id"]}"
|
USER[ID]="${UPD["result,${num},message,from,id"]}"
|
||||||
[ -z "${CHAT[ID]}" ] && CHAT[ID]="${UPD["result",${num},"edited_message","chat","id"]}"
|
[ -z "${CHAT[ID]}" ] && CHAT[ID]="${UPD["result,${num},edited_message,chat,id"]}"
|
||||||
[ -z "${USER[ID]}" ] && USER[ID]="${UPD["result",${num},"edited_message","from","id"]}"
|
[ -z "${USER[ID]}" ] && USER[ID]="${UPD["result,${num},edited_message,from,id"]}"
|
||||||
# always true
|
# always true
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
process_inline() {
|
process_inline() {
|
||||||
local num="$1"
|
local num="$1"
|
||||||
iQUERY[0]="$(JsonDecode "${UPD["result",${num},"inline_query","query"]}")"
|
iQUERY[0]="$(JsonDecode "${UPD["result,${num},inline_query,query"]}")"
|
||||||
iQUERY[USER_ID]="${UPD["result",${num},"inline_query","from","id"]}"
|
iQUERY[USER_ID]="${UPD["result,${num},inline_query,from,id"]}"
|
||||||
iQUERY[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"inline_query","from","first_name"]}")"
|
iQUERY[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},inline_query,from,first_name"]}")"
|
||||||
iQUERY[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"inline_query","from","last_name"]}")"
|
iQUERY[LAST_NAME]="$(JsonDecode "${UPD["result,${num},inline_query,from,last_name"]}")"
|
||||||
iQUERY[USERNAME]="$(JsonDecode "${UPD["result",${num},"inline_query","from","username"]}")"
|
iQUERY[USERNAME]="$(JsonDecode "${UPD["result,${num},inline_query,from,username"]}")"
|
||||||
# always true
|
# always true
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
process_message() {
|
process_message() {
|
||||||
local num="$1"
|
local num="$1"
|
||||||
# Message
|
# Message
|
||||||
MESSAGE[0]+="$(JsonDecode "${UPD["result",${num},"message","text"]}" | sed 's|\\/|/|g')"
|
MESSAGE[0]+="$(JsonDecode "${UPD["result,${num},message,text"]}" | sed 's|\\/|/|g')"
|
||||||
MESSAGE[ID]="${UPD["result",${num},"message","message_id"]}"
|
MESSAGE[ID]="${UPD["result,${num},message,message_id"]}"
|
||||||
|
|
||||||
# Chat ID is now parsed when update is received
|
# Chat ID is now parsed when update is received
|
||||||
CHAT[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"message","chat","last_name"]}")"
|
CHAT[LAST_NAME]="$(JsonDecode "${UPD["result,${num},message,chat,last_name"]}")"
|
||||||
CHAT[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"message","chat","first_name"]}")"
|
CHAT[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},message,chat,first_name"]}")"
|
||||||
CHAT[USERNAME]="$(JsonDecode "${UPD["result",${num},"message","chat","username"]}")"
|
CHAT[USERNAME]="$(JsonDecode "${UPD["result,${num},message,chat,username"]}")"
|
||||||
# set real name as username if empty
|
# set real name as username if empty
|
||||||
[ -z "${CHAT[USERNAME]}" ] && CHAT[USERNAME]="${CHAT[FIRST_NAME]} ${CHAT[LAST_NAME]}"
|
[ -z "${CHAT[USERNAME]}" ] && CHAT[USERNAME]="${CHAT[FIRST_NAME]} ${CHAT[LAST_NAME]}"
|
||||||
CHAT[TITLE]="$(JsonDecode "${UPD["result",${num},"message","chat","title"]}")"
|
CHAT[TITLE]="$(JsonDecode "${UPD["result,${num},message,chat,title"]}")"
|
||||||
CHAT[TYPE]="$(JsonDecode "${UPD["result",${num},"message","chat","type"]}")"
|
CHAT[TYPE]="$(JsonDecode "${UPD["result,${num},message,chat,type"]}")"
|
||||||
CHAT[ALL_ADMIN]="${UPD["result",${num},"message","chat","all_members_are_administrators"]}"
|
CHAT[ALL_ADMIN]="${UPD["result,${num},message,chat,all_members_are_administrators"]}"
|
||||||
|
|
||||||
# user ID is now parsed when update is received
|
# user ID is now parsed when update is received
|
||||||
#USER[ID]="${UPD["result",${num},"message","from","id"]}"
|
#USER[ID]="${UPD["result,${num},message,from,id"]}"
|
||||||
USER[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"message","from","first_name"]}")"
|
USER[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},message,from,first_name"]}")"
|
||||||
USER[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"message","from","last_name"]}")"
|
USER[LAST_NAME]="$(JsonDecode "${UPD["result,${num},message,from,last_name"]}")"
|
||||||
USER[USERNAME]="$(JsonDecode "${UPD["result",${num},"message","from","username"]}")"
|
USER[USERNAME]="$(JsonDecode "${UPD["result,${num},message,from,username"]}")"
|
||||||
# set real name as username if empty
|
# set real name as username if empty
|
||||||
[ -z "${USER[USERNAME]}" ] && USER[USERNAME]="${USER[FIRST_NAME]} ${USER[LAST_NAME]}"
|
[ -z "${USER[USERNAME]}" ] && USER[USERNAME]="${USER[FIRST_NAME]} ${USER[LAST_NAME]}"
|
||||||
|
|
||||||
# in reply to message from
|
# in reply to message from
|
||||||
if [ -n "${UPD["result",${num},"message","reply_to_message","from","id"]}" ]; then
|
if [ -n "${UPD["result,${num},message,reply_to_message,from,id"]}" ]; then
|
||||||
REPLYTO[UID]="${UPD["result",${num},"message","reply_to_message","from","id"]}"
|
REPLYTO[UID]="${UPD["result,${num},message,reply_to_message,from,id"]}"
|
||||||
REPLYTO[0]="$(JsonDecode "${UPD["result",${num},"message","reply_to_message","text"]}")"
|
REPLYTO[0]="$(JsonDecode "${UPD["result,${num},message,reply_to_message,text"]}")"
|
||||||
REPLYTO[ID]="${UPD["result",${num},"message","reply_to_message","message_id"]}"
|
REPLYTO[ID]="${UPD["result,${num},message,reply_to_message,message_id"]}"
|
||||||
REPLYTO[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"message","reply_to_message","from","first_name"]}")"
|
REPLYTO[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},message,reply_to_message,from,first_name"]}")"
|
||||||
REPLYTO[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"message","reply_to_message","from","last_name"]}")"
|
REPLYTO[LAST_NAME]="$(JsonDecode "${UPD["result,${num},message,reply_to_message,from,last_name"]}")"
|
||||||
REPLYTO[USERNAME]="$(JsonDecode "${UPD["result",${num},"message","reply_to_message","from","username"]}")"
|
REPLYTO[USERNAME]="$(JsonDecode "${UPD["result,${num},message,reply_to_message,from,username"]}")"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# forwarded message from
|
# forwarded message from
|
||||||
if [ -n "${UPD["result",${num},"message","forward_from","id"]}" ]; then
|
if [ -n "${UPD["result,${num},message,forward_from,id"]}" ]; then
|
||||||
FORWARD[UID]="${UPD["result",${num},"message","forward_from","id"]}"
|
FORWARD[UID]="${UPD["result,${num},message,forward_from,id"]}"
|
||||||
FORWARD[ID]="${MESSAGE[ID]}" # same as message ID
|
FORWARD[ID]="${MESSAGE[ID]}" # same as message ID
|
||||||
FORWARD[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"message","forward_from","first_name"]}")"
|
FORWARD[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},message,forward_from,first_name"]}")"
|
||||||
FORWARD[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"message","forward_from","last_name"]}")"
|
FORWARD[LAST_NAME]="$(JsonDecode "${UPD["result,${num},message,forward_from,last_name"]}")"
|
||||||
FORWARD[USERNAME]="$(JsonDecode "${UPD["result",${num},"message","forward_from","username"]}")"
|
FORWARD[USERNAME]="$(JsonDecode "${UPD["result,${num},message,forward_from,username"]}")"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# get file URL from telegram, check for any of them!
|
# get file URL from telegram, check for any of them!
|
||||||
if grep -qs -e '\["result",'"${num}"',"message","[avpsd].*,"file_id"\]' <<<"${UPDATE}"; then
|
if grep -qs -e '\["result",'"${num}"',"message","[avpsd].*,"file_id"\]' <<<"${UPDATE}"; then
|
||||||
URLS[AUDIO]="$(get_file "${UPD["result",${num},"message","audio","file_id"]}")"
|
URLS[AUDIO]="$(get_file "${UPD["result,${num},message,audio,file_id"]}")"
|
||||||
URLS[DOCUMENT]="$(get_file "${UPD["result",${num},"message","document","file_id"]}")"
|
URLS[DOCUMENT]="$(get_file "${UPD["result,${num},message,document,file_id"]}")"
|
||||||
URLS[PHOTO]="$(get_file "${UPD["result",${num},"message","photo",0,"file_id"]}")"
|
URLS[PHOTO]="$(get_file "${UPD["result,${num},message,photo,0,file_id"]}")"
|
||||||
URLS[STICKER]="$(get_file "${UPD["result",${num},"message","sticker","file_id"]}")"
|
URLS[STICKER]="$(get_file "${UPD["result,${num},message,sticker,file_id"]}")"
|
||||||
URLS[VIDEO]="$(get_file "${UPD["result",${num},"message","video","file_id"]}")"
|
URLS[VIDEO]="$(get_file "${UPD["result,${num},message,video,file_id"]}")"
|
||||||
URLS[VOICE]="$(get_file "${UPD["result",${num},"message","voice","file_id"]}")"
|
URLS[VOICE]="$(get_file "${UPD["result,${num},message,voice,file_id"]}")"
|
||||||
fi
|
fi
|
||||||
# Contact, must have phone_number
|
# Contact, must have phone_number
|
||||||
if [ -n "${UPD["result",${num},"message","contact","phone_number"]}" ]; then
|
if [ -n "${UPD["result,${num},message,contact,phone_number"]}" ]; then
|
||||||
CONTACT[USER_ID]="$(JsonDecode "${UPD["result",${num},"message","contact","user_id"]}")"
|
CONTACT[USER_ID]="$(JsonDecode "${UPD["result,${num},message,contact,user_id"]}")"
|
||||||
CONTACT[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"message","contact","first_name"]}")"
|
CONTACT[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},message,contact,first_name"]}")"
|
||||||
CONTACT[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"message","contact","last_name"]}")"
|
CONTACT[LAST_NAME]="$(JsonDecode "${UPD["result,${num},message,contact,last_name"]}")"
|
||||||
CONTACT[NUMBER]="${UPD["result",${num},"message","contact","phone_number"]}"
|
CONTACT[NUMBER]="${UPD["result,${num},message,contact,phone_number"]}"
|
||||||
CONTACT[VCARD]="${UPD["result","${num}","message","contact","vcard"]}"
|
CONTACT[VCARD]="${UPD["result,${num},message,contact,vcard"]}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# venue, must have a position
|
# venue, must have a position
|
||||||
if [ -n "${UPD["result",${num},"message","venue","location","longitude"]}" ]; then
|
if [ -n "${UPD["result,${num},message,venue,location,longitude"]}" ]; then
|
||||||
VENUE[TITLE]="$(JsonDecode "${UPD["result",${num},"message","venue","title"]}")"
|
VENUE[TITLE]="$(JsonDecode "${UPD["result,${num},message,venue,title"]}")"
|
||||||
VENUE[ADDRESS]="$(JsonDecode "${UPD["result",${num},"message","venue","address"]}")"
|
VENUE[ADDRESS]="$(JsonDecode "${UPD["result,${num},message,venue,address"]}")"
|
||||||
VENUE[LONGITUDE]="${UPD["result",${num},"message","venue","location","longitude"]}"
|
VENUE[LONGITUDE]="${UPD["result,${num},message,venue,location,longitude"]}"
|
||||||
VENUE[LATITUDE]="${UPD["result",${num},"message","venue","location","latitude"]}"
|
VENUE[LATITUDE]="${UPD["result,${num},message,venue,location,latitude"]}"
|
||||||
VENUE[FOURSQUARE]="${UPD["result",${num},"message","venue","foursquare_id"]}"
|
VENUE[FOURSQUARE]="${UPD["result,${num},message,venue,foursquare_id"]}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Caption
|
# Caption
|
||||||
CAPTION="$(JsonDecode "${UPD["result",${num},"message","caption"]}")"
|
CAPTION="$(JsonDecode "${UPD["result,${num},message,caption"]}")"
|
||||||
|
|
||||||
# Location
|
# Location
|
||||||
LOCATION[LONGITUDE]="${UPD["result",${num},"message","location","longitude"]}"
|
LOCATION[LONGITUDE]="${UPD["result,${num},message,location,longitude"]}"
|
||||||
LOCATION[LATITUDE]="${UPD["result",${num},"message","location","latitude"]}"
|
LOCATION[LATITUDE]="${UPD["result,${num},message,location,latitude"]}"
|
||||||
|
|
||||||
# service messages, group or channel only!
|
# service messages, group or channel only!
|
||||||
if [[ "${CHAT[ID]}" == "-"* ]] ; then
|
if [[ "${CHAT[ID]}" == "-"* ]] ; then
|
||||||
# new chat member
|
# new chat member
|
||||||
if [ -n "${UPD["result",${num},"message","new_chat_member","id"]}" ]; then
|
if [ -n "${UPD["result,${num},message,new_chat_member,id"]}" ]; then
|
||||||
SERVICE[NEWMEMBER]="${UPD["result",${num},"message","new_chat_member","id"]}"
|
SERVICE[NEWMEMBER]="${UPD["result,${num},message,new_chat_member,id"]}"
|
||||||
NEWMEMBER[ID]="${SERVICE[NEWMEMBER]}"
|
NEWMEMBER[ID]="${SERVICE[NEWMEMBER]}"
|
||||||
NEWMEMBER[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"message","new_chat_member","first_name"]}")"
|
NEWMEMBER[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},message,new_chat_member,first_name"]}")"
|
||||||
NEWMEMBER[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"message","new_chat_member","last_name"]}")"
|
NEWMEMBER[LAST_NAME]="$(JsonDecode "${UPD["result,${num},message,new_chat_member,last_name"]}")"
|
||||||
NEWMEMBER[USERNAME]="$(JsonDecode "${UPD["result",${num},"message","new_chat_member","username"]}")"
|
NEWMEMBER[USERNAME]="$(JsonDecode "${UPD["result,${num},message,new_chat_member,username"]}")"
|
||||||
NEWMEMBER[ISBOT]="${UPD["result",${num},"message","new_chat_member","is_bot"]}"
|
NEWMEMBER[ISBOT]="${UPD["result,${num},message,new_chat_member,is_bot"]}"
|
||||||
[ -z "${MESSAGE[0]}" ] &&\
|
[ -z "${MESSAGE[0]}" ] &&\
|
||||||
MESSAGE[0]="/_new_chat_member ${NEWMEMBER[ID]} ${NEWMEMBER[USERNAME]:=${NEWMEMBER[FIRST_NAME]} ${NEWMEMBER[LAST_NAME]}}"
|
MESSAGE[0]="/_new_chat_member ${NEWMEMBER[ID]} ${NEWMEMBER[USERNAME]:=${NEWMEMBER[FIRST_NAME]} ${NEWMEMBER[LAST_NAME]}}"
|
||||||
fi
|
fi
|
||||||
# left chat member
|
# left chat member
|
||||||
if [ -n "${UPD["result",${num},"message","left_chat_member","id"]}" ]; then
|
if [ -n "${UPD["result,${num},message,left_chat_member,id"]}" ]; then
|
||||||
SERVICE[LEFTMEMBER]="${UPD["result",${num},"message","left_chat_member","id"]}"
|
SERVICE[LEFTMEMBER]="${UPD["result,${num},message,left_chat_member,id"]}"
|
||||||
LEFTMEMBER[ID]="${SERVICE[LEFTMEBER]}"
|
LEFTMEMBER[ID]="${SERVICE[LEFTMEBER]}"
|
||||||
LEFTMEMBER[FIRST_NAME]="$(JsonDecode "${UPD["result",${num},"message","left_chat_member","first_name"]}")"
|
LEFTMEMBER[FIRST_NAME]="$(JsonDecode "${UPD["result,${num},message,left_chat_member,first_name"]}")"
|
||||||
LEFTMEMBER[LAST_NAME]="$(JsonDecode "${UPD["result",${num},"message","left_chat_member","last_name"]}")"
|
LEFTMEMBER[LAST_NAME]="$(JsonDecode "${UPD["result,${num},message,left_chat_member,last_name"]}")"
|
||||||
LEFTMEBER[USERNAME]="$(JsonDecode "${UPD["result",${num},"message","left_chat_member","username"]}")"
|
LEFTMEBER[USERNAME]="$(JsonDecode "${UPD["result,${num},message,left_chat_member,username"]}")"
|
||||||
LEFTMEMBER[ISBOT]="${UPD["result",${num},"message","left_chat_member","is_bot"]}"
|
LEFTMEMBER[ISBOT]="${UPD["result,${num},message,left_chat_member,is_bot"]}"
|
||||||
[ -z "${MESSAGE[0]}" ] &&\
|
[ -z "${MESSAGE[0]}" ] &&\
|
||||||
MESSAGE[0]="/_left_chat_member ${LEFTMEMBER[ID]} ${LEFTMEMBER[USERNAME]:=${LEFTMEMBER[FIRST_NAME]} ${LEFTMEMBER[LAST_NAME]}}"
|
MESSAGE[0]="/_left_chat_member ${LEFTMEMBER[ID]} ${LEFTMEMBER[USERNAME]:=${LEFTMEMBER[FIRST_NAME]} ${LEFTMEMBER[LAST_NAME]}}"
|
||||||
fi
|
fi
|
||||||
# chat title / photo, check for any of them!
|
# chat title / photo, check for any of them!
|
||||||
if grep -qs -e '\["result",'"${num}"',"message","new_chat_[tp]' <<<"${UPDATE}"; then
|
if grep -qs -e '\["result",'"${num}"',"message","new_chat_[tp]' <<<"${UPDATE}"; then
|
||||||
SERVICE[NEWTITLE]="$(JsonDecode "${UPD["result",${num},"message","new_chat_title"]}")"
|
SERVICE[NEWTITLE]="$(JsonDecode "${UPD["result,${num},message,new_chat_title"]}")"
|
||||||
[ -z "${MESSAGE[0]}" ] && [ -n "${SERVICE[NEWTITLE]}" ] &&\
|
[ -z "${MESSAGE[0]}" ] && [ -n "${SERVICE[NEWTITLE]}" ] &&\
|
||||||
MESSAGE[0]="/_new_chat_title ${USER[ID]} ${SERVICE[NEWTITLE]}"
|
MESSAGE[0]="/_new_chat_title ${USER[ID]} ${SERVICE[NEWTITLE]}"
|
||||||
SERVICE[NEWPHOTO]="$(get_file "${UPD["result",${num},"message","new_chat_photo",0,"file_id"]}")"
|
SERVICE[NEWPHOTO]="$(get_file "${UPD["result,${num},message,new_chat_photo,0,file_id"]}")"
|
||||||
[ -z "${MESSAGE[0]}" ] && [ -n "${SERVICE[NEWPHOTO]}" ] &&\
|
[ -z "${MESSAGE[0]}" ] && [ -n "${SERVICE[NEWPHOTO]}" ] &&\
|
||||||
MESSAGE[0]="/_new_chat_photo ${USER[ID]} ${SERVICE[NEWPHOTO]}"
|
MESSAGE[0]="/_new_chat_photo ${USER[ID]} ${SERVICE[NEWPHOTO]}"
|
||||||
fi
|
fi
|
||||||
# pinned message
|
# pinned message
|
||||||
if [ -n "${UPD["result",${num},"message","pinned_message","message_id"]}" ]; then
|
if [ -n "${UPD["result,${num},message,pinned_message,message_id"]}" ]; then
|
||||||
SERVICE[PINNED]="${UPD["result",${num},"message","pinned_message","message_id"]}"
|
SERVICE[PINNED]="${UPD["result,${num},message,pinned_message,message_id"]}"
|
||||||
PINNED[ID]="${SERVICE[PINNED]}"
|
PINNED[ID]="${SERVICE[PINNED]}"
|
||||||
PINNED[MESSAGE]="$(JsonDecode "${UPD["result",${num},"message","pinned_message","text"]}")"
|
PINNED[MESSAGE]="$(JsonDecode "${UPD["result,${num},message,pinned_message,text"]}")"
|
||||||
[ -z "${MESSAGE[0]}" ] &&\
|
[ -z "${MESSAGE[0]}" ] &&\
|
||||||
MESSAGE[0]="/_new_pinned_message ${USER[ID]} ${PINNED[ID]} ${PINNED[MESSAGE]}"
|
MESSAGE[0]="/_new_pinned_message ${USER[ID]} ${PINNED[ID]} ${PINNED[MESSAGE]}"
|
||||||
fi
|
fi
|
||||||
# migrate to super group
|
# migrate to super group
|
||||||
if [ -n "${UPD["result",${num},"message","migrate_to_chat_id"]}" ]; then
|
if [ -n "${UPD["result,${num},message,migrate_to_chat_id"]}" ]; then
|
||||||
MIGRATE[TO]="${UPD["result",${num},"message","migrate_to_chat_id"]}"
|
MIGRATE[TO]="${UPD["result,${num},message,migrate_to_chat_id"]}"
|
||||||
MIGRATE[FROM]="${UPD["result",${num},"message","migrate_from_chat_id"]}"
|
MIGRATE[FROM]="${UPD["result,${num},message,migrate_from_chat_id"]}"
|
||||||
SERVICE[MIGRATE]="${MIGRATE[FROM]} ${MIGRATE[TO]}"
|
SERVICE[MIGRATE]="${MIGRATE[FROM]} ${MIGRATE[TO]}"
|
||||||
[ -z "${MESSAGE[0]}" ] &&\
|
[ -z "${MESSAGE[0]}" ] &&\
|
||||||
MESSAGE[0]="/_migrate_group ${SERVICE[MIGRATE]}"
|
MESSAGE[0]="/_migrate_group ${SERVICE[MIGRATE]}"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user