mirror of
https://github.com/nymurbd/MikroTik-scripts.git
synced 2025-07-17 17:42:32 +02:00
global-functions: add function to notify via e-mail and telegram
This commit is contained in:
parent
977a5d5f5e
commit
5e4ef0ab8f
2 changed files with 40 additions and 0 deletions
|
@ -16,6 +16,11 @@
|
||||||
:global "email-backup-to" "mail@example.com";
|
:global "email-backup-to" "mail@example.com";
|
||||||
:global "email-backup-cc" "";
|
:global "email-backup-cc" "";
|
||||||
|
|
||||||
|
# You can send Telegram notifications. Register a bot
|
||||||
|
# and add the token and chat ids here.
|
||||||
|
:global "telegram-tokenid" "123456:ABCDEF-GHI";
|
||||||
|
:global "telegram-chatid" "12345678";
|
||||||
|
|
||||||
# This defines what backups to generate and what password to use.
|
# This defines what backups to generate and what password to use.
|
||||||
:global "backup-send-binary" false;
|
:global "backup-send-binary" false;
|
||||||
:global "backup-send-export" true;
|
:global "backup-send-export" true;
|
||||||
|
|
|
@ -45,3 +45,38 @@
|
||||||
|
|
||||||
:return $return;
|
:return $return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# send notification via e-mail and telegram
|
||||||
|
# Note that subject and attachment are ignored for telegram!
|
||||||
|
:global SendNotification do={
|
||||||
|
:local subject $1;
|
||||||
|
:local message $2;
|
||||||
|
:local attach $3;
|
||||||
|
|
||||||
|
:global "email-general-to";
|
||||||
|
:global "email-general-cc";
|
||||||
|
:global "telegram-tokenid";
|
||||||
|
:global "telegram-chatid";
|
||||||
|
|
||||||
|
:if ([ :len $"email-general-to" ] > 0) do={
|
||||||
|
:do {
|
||||||
|
/ tool e-mail send to=$"email-general-to" cc=$"email-general-cc" \
|
||||||
|
subject=$subject body=$message file=$attach;
|
||||||
|
} on-error={
|
||||||
|
:log warning "Failed sending notification mail!";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# You need to import the certificate chain for api.telegram.org!
|
||||||
|
# https://certs.godaddy.com/repository/gdroot-g2.crt
|
||||||
|
# https://certs.godaddy.com/repository/gdig2.crt.pem
|
||||||
|
:if ([ :len $"telegram-tokenid" ] > 0 && [ :len $"telegram-chatid" ] > 0) do={
|
||||||
|
do {
|
||||||
|
/ tool fetch check-certificate=yes-without-crl keep-result=no http-method=post \
|
||||||
|
("https://api.telegram.org/bot" . $"telegram-tokenid" . "/sendMessage") \
|
||||||
|
http-data=("chat_id=" . $"telegram-chatid" . "&text=" . $message);
|
||||||
|
} on-error={
|
||||||
|
:log warning "Failed sending telegram notification!";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue