I want to confirm something with you: are you using a negative number with your DEFAULT_RECIPIENT_TELEGRAM? What is the HTTP response you receive when you run alarm-notify.sh test?
While I was preparing an environment to use telegram, I observed that the steps to configure Telegram 4.14.4 is different of previous versions that I configured. I am going to update it as soon I finish this answer for you.
To configure my telgram locally, I followed the steps:
1 - I create a bot accessing the @BotFather
2 - I create a new group and I invited my bot an @myidbot to it.
3 - After this, I ran the command /getgroupid@myidbot inside the group I created to get the id.
4 - Now it is time to modify netdata, I modified my /etc/netdata/health_alarm_notify.conf adding
TELEGRAM_BOT_TOKEN=“AAAAAAAA:BBBB-A_SECRET_VALUE”
DEFAULT_RECIPIENT_TELEGRAM=“-SECRET”
The TELEGRAM_BOT_TOKEN was delivered by BotFather. While DEFAULT_RECIPIENT_TELEGRAM was delivered by /getgroupid@myidbot`
5 - Finally, I ran the command /usr/libexec/netdata/plugins.d/alarm-notify.sh test and I got:
time=2024-01-12T15:50:59.393+00:00 comm=alarm-notify.sh source=health level=info tid=9035 thread=alarm-notify msg_id=6db0018e83e34320ae2a659d78019fb7 node=hades instance=test.chart alert_id=1 alert_unique_id=1 alert=test_alarm alert_class=Test alert_recipient=sysadmin alert_duration=1 alert_value=100 alert_value_old=90 alert_status=WARNING alert_value_old=CLEAR alert_units=units alert_summary="a test alarm" alert_info="this is a test alarm to verify notifications work" request="'./alarm-notify.sh' 'sysadmin' 'hades' '1' '1' '1' '1705074657' 'test_alarm' 'test.chart' 'WARNING' 'CLEAR' '100' '90' './alarm-notify.sh' '1' '1' 'units' 'this is a test alarm to verify notifications work' 'new value' 'old value' 'evaluated expression' 'expression variable values' '0' '0' '' '' 'Test' 'command to edit the alarm=0=hades' '' '' 'a test alarm' " msg="[ALERT NOTIFICATION]: sent telegram notification to '-SECRET' for notification to 'sysadmin' for transition from CLEAR to WARNING, of alert 'test_alarm' = 'new value', of instance 'test.chart', context '' on host 'hades'"
As you can see, my telegram notifications are completely different of yours. The message format that I have for Slack and Telegram arre more or less the same.
I am going to run real tests now while I am updating our documentation.
Please, let me know if your steps to configure were like mine, because this can be the source of issues.
the steps I took while configurating the bot are different becasue I haven’t create a group and then invited my bot to that group, I’ve instead opened a chat with the bot directly and then issued a /getid command @idbot.
That’s the ID I’m using as DEFAULT_RECIPIENT_TELEGRAM.
What sounds strange to me is that even the cloud email notifications acts exatcly like the telegram one while the gotify ones acts like the parent node email notifications.