Notifiche Amazon SNS per Discourse

:information_source: Riepilogo Invia notifiche push tramite Amazon SNS a un’applicazione mobile personalizzata.
:hammer_and_wrench: Link Repository GitHub - discourse/discourse-amazon-sns
:open_book: Guida all’installazione Come installare plugin in Discourse

Il plugin discourse-amazon-sns abilita le notifiche push nei forum Discourse tramite Amazon Simple Notification Service (SNS). È progettato per funzionare in combinazione con un’app mobile per inviare notifiche push ai dispositivi iOS e Android tramite APNS e GCM/FCM. Amazon SNS gestisce la comunicazione con ciascun protocollo, questo plugin garantisce che gli eventi di Discourse (risposte, argomenti monitorati, PM, ecc.) attivino eventi in SNS.

Funzionalità

  • Supporto per notifiche push per le piattaforme iOS (APNS) e Android (GCM/FCM)
  • Registrazione e gestione dei token dei dispositivi
  • Gestione automatica degli endpoint disabilitati o non validi
  • Integrazione con il sistema di notifiche esistente di Discourse
  • Supporto per la comunicazione webview di React Native

Requisiti

  • Account AWS con accesso SNS
  • Applicazioni della piattaforma Amazon SNS configurate per:
    • iOS (APNS o APNS_SANDBOX)
    • Android (GCM/FCM)
  • Credenziali AWS con autorizzazioni per pubblicare su SNS
  • Applicazione mobile in grado di registrarsi e ricevere notifiche push

Impostazioni

Nome Descrizione
enable_amazon_sns_pns Abilita/disabilita la funzionalità del plugin
amazon_sns_access_key_id ID chiave di accesso AWS
amazon_sns_secret_access_key Chiave di accesso segreta AWS
amazon_sns_region Regione AWS (es. us-east-1)
amazon_sns_apns_application_arn ARN per l’applicazione della piattaforma iOS in SNS
amazon_sns_gcm_application_arn ARN per l’applicazione della piattaforma Android in SNS
5 Mi Piace

Ciao a tutti! Sto usando Discourse 3.5.2 tramite l’immagine discourse/discourse e questo è l’unico plugin che causa problemi durante l’installazione, provocando un errore 5xx nella nostra installazione. L’errore è il seguente:

ActionView::Template::Error (L'asset 'plugins/discourse-amazon-sns.js' non è stato trovato nel percorso di caricamento.)
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'

Tutti gli asset sono già stati precompilati eseguendo:

RAILS_ENV=production bundle exec rake assets:precompile

Potete aiutarmi a capire cosa potrebbe causare questo problema?

Mi scusi. Si tratta di un nuovo errore? Intende dire che aveva già installato questo plugin e ha smesso di funzionare a un certo punto?

È qualcosa di nuovo, abbiamo appena introdotto il plugin nella nostra installazione (abbiamo altri plugin e funzionano tutti), ma poi il sito restituisce un errore 5xx, e quando controllo i log, vedo quello che ti ho inviato. Il mio Dockerfile è simile a questo:

FROM discourse/discourse:3.5.2

WORKDIR /var/www/discourse

# Installa il plugin discourse-amazon-sns
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

Quella è un’immagine sperimentale e avrà molti problemi di compatibilità con i plugin

2 Mi Piace

Sì, @caue-pareto, scusa, penso che questo abbia a che fare con quell’immagine. Non vedo problemi con questo plugin sulla mia installazione self-hosted seguendo l’installazione standard.

1 Mi Piace