Telegram Notifications Plugin (discourse-telegram-notifications)

Perhaps a dumb question, but what notifications should I expect to see via Telegram? The bot is up and running, I send it a message and get a Chat ID, I put that ID into my user profile, but despite having gotten a couple of email notifications since that time, I haven’t seen anything on Telegram. Should I have, or is there someplace else I need to set up those notifications?

If logs are needed to help figure this out, I’m fine with posting them, but I’ll need some guidance on where to look for them.

Proofreading always helps–turns out I’d (apparently, though I never saw the error) entered the Chat ID incorrectly. Now that it’s re-entered, notifications work as expected. Cool!

3 Likes

Hi. I’m trying to get this configured but I’m stuck on trying to get the Bot to send me the Chat ID. No matter what i type, I get no response.

First I created the bot following the directions.
Then I created a Group in Telegram and add the bot as a member.
Then i try to send a message, even tagging the bot and still no response.

I even try to create a channel and message the bot but still no response.
I even tried doing it through the desktop pp and through my mobile phone app, still no luck.

Im not sure what else to do.

Also, Do i need both, discourse-chat-integration and discourse-telegram-notifications installed?

I don’t see anywhere in the docs that it says to create a group, and in fact I see a recommendation to disallow the bot from being added to a group. Send a message directly to the bot, not to a group that includes the bot.

According to the OP (it’s even in a shaded box at the top), they do different things:

1 Like

thanks for the input, ill try again.

Can I use Chatroom Integration Plugin & Telegram notification plugins at the same? I have integrated chatroom integration plugin successfully and its working fine, but Telegram notification plugin is not notifying users. The bot just show me this!

testbot, [28.12.19 15:58]
Hi Administrator, I'll message you when you have new notifications on Engineer's Asylum. 
Replying to a notification will post a reply on Engineer's Asylum.
To disable, visit your user preferences.

From the OP:

I haven’t done it myself, but that appears to answer the question.

1 Like

I found where i went wrong, i was putting the access token in the chat integration plugin area, i found the one in the plugins settings area for telegram, messaged the bot and I got a response!

Blockquote Im still not getting the bot to respond and provide me the chat id via telegram. I tried to send a message to the bot itself. i tried to create a channel via telegram and tag the bot with a message. still i got nothing

Have you found a fix for this? I got this issue too.

I have just opened this PR to the plugin:

https://github.com/davidtaylorhq/discourse-telegram-notifications/pull/14

It adds support for that string, and also for the Discourse Follow Plugin
I hope staff merges it soon

Looks great, I just merged it - thanks @barreeeiroo :smiley:

4 Likes

If you plan to expand this to offer Viber and SMS notifications, look at my project https://github.com/Sprachprofi/notifications_sample

1 Like

@david
Very useful plugin, Thank you! :blush:

Can I use {name} instead of {username} in translations?

Unfortunately not, that would require a change to the code of the plugin

4 Likes

Hey @david, my bot sometimes not working … Checked the token and site SSL, all ok… Any ideas?

I had checked the logs and those all about private messages:
Failed to send Telegram message. Message data= "… private message …"

/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/logster-2.5.1/lib/logster/logger.rb:112:in `report_to_store'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/logster-2.5.1/lib/logster/logger.rb:103:in `add_with_opts'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/logster-2.5.1/lib/logster/logger.rb:54:in `add'
/usr/local/lib/ruby/2.6.0/logger.rb:543:in `error'
/var/www/discourse/plugins/discourse-telegram-notifications/services/discourse_telegram_notifications/telegram-notifier.rb:46:in `doRequest'
/var/www/discourse/plugins/discourse-telegram-notifications/services/discourse_telegram_notifications/telegram-notifier.rb:7:in `sendMessage'
/var/www/discourse/plugins/discourse-telegram-notifications/plugin.rb:234:in `execute'
/var/www/discourse/app/jobs/base.rb:232:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rails_multisite-2.0.7/lib/rails_multisite/connection_management.rb:63:in `with_connection'
/var/www/discourse/app/jobs/base.rb:221:in `block in perform'
/var/www/discourse/app/jobs/base.rb:217:in `each'
/var/www/discourse/app/jobs/base.rb:217:in `perform'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:196:in `execute_job'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:164:in `block (2 levels) in process'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/middleware/chain.rb:138:in `block in invoke'
/var/www/discourse/lib/sidekiq/pausable.rb:138:in `call'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/middleware/chain.rb:140:in `block in invoke'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/middleware/chain.rb:143:in `invoke'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:163:in `block in process'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/job_retry.rb:111:in `local'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq.rb:37:in `block in <module:Sidekiq>'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:257:in `stats'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/job_logger.rb:13:in `call'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/job_retry.rb:78:in `global'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:124:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/logger.rb:10:in `with'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/job_logger.rb:33:in `prepare'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:123:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:162:in `process'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:78:in `process_one'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/processor.rb:68:in `run'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/util.rb:15:in `watchdog'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/sidekiq-6.0.4/lib/sidekiq/util.rb:24:in `block in safe_thread'

Greeting.
Same problem with installation of this plugin…

Problem & Solution:

Problem:
I was much confused between the two plugins, two telegram bots, two telegram chats (telegram channel and telegram group). And in this confusion I always was given one field named ‘Telegram Token’ or something like that. But kept getting confused between the two.

Solution:
In the end, I found that in Discourse Settings, there exist two different fields, with very-very similar looking labels/names, and in the very neighborhood of each other, but which are, well, NOT SAME.

So, kindly see that these are 2 different things, and have diff purpose:

I’ve noted that telegram channel/group chats no longer tell/respond to the /getchatid command. We can’t have them divulge their chat ID in normal ways. Earlier, whenever we created a new bot, it automatically said its ID, as soon as we initiated a chat with it. But no longer it so behaves.

Would it be possible to implement that I receive a notification if a post is awaiting approval?

Hey @david !
Firstly, Thanks for the plugin. Its all set up, works and I can’t wait to announce it to the community.
I do, however, have a couple of questions:

  1. How can I translate it to my language, to make things even easier for our community?

  2. Is there any way, either through Telegram or Discourse, where I can control the Telegram message appearance? The font is bad looking and there are double spaces between the words of the actual message text sent from discourse (the plugin texts looks just fine).

Same here. I don’t really like how it looks.

Nice to hear this is still working. I think I’m going to give this is a shot on my community.