Telegram Notifications Plugin (discourse-telegram-notifications)

ربما سؤال غبي، لكن ما الإشعارات التي أتوقع رؤيتها عبر تيليجرام؟ البوت يعمل، أرسلت له رسالة وحصلت على معرف الدردشة، وأدخلت هذا المعرف في ملفي الشخصي، ولكن رغم تلقي بريد إلكتروني إلكتروني منذ ذلك الحين، لم أرَ أي شيء على تيليجرام. هل كان يجب أن أرى شيئًا، أم أن هناك مكانًا آخر يجب إعداد الإشعارات فيه؟

إذا كانت هناك حاجة إلى سجلات للمساعدة في حل هذه المشكلة، فأنا مستعد لنشرها، لكنني أحتاج إلى إرشادات حول مكان البحث عنها.

التدقيق اللغوي مفيد دائمًا—اتضح أنني (على ما يبدو، رغم أنني لم أرَ الخطأ) أدخلت معرف الدردشة بشكل خاطئ. الآن بعد إعادة إدخاله، تعمل الإشعارات كما هو متوقع. رائع!

3 إعجابات

مرحبًا. أحاول إعداد هذا، لكنني عالق في محاولة جعل البوت يرسل لي معرف الدردشة (Chat ID). بغض النظر عمن أكتب، لا أحصل على أي رد.

أولاً، قمت بإنشاء البوت اتباعًا للإرشادات.
ثم قمت بإنشاء مجموعة في تيليجرام وأضفت البوت كعضو.
ثم حاولت إرسال رسالة، حتى مع ذكر البوت، ولا يزال لا يوجد رد.

جربت حتى إنشاء قناة وإرسال رسالة إلى البوت، لكن لا يزال لا يوجد رد.
حاولت أيضًا القيام بذلك عبر تطبيق سطح المكتب وتطبيق الهاتف المحمول، لكن دون جدوى.

لست متأكدًا مما يجب فعله بعد ذلك.

أيضًا، هل أحتاج إلى تثبيت كل من discourse-chat-integration و discourse-telegram-notifications؟

لا أرى في الوثائق أي إشارة إلى ضرورة إنشاء مجموعة، بل على العكس، هناك توصية بمنع إضافة البوت إلى مجموعة. أرسل رسالة مباشرة إلى البوت، وليس إلى مجموعة تتضمن البوت.

وفقًا للمؤلف الأصلي (وهو مذكور حتى في مربع مظلّل في الأعلى)، فإن كلًا منهما يؤدي وظيفة مختلفة:

إعجاب واحد (1)

شكرًا على الملاحظات، سأحاول مرة أخرى.

هل يمكنني استخدام إضافة تكامل غرفة الدردشة وإضافة إشعارات تيليجرام في نفس الوقت؟ لقد قمت بتكامل إضافة غرفة الدردشة بنجاح وهي تعمل بشكل جيد، لكن إضافة إشعارات تيليجرام لا تُعلم المستخدمين. يظهر البوت لي فقط هذا!

testbot, [28.12.19 15:58]
مرحبًا أيها المسؤول، سأراسلك عندما يكون لديك إشعارات جديدة على ملاجئ المهندسين.
الرد على إشعار سيقوم بنشر رد على ملاجئ المهندسين.
لتعطيل ذلك، قم بزيارة تفضيلات المستخدم الخاصة بك.

من المنشور الأصلي:

لم أجرب ذلك بنفسي، لكن يبدو أن هذا يجيب على السؤال.

إعجاب واحد (1)

وجدتُ أين أخطأت؛ كنتُ أضع رمز الوصول في منطقة إضافة تكامل الدردشة. لقد وجدتُ الرمز في منطقة إعدادات الإضافات لـ Telegram، وأرسلتُ رسالة إلى البوت، وحصلتُ على رد!

اقتباس: لا يزال البوت لا يرد عليّ ولا يزودني بمعرف المحادثة عبر Telegram. حاولتُ إرسال رسالة إلى البوت نفسه، وحاولتُ إنشاء قناة عبر Telegram ووسم البوت برسالة، لكنني لم أحصل على أي شيء.

هل وجدت حلاً لهذه المشكلة؟ لقد واجهت هذه المشكلة أيضًا.

لقد فتحت للتو هذا الطلب في الإضافة:

وهو يضيف دعمًا لذلك السلسلة النصية، وكذلك لإضافة Discourse Follow Plugin
آمل أن يقوم الموظفون بدمجه قريبًا

يبدو رائعًا، لقد دمجتُها للتو - شكرًا لك @barreeeiroo :smiley:

4 إعجابات

إذا كنت تخطط لتوسيع هذا المشروع ليشمل إشعارات عبر Viber ورسائل SMS، فراجع مشروعي على GitHub - Sprachprofi/notifications_sample: Demonstrating how to cleanly handle opt-in/opt-out and notifications via a variety of platforms · GitHub

إعجاب واحد (1)

@david
ملحق مفيد جداً، شكراً لك! :blush:

هل يمكنني استخدام {name} بدلاً من {username} في الترجمات؟

للأسف لا، فهذا سيتطلب تغييرًا في كود الإضافة

4 إعجابات

مرحبًا @david، يبدو أن البوت الخاص بي لا يعمل أحيانًا… لقد تحققت من الرمز المميز (token) وشهادة SSL للموقع، وكلها تبدو جيدة… هل لديك أي أفكار؟

لقد راجعت السجلات (logs) وجميعها تتعلق بالرسائل الخاصة:
فشل في إرسال رسالة عبر تيليجرام. بيانات الرسالة = “… رسالة خاصة …”

/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'

مرحباً.
نفس المشكلة مع تثبيت هذه الإضافة..

المشكلة والحل:

المشكلة:
كنت مشوشًا جدًا بين الإضافتين، وبين روبوتيي تيليجرام، وبين محادثتي تيليجرام (قناة تيليجرام ومجموعة تيليجرام). وفي هذا الارتباك، كان يُعطاني دائمًا حقل واحد باسم “رمز تيليجرام” أو ما شابه ذلك. لكنني استمررت في الخلط بينهما.

الحل:
في النهاية، اكتشفت أنه في إعدادات Discourse، يوجد حقلان مختلفان، لهما تسميات/أسماء متشابهة جدًا، ويقعان بجوار بعضهما البعض تمامًا، لكنهما، حسنًا، لَيسَا نفس الشيء.

لذلك، يرجى ملاحظة أن هذين شيئين مختلفين، ولهما أغراض مختلفة:

لاحظت أن محادثات قناة تيليجرام/المجموعة لم تعد تُبلغ/تستجيب لأمر /getchatid. لا يمكننا أن نجعلها تكشف معرف الدردشة الخاص بها بالطرق العادية. في السابق، كلما أنشأنا روبوتًا جديدًا، كان يقول معرفه تلقائيًا بمجرد بدء محادثة معه. لكن لم يعد يتصرف بهذه الطريقة.

هل من الممكن تنفيذ إمكانية استلام إشعار عند وجود منشور في انتظار الموافقة؟

مرحبًا @david!
أولاً، شكرًا لك على هذا الإضافة. لقد تم إعدادها بالكامل وتعمل بشكل ممتاز، ولا يسعني الانتظار للإعلان عنها للمجتمع.
ومع ذلك، لديّ بضعة أسئلة:

  1. كيف يمكنني ترجمتها إلى لغتي الخاصة لتسهيل الأمور أكثر على مجتمعنا؟

  2. هل توجد طريقة، سواء عبر Telegram أو Discourse، للتحكم في مظهر رسالة Telegram؟ الخط غير جذاب، وهناك مسافتان فارغتان بين كلمات النص الفعلي المرسَل من Discourse (بينما نصوص الإضافة تبدو جيدة تمامًا).

أنا أيضًا. لا يعجبني حقًا كيف يبدو.

من الجيد سماع أن هذا لا يزال يعمل. أعتقد أنني سأجرب هذا على مجتمعي.