Dude notofication to Telegram

Hello there.

Dude was sending messages until yesterday, but today I discovered that messages aren't arriving in the chat. There was no change within Dude.

image

/tool fetch url="https://api.telegram.org/botxxxxxxxxxx/sendMessage\?chat_id=-xxxxxxxxxxxxxxxx&text=Устройство: [Device.Name]; Статус: [Service.Status]; IP: [Device.AddressesColumn]; Время: [Time]" keep-result=no

Hi,

And the question is? Remeber that Dude got abandonware status with "we do not care" bagde from MT.

Are there any errors in the log? May be it's similar to this issue? Is the Telegram script failing? - #5 by diamuxin

I see, here i'm not got the help?)

Nope, nothing in log

Can you send it manualy from using other method?
Maybe Telegam is turning the scres on the security/external access/allowed sources/methods?

Were you able to get it working, I see mine also stopped sending messages a few days ago.

Ok, so I tested using CLI in Winbox and this gave me the errors I needed to see why mine was not working. I am able to send a Hello message and just need to integrate the variables again.

This is not helpful now is it? Also, the fetch tool that is being used in Dude is not abandoned since it is part of RouterOS, so your statement is irrelevant

Maybe is, maybe is not irrelevant.

  1. Dude needs to call fetch, so if you changed the ROS on the router side, then Dude can be puzzeled somehow and resists to "cooperate".
  2. If you tested the telegram with CLI and it gaves errors from inside ROS so the problem could be on the Telegram side.
  3. You are not the only person asking for help with Telegram.

Dude was abandoned by Mikrotik.

See the thread linked by @teslasystems above. You now have to properly escape the message you put in the fetch URL. See the proper way to do it at the bottom of that thread:

using :convert!

Thank you, I did get it working. It seems changes were made on Telegram server side in the way it parse the message from the fetch command. In mine it was spaces, that always worked fine but now it did not want to accept it.

Facts:

  1. It's not caused by any changes to RouterOS.
  2. People copy and paste scripts without even knowing how they work.
  3. People don't research, first of all, whether Telegram changed anything (which has absolutely nothing to do with "fetch" or RouterOS).
    .

Hi friend, How did you solve it? I'm having the same problem. I'm sending spaces from the dude alerts.

I replaced the spaces with underscore _ character so my notification is as follows
/tool fetch url="https://api.telegram.org/botxxxxxxxxxxxx/sendmessage\?chat_id=xxxxxxxxxxxx&text=[Device.Name]_[Probe.Name]:[Service.Status]_[TimeAndDate]" keep-result=no

I agree

So it seems that my suspection that "Telegram started to do things differently" was not irrelevant as it's not Dude using ROS by itself but driving monitored device to execute fetch command that failded because of Telegram side.

hi friend, still not working for me, from notification settings test button sends ok, but when it's supposed to notify about a network element being down, the alert doesn't send.

my notification in dude settings:

executing script from console failed, please check it manually
(dude-notify) failure: Fetch failed with status 400 (/tool/fetch; line 2)

@mcskiller

READ this:

fixed, ty, i was using Duve v6, updating to v7, and with the parameter http-percent-encoding=yes it started working again. I can't send some emojis I had or the markdown text, but it's still functional.