gameservergame-servergame-servershacktoberfestdedicated-game-serversgamelinuxgsmserverbashgaminglinuxmultiplayer-game-servershell
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.5 KiB
56 lines
1.5 KiB
#!/bin/bash
|
|
# LinuxGSM alert_rocketchat.sh function
|
|
# Author: Alasdair Haig
|
|
# Website: https://linuxgsm.com
|
|
# Description: Sends Rocketchat alert.
|
|
|
|
functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
|
|
|
|
if ! command -v jq > /dev/null; then
|
|
fn_print_fail_nl "Sending Rocketchat alert: jq is missing."
|
|
fn_script_log_fatal "Sending Rocketchat alert: jq is missing."
|
|
fi
|
|
|
|
json=$(cat <<EOF
|
|
{
|
|
"alias":"Yggdragsil",
|
|
"text":"* ${alertemoji} ${alertsubject}* + \n ${alertbody}",
|
|
"attachments":[
|
|
{
|
|
"title":"Linuxgsm Alert",
|
|
"text":"Hostname: ${HOSTNAME}",
|
|
"color":"#36a64f",
|
|
"fields":[
|
|
{
|
|
"short":true,
|
|
"title":"Game:",
|
|
"value":"${gamename}"
|
|
},
|
|
{
|
|
"short":true,
|
|
"title":"Server IP:",
|
|
"value":"${alertip}:${port}"
|
|
},
|
|
{
|
|
"short":true,
|
|
"title":"Server Name:",
|
|
"value":"${servername}"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
EOF
|
|
)
|
|
|
|
fn_print_dots "Sending Rocketchat alert"
|
|
|
|
rocketlaunch=$(curl -X POST -H "Content-Type:application/json" --data "$(echo -n "$json" | jq -c .)" "${rocketchatwebhook}")
|
|
|
|
if [ "${rocketlaunch}" == "ok" ]; then
|
|
fn_print_ok_nl "Sending Rocketchat alert"
|
|
fn_script_log_pass "Sending Rocketchat alert"
|
|
else
|
|
fn_print_fail_nl "Sending Rocketchat alert: ${rocketlaunch}"
|
|
fn_script_log_fatal "Sending Rocketchat alert: ${rocketlaunch}"
|
|
fi
|
|
|