alert_telegram.sh 1.3 KB

123456789101112131415161718192021222324252627282930
  1. #!/bin/bash
  2. # LinuxGSM alert_telegram.sh function
  3. # Author: Bennet Becker <bennet@becker-dd.de>
  4. # Website: https://bytegaming.de
  5. # Description: Sends Telegram Messenger alert.
  6. functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
  7. escaped_servername=$(echo -n "${servername}" | jq -sRr "@json")
  8. escaped_alertbody=$(echo -n "${alertbody}" | jq -sRr "@json")
  9. json=$(cat <<EOF
  10. {
  11. "chat_id": "${telegramchatid}",
  12. "parse_mode": "HTML",
  13. "text": "<b>${alertemoji} ${alertsubject} ${alertemoji}</b>\n\n<b>Message</b>\n${escaped_alertbody}\n\n<b>Game</b>\n${gamename}\n\n<b>Server name</b>\n${escaped_servername}\n\n<b>Hostname</b>\n${HOSTNAME}\n\n<b>Server IP</b>\n<a href='https://www.gametracker.com/server_info/${alertip}:${port}'>${alertip}:${port}</a>\n\n<b>More info</b>\n<a href='${alerturl}'>${alerturl}</a>",
  14. "disable_web_page_preview": "yes",
  15. EOF
  16. )
  17. fn_print_dots "Sending Telegram alert"
  18. telegramsend=$(curl -sSL -H "Content-Type: application/json" -X POST -d """${json}""" ${curlcustomstring} "https://api.telegram.org/bot${telegramtoken}/sendMessage" | grep "error_code")
  19. if [ "${telegramsend}" ]; then
  20. fn_print_fail_nl "Sending Telegram alert: ${telegramsend}"
  21. fn_script_log_fatal "Sending Telegram alert: ${telegramsend}"
  22. else
  23. fn_print_ok_nl "Sending Telegram alert"
  24. fn_script_log_pass "Sent Telegram alert"
  25. fi