Почему скрипт на mikrotik не отправляет сообщения в slack?

Переползая в слак с телеграма(ну вы в курсе почему), столкнулся с тем что слак категорически не хочет в кириллицу
Вот сам скрипт:
:global SlackMessage "%0ATime:  [Time]%0AAddress: [Device.CustomField2]%0AIP: [Device.FirstAddress]%0APing: [Service.Status]%0A";
:global SlackChannel "channel-id";
:local messageencoded "";
:local botname "DUDE-server"
:local token "slack-token"
:local iconurl https://wiki.mikrotik.com/images/5/54/Dude-icon3.png
#replace ASCII characters with URL encoded characters
:for i from=0 to=([:len $SlackMessage] - 1) do={
  :local char [:pick $SlackMessage $i]
  :if ($char = " ") do={
   :set $char "%20"
  }
  :if ($char = "-") do={
    :set $char "%2D"
  }
  :if ($char = "#") do={
    :set $char "%23"
  }
  :if ($char = "+") do={
    :set $char "%2B"
  }
  :if ($char = "  ") do={
    :set $char "%09"
  }
  :if ($char = ":") do={
    :set $char "%3a"
  }
  :set messageencoded ($messageencoded . $char)
}
/tool fetch url="https://slack.com/api/chat.postMessage?token=$token&channel=$SlackChannel&text=$messageencoded&icon_url=$iconurl&as_user=false&username=$botname";

И не дай б-г в сообщении будет хоть одна русская буква, всё, сообщения не идут. Пробовал :if ($char = "ё") do={:set $char "%D1%91"}для каждой буквы нашего алфавита, и строчных и прописных. Толку ноль.
Помощи твоей прошу, о великий коллективный разум!
P.S.
Вариант предложения другого мессенджера/сервиса тоже приемлем, но с имеющимися/работающими решениями данного вопроса(e-mail не предлагать).
  • Вопрос задан
  • 749 просмотров
Решения вопроса 1
pafflootiy
@pafflootiy Автор вопроса
Сам отвечу. RouterOS >= 6.39 научился в POST. Посему, можно через вебхуки слака с типом контента "application/json" слать интересующие меня уведомления.
Всем спасибо!
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы