* unescape some escaped text

master
Dominika Liberda 2021-09-29 16:49:55 +02:00
parent b433bba352
commit 40bbce9039
1 changed files with 16 additions and 12 deletions

28
tg.sh
View File

@ -7,6 +7,11 @@ function _escape_text() {
sed 's/[][`~!@#$%^&*():;<>.,?\|{}=+-]/\\&/g' <<< "$1"
}
# _unescape_text(input_text)
function _unescape_text() {
sed -E 's/\\/&lauraiscute/g;s/\\lauraiscute\\lauraiscute\\lauraiscute/\\/;s/\\lauraiscute//g' <<< "$1"
}
# tg_send(chat, text, file, type)
function tg_send() {
text="$(_escape_text "$2")"
@ -144,25 +149,25 @@ function tg_start() {
event[message_id]="${_tmp[0]}"
event[from_id]="${_tmp[1]}"
event[from_is_bot]="${_tmp[2]}"
event[from_first_name]="${_tmp[3]}"
event[from_last_name]="${_tmp[4]}"
event[from_first_name]="$(_unescape_text "${_tmp[3]}")"
event[from_last_name]="$(_unescape_text "${_tmp[4]}")"
event[from_username]="${_tmp[5]}"
event[chat_id]="${_tmp[6]}"
event[chat_title]="${_tmp[7]}"
event[chat_title]="$(_unescape_text "${_tmp[7]}")"
event[chat_type]="${_tmp[8]}"
event[date]="${_tmp[9]}"
event[text]="${_tmp[10]}"
event[text]="$(_unescape_text "${_tmp[10]}")"
if [[ "${_tmp[11]}" == "true" ]]; then
event[reply]=true
event[reply_message_id]="${_tmp[12]}"
event[reply_from_id]="${_tmp[13]}"
event[reply_from_is_bot]="${_tmp[14]}"
event[reply_from_first_name]="${_tmp[15]}"
event[reply_from_last_name]="${_tmp[16]}"
event[reply_from_first_name]="$(_unescape_text "${_tmp[15]}")"
event[reply_from_last_name]="$(_unescape_text "${_tmp[16]}")"
event[reply_from_username]="${_tmp[17]}"
event[reply_date]="${_tmp[18]}"
event[reply_text]="${_tmp[19]}"
event[reply_text]="$(_unescape_text "${_tmp[19]}")"
else
event[reply]=false
fi
@ -180,8 +185,8 @@ function tg_start() {
event[forward_id]="${_tmp[0]}"
event[forward_is_bot]="${_tmp[1]}"
event[forward_first_name]="${_tmp[2]}"
event[forward_last_name]="${_tmp[3]}"
event[forward_first_name]="$(_unescape_text "${_tmp[2]}")"
event[forward_last_name]="$(_unescape_text "${_tmp[3]}")"
event[forward_username]="${_tmp[4]}"
event[forward_date]="${_tmp[5]}"
unset _tmp
@ -237,8 +242,8 @@ function tg_start() {
event[audio_duration]="${_tmp[0]}"
event[file_name]="${_tmp[1]}"
event[mime_type]="${_tmp[2]}"
event[title]="${_tmp[3]}"
event[performer]="${_tmp[4]}"
event[title]="$(_unescape_text "${_tmp[3]}")"
event[performer]="$(_unescape_text "${_tmp[4]}")"
event[thumb_file_id]="${_tmp[5]}"
event[thumb_file_unique_id]="${_tmp[6]}"
event[thumb_width]="${_tmp[7]}"
@ -357,6 +362,5 @@ function tg_start() {
done
[[ ${#_events[@]} -gt 0 ]] && _update_id=$(jq 'select(.update_id != null) | .update_id' <<< "${_events[-1]}")
[[ $_update_id != '' ]] && _offset=$((_update_id+1))
echo $_offset
done
}