From f8d8edef0bb5648fc31f73adfa557fb98e247cef Mon Sep 17 00:00:00 2001 From: "Kay Marquardt (Gnadelwartz)" Date: Sun, 10 Jan 2021 23:17:35 +0100 Subject: [PATCH] modules: reduce URLs used only once --- modules/answerInline.sh | 5 ++--- modules/chatMember.sh | 14 +++++--------- modules/sendMessage.sh | 39 ++++++++++++++------------------------- 3 files changed, 21 insertions(+), 37 deletions(-) diff --git a/modules/answerInline.sh b/modules/answerInline.sh index 8b6a8b8..97d4563 100644 --- a/modules/answerInline.sh +++ b/modules/answerInline.sh @@ -5,20 +5,19 @@ # This file is public domain in the USA and all free countries. # Elsewhere, consider it to be WTFPLv2. (wtfpl.net/txt/copying) # -#### $$VERSION$$ v1.25-dev-14-g2fe6d4b +#### $$VERSION$$ v1.30-dev-2-gcc299a5 # will be automatically sourced from bashbot # source once magic, function named like file eval "$(basename "${BASH_SOURCE[0]}")(){ :; }" -INLINE_QUERY=${URL}'/answerInlineQuery' answer_inline_query() { answer_inline_multi "$1" "$(shift; inline_query_compose "${RANDOM}" "$@")" } answer_inline_multi() { - sendJson "" '"inline_query_id": '"$1"', "results": ['"$2"']' "${INLINE_QUERY}" + sendJson "" '"inline_query_id": '"$1"', "results": ['"$2"']' "${URL}/answerInlineQuery" } # $1 unique ID for answer diff --git a/modules/chatMember.sh b/modules/chatMember.sh index c7fc95b..f555862 100644 --- a/modules/chatMember.sh +++ b/modules/chatMember.sh @@ -5,17 +5,13 @@ # This file is public domain in the USA and all free countries. # Elsewhere, consider it to be WTFPLv2. (wtfpl.net/txt/copying) # -#### $$VERSION$$ v1.30-dev-0-gd521d35 +#### $$VERSION$$ v1.30-dev-2-gcc299a5 # will be automatically sourced from bashbot # source once magic, function named like file eval "$(basename "${BASH_SOURCE[0]}")(){ :; }" -LEAVE_URL="${URL}"'/leaveChat' -KICK_URL="${URL}"'/kickChatMember' -UNBAN_URL="${URL}"'/unbanChatMember' -GETMEMBER_URL=${URL}'/getChatMember' # manage chat functions ------- # $1 chat, $2 title @@ -31,15 +27,15 @@ set_chat_description() { # manage chat member functions ------- kick_chat_member() { - sendJson "$1" 'user_id: '"$2"'' "${KICK_URL}" + sendJson "$1" 'user_id: '"$2"'' "${URL}/kickChatMember" } unban_chat_member() { - sendJson "$1" 'user_id: '"$2"'' "${UNBAN_URL}" + sendJson "$1" 'user_id: '"$2"'' "${URL}/unbanChatMember" } leave_chat() { - sendJson "$1" "" "${LEAVE_URL}" + sendJson "$1" "" "${URL}/leaveChat" } @@ -48,7 +44,7 @@ leave_chat() { # usage: status="$(get_chat_member_status "chat" "user")" # $1 chat # $2 user get_chat_member_status() { - sendJson "$1" '"user_id":'"$2"'' "${GETMEMBER_URL}" + sendJson "$1" '"user_id":'"$2"'' "${URL}/kickChatMember" # shellcheck disable=SC2154 JsonGetString '"result","status"' <<< "${res}" } diff --git a/modules/sendMessage.sh b/modules/sendMessage.sh index 38ea92a..e4c8808 100644 --- a/modules/sendMessage.sh +++ b/modules/sendMessage.sh @@ -6,7 +6,7 @@ # Elsewhere, consider it to be WTFPLv2. (wtfpl.net/txt/copying) # # shellcheck disable=SC1117 -#### $$VERSION$$ v1.25-dev-29-gac2e1a9 +#### $$VERSION$$ v1.30-dev-2-gcc299a5 # will be automatically sourced from bashbot @@ -17,17 +17,6 @@ eval "$(basename "${BASH_SOURCE[0]}")(){ :; }" MSG_URL=${URL}'/sendMessage' EDIT_URL=${URL}'/editMessageText' -PHO_URL=${URL}'/sendPhoto' -AUDIO_URL=${URL}'/sendAudio' -DOCUMENT_URL=${URL}'/sendDocument' -STICKER_URL=${URL}'/sendSticker' -VIDEO_URL=${URL}'/sendVideo' -VOICE_URL=${URL}'/sendVoice' -LOCATION_URL=${URL}'/sendLocation' -VENUE_URL=${URL}'/sendVenue' -ACTION_URL=${URL}'/sendChatAction' -FORWARD_URL=${URL}'/forwardMessage' -ALBUM_URL=${URL}'/sendMediaGroup' # # send/edit message variants ------------------ @@ -168,7 +157,7 @@ if [ -z "${BASHBOT_WGET}" ] && _exists curl ; then JSON+='{"type":"photo","media":"'${IMAGE}'"}' done # shellcheck disable=SC2086 - res="$("${BASHBOT_CURL}" -s -k ${BASHBOT_CURL_ARGS} "${ALBUM_URL}" -F "chat_id=${CHAT}"\ + res="$("${BASHBOT_CURL}" -s -k ${BASHBOT_CURL_ARGS} "${URL}/sendMediaGroup" -F "chat_id=${CHAT}"\ -F "media=[${JSON}]" | "${JSONSHFILE}" -s -b -n 2>/dev/null )" sendJsonResult "${res}" "send_album (curl)" "${CHAT}" "$@" [[ -z "${SOURCE}" && -n "${BASHBOT_EVENT_SEND[*]}" ]] && event_send "album" "$@" & @@ -228,22 +217,22 @@ send_file(){ fi # select upload URL case "${ext}" in - audio|mp3|flac) - url="${AUDIO_URL}"; what="audio"; stat="upload_audio" - ;; photo|png|jpg|jpeg|gif|pic) - url="${PHO_URL}"; what="photo"; stat="upload_photo" + url="${URL}/sendPhoto"; what="photo"; stat="upload_photo" + ;; + audio|mp3|flac) + url="${URL}/sendAudio"; what="audio"; stat="upload_audio" ;; sticker|webp) - url="${STICKER_URL}"; what="sticker"; stat="upload_photo" + url="${URL}/sendSticker"; what="sticker"; stat="upload_photo" ;; video|mp4) - url="${VIDEO_URL}"; what="video"; stat="upload_video" + url="${URL}/sendVideo"; what="video"; stat="upload_video" ;; voice|ogg) - url="${VOICE_URL}"; what="voice"; stat="record_audio" + url="${URL}/sendVoice"; what="voice"; stat="record_audio" ;; - *) url="${DOCUMENT_URL}"; what="document"; stat="upload_document" + *) url="${URL}/sendDocument"; what="document"; stat="upload_document" ;; esac @@ -268,13 +257,13 @@ send_file(){ # $1 typing upload_photo record_video upload_video record_audio upload_audio upload_document find_location send_action() { [ -z "$2" ] && return - sendJson "$1" '"action": "'"$2"'"' "${ACTION_URL}" & + sendJson "$1" '"action": "'"$2"'"' "${URL}/sendChatAction" & } # $1 CHAT $2 lat $3 long send_location() { [ -z "$3" ] && return - sendJson "$1" '"latitude": '"$2"', "longitude": '"$3"'' "${LOCATION_URL}" + sendJson "$1" '"latitude": '"$2"', "longitude": '"$3"'' "${URL}/sendLocation" } # $1 CHAT $2 lat $3 long $4 title $5 address $6 foursquard id @@ -282,7 +271,7 @@ send_venue() { local add="" [ -z "$5" ] && return [ -n "$6" ] && add=', "foursquare_id": '"$6"'' - sendJson "$1" '"latitude": '"$2"', "longitude": '"$3"', "address": "'"$5"'", "title": "'"$4"'"'"${add}" "${VENUE_URL}" + sendJson "$1" '"latitude": '"$2"', "longitude": '"$3"', "address": "'"$5"'", "title": "'"$4"'"'"${add}" "${URL}/sendVenue" } @@ -293,7 +282,7 @@ send_venue() { # $1 CHAT $2 from chat $3 from msg id forward_message() { [ -z "$3" ] && return - sendJson "$1" '"from_chat_id": '"$2"', "message_id": '"$3"'' "${FORWARD_URL}" + sendJson "$1" '"from_chat_id": '"$2"', "message_id": '"$3"'' "${URL}/forwardMessage" } forward() { # backward compatibility forward_message "$@" || return