Discourse Amazon SNS Benachrichtigungen

:information_source: Zusammenfassung Push-Benachrichtigungen über Amazon SNS an eine benutzerdefinierte mobile Anwendung senden.
:hammer_and_wrench: Repository-Link GitHub - discourse/discourse-amazon-sns
:open_book: Installationsanleitung So installieren Sie Plugins in Discourse

Das discourse-amazon-sns-Plugin ermöglicht Push-Benachrichtigungen in Discourse-Foren über Amazon Simple Notification Service (SNS). Es ist so konzipiert, dass es in Verbindung mit einer mobilen App verwendet wird, um Push-Benachrichtigungen über APNS und GCM/FCM an iOS- und Android-Geräte zu liefern. Amazon SNS kümmert sich um die Kommunikation mit jedem Protokoll. Dieses Plugin stellt sicher, dass Discourse-Ereignisse (Antworten, beobachtete Themen, PMs usw.) Ereignisse in SNS auslösen.

Funktionen

  • Push-Benachrichtigungsunterstützung für iOS (APNS) und Android (GCM/FCM) Plattformen
  • Registrierung und Verwaltung von Gerätesymbolen
  • Automatische Handhabung von deaktivierten oder ungültigen Endpunkten
  • Integration in das bestehende Benachrichtigungssystem von Discourse
  • Unterstützung für die Kommunikation mit React Native Webviews

Anforderungen

  • AWS-Konto mit SNS-Zugriff
  • Für Folgendes konfigurierte Amazon SNS-Plattformanwendungen:
  • iOS (APNS oder APNS_SANDBOX)
  • Android (GCM/FCM)
  • AWS-Anmeldeinformationen mit Berechtigungen zum Veröffentlichen in SNS
  • Mobile Anwendung, die sich für Push-Benachrichtigungen registrieren und diese empfangen kann

Einstellungen

Name Beschreibung
enable_amazon_sns_pns Aktiviert/deaktiviert die Plugin-Funktionalität
amazon_sns_access_key_id AWS-Zugriffsschlüssel-ID
amazon_sns_secret_access_key AWS-geheimer Zugriffsschlüssel
amazon_sns_region AWS-Region (z. B. us-east-1)
amazon_sns_apns_application_arn ARN für die iOS-Plattformanwendung in SNS
amazon_sns_gcm_application_arn ARN für die Android-Plattformanwendung in SNS
5 „Gefällt mir“

Hallo zusammen! Ich verwende Discourse 3.5.2 mit dem Image discourse/discourse, und dies ist das einzige Plugin, das bei der Installation Probleme verursacht und zu einem 5xx-Fehler bei unserer Installation führt. Der Fehler lautet wie folgt:

ActionView::Template::Error (Die Asset-Datei 'plugins/discourse-amazon-sns.js' wurde im Ladepfad nicht gefunden.)
lib/freedom_patches/propshaft_patches.rb:16:in `compute_asset_path'
app/helpers/application_helper.rb:97:in `script_asset_path'
app/helpers/application_helper.rb:147:in `block in preload_script'
app/helpers/application_helper.rb:146:in `map'
app/helpers/application_helper.rb:146:in `preload_script'
app/views/layouts/application.html.erb:36
app/views/layouts/application.html.erb:35:in `each'
app/views/layouts/application.html.erb:35
lib/topic_list_responder.rb:16:in `block (2 levels) in respond_with_list'
lib/topic_list_responder.rb:7:in `respond_with_list'
app/controllers/list_controller.rb:115:in `block (2 levels) in <class:ListController>'
app/controllers/application_controller.rb:433:in `block in with_resolved_locale'
app/controllers/application_controller.rb:433:in `with_resolved_locale'
app/controllers/application_controller.rb:1065:in `ensure_dont_cache_page'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:410:in `call'

Alle Assets wurden bereits durch Ausführen von:

RAILS_ENV=production bundle exec rake assets:precompile

vorab kompiliert. Können Sie mir helfen zu verstehen, was dieses Problem verursachen könnte?

Das tut mir leid. Ist das ein neuer Fehler? Bedeutet das, Sie hatten dieses Plugin bereits installiert und es hat irgendwann aufgehört zu funktionieren?

Es ist etwas Neues, wir haben das Plugin gerade in unsere Installation eingeführt (wir haben andere Plugins und sie funktionieren alle), aber dann gibt die Seite einen 5xx-Fehler aus, und wenn ich die Protokolle überprüfe, sehe ich, was ich Ihnen geschickt habe. Meine Dockerfile sieht ungefähr so aus:

FROM discourse/discourse:3.5.2

WORKDIR /var/www/discourse

# Installiere das discourse-amazon-sns Plugin
RUN git clone https://github.com/discourse/discourse-amazon-sns.git /var/www/discourse/plugins/discourse-amazon-sns \
    && chown -R discourse:discourse /var/www/discourse/plugins/discourse-amazon-sns

EXPOSE 80

Das ist ein experimentelles Image und wird viele Kompatibilitätsprobleme mit Plugins haben

2 „Gefällt mir“

Ja, @caue-pareto, entschuldige, ich denke, das hat mit diesem Bild zu tun. Ich sehe keine Probleme mit diesem Plugin auf meiner selbst gehosteten Installation, wenn ich der Standardinstallation folge.

1 „Gefällt mir“