Configurare una casella di posta di supporto

Ciao a tutti, mi sono appena imbattuto in questo post del blog How Does Team Discourse Use Discourse?, e questo mi ha colpito:

Chiunque può inviare un’email a team@discourse.org e gestiamo queste interazioni in una casella di posta centrale di Discourse, come messaggi privati di gruppo.

Come avete configurato questo? Mi piacerebbe molto farlo per steering@somervilleyimby.org (attualmente utilizziamo un Google Group e la cosa è piuttosto imbarazzante). Utilizzo Google Apps per le email ricevute e inviate da somervilleyimby.org, e Mailgun per gestire le email di Discourse (ad esempio, jeff@somervilleyimby.org; queste vengono inviate/ricevute tramite discourse.somervilleyimby.org), quindi non mi è del tutto chiaro come potrei configurare questo.

Avete suggerimenti o forse una guida? Ho notato Configuring incoming email to create new topics or group messages, ma quello mi porta solo a metà strada.

1 Mi Piace

Ciao. Hai visto Discourse as a private email support portal

5 Mi Piace

Ah bello bello! È una buona lettura, ma non chiarisce l’elemento critico che mi manca:

Come faccio a far sì che steering@somervilleyimby.org finisca in un Gruppo nel nostro Discourse?

Al momento, il dominio somervilleyimby.org è mappato all’email di Google Apps e abbiamo questi due indirizzi:

Le email in entrata e in uscita dal nostro Discourse utilizzano discourse.somervilleyimby.org tramite Mailgun, ed è ben configurato.

Ma come mapperei un indirizzo email sul dominio principale per essere ricevuto da un Gruppo all’interno di Discourse?

Mi rendo conto che questo potrebbe essere al di fuori dell’ambito di Discourse stesso, ma pensavo che qualcuno potesse avere un’idea, e sospetto che ci siano indirizzi individuali person@discourse.org e anche un indirizzo condiviso team@discourse.org che finisce nell’istanza di Team Discourse.

Funzionerebbe un reindirizzamento di un’e-mail a someaddress@discourse.somervilleyimby.org?

Ci ho pensato, sto ancora cercando di capire esattamente come lo collegherei :thinking:

Ciao Jeff :slightly_smiling_face:

Non sono sicuro al 100% di seguirti, ma uso il mail-receiver sul mio sito self-hosted per gestire le email in arrivo, abilitare l’email in ingresso nelle impostazioni di amministrazione, quindi impostare un indirizzo email nelle impostazioni del gruppo/categoria per dove voglio che qualcosa finisca.

Qualcosa di tutto ciò ti sembra utile?

3 Mi Piace

Il problema con il ricevitore di posta è che gestisce un singolo dominio.

Jeff utilizza attualmente un sottodominio per l’istanza, ma desidera che venga gestita anche una casella di posta al dominio principale.

1 Mi Piace

Quindi dovrebbe configurare il ricevitore di posta su un sottodominio diverso, e poi inoltrare la posta da quello reale a quello di discourse. (questo dovrebbe essere diviso in un proprio argomento)

2 Mi Piace

Grazie a tutti, e apprezzo che abbiate separato questo in un argomento a sé stante.

@JammyDodger questo sicuramente sembra che farebbe al caso mio, e @pfaffman sembra che abbia colto nel segno su come potrei gestire la configurazione del mio dominio + sottodominio.

Se qualcuno è curioso, il sottodominio è ciò che Mailgun suggerisce come best practice se hai già la posta elettronica sul tuo dominio gestita da un’altra entità (Google Apps, nel nostro caso).

In breve: le email rimangono molto difficili.

2 Mi Piace

Quindi ho capito che posso usare le regole di inoltro di Gmail per inoltrare le email a steering@discourse.somervilleyimby.org, e Mailgun poi invia tramite POST questo al punto di interruzione del mio plugin Mailgun, /mailgun/incoming ma lanciano errori 422 Unprocessable Entity :thinking:

Suppongo che dovrò approfondire un po’ il codice del plugin…

Se non stai usando Mailgun per ricevere posta per il sottodominio del tuo forum, ti consiglio di eliminare i record MX di Mailgun e utilizzare Configura la ricezione diretta delle email per siti self-hosted.

Quindi sto usando Mailgun per questo, il che ovviamente complica le cose. Ma in realtà non voglio gestire la mia posta elettronica perché sono solo io a gestire l’amministrazione.

Nondimeno, mi avete indicato la giusta direzione!

/me sospira

Certo, tutto questo sarebbe probabilmente meno complicato se l’aggiornamento a Discourse 3.x non avesse apparentemente interrotto completamente l’email in entrata tramite il plugin Mailgun :disappointed:

Un errore che sto riscontrando

Dai log:

# env tab
hostname	discourse-app
process_id	9406
application_version	3030a538192252c9d29e4fb763d31810327f370a
HTTP_HOST	discourse.somervilleyimby.org
REQUEST_URI	/mailgun/incoming
REQUEST_METHOD	POST
HTTP_USER_AGENT	Go-http-client/2.0
HTTP_ACCEPT	*/*
HTTP_X_FORWARDED_FOR	<redacted>
HTTP_X_REAL_IP	<redacted>
time	2:59 pm
# info
Message (27 copies reported)

ActionController::InvalidAuthenticityToken (Can't verify CSRF token authenticity.)
lib/middleware/omniauth_bypass_middleware.rb:74:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:366: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:24:in `call'
lib/middleware/request_tracker.rb:228:in `call'

Backtrace

actionpack (7.0.3.1) lib/action_controller/metal/request_forgery_protection.rb:251:in `handle_unverified_request'
actionpack (7.0.3.1) lib/action_controller/metal/request_forgery_protection.rb:284:in `handle_unverified_request'
actionpack (7.0.3.1) lib/action_controller/metal/request_forgery_protection.rb:273:in `verify_authenticity_token'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:400:in `block in make_lambda'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:199:in `block (2 levels) in halting'
actionpack (7.0.3.1) lib/abstract_controller/callbacks.rb:34:in `block (2 levels) in <module:Callbacks>'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:200:in `block in halting'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:595:in `block in invoke_before'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:595:in `each'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:595:in `invoke_before'

Env

HTTP HOSTS: discourse.somervilleyimby.org
# backtrace
Message (26 copies reported)

ActionController::InvalidAuthenticityToken (Can't verify CSRF token authenticity.)
lib/middleware/omniauth_bypass_middleware.rb:74:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:366: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:24:in `call'
lib/middleware/request_tracker.rb:228:in `call'

Backtrace

actionpack (7.0.3.1) lib/action_controller/metal/request_forgery_protection.rb:251:in `handle_unverified_request'
actionpack (7.0.3.1) lib/action_controller/metal/request_forgery_protection.rb:284:in `handle_unverified_request'
actionpack (7.0.3.1) lib/action_controller/metal/request_forgery_protection.rb:273:in `verify_authenticity_token'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:400:in `block in make_lambda'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:199:in `block (2 levels) in halting'
actionpack (7.0.3.1) lib/abstract_controller/callbacks.rb:34:in `block (2 levels) in <module:Callbacks>'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:200:in `block in halting'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:595:in `block in invoke_before'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:595:in `each'
activesupport (7.0.3.1) lib/active_support/callbacks.rb:595:in `invoke_before'

Env

HTTP HOSTS: discourse.somervilleyimby.org

Vado a vedere se ci sono altri report simili, ma se qualcuno di voi ha idee, le accolgo volentieri!

Ho capito! Ok, bello, quindi prima, l’aggiornamento a Discourse v3.x + il mio plugin Mailgun obsoleto si sono messi di traverso.

Comunque, il COME:

  1. Imposta una Route di Ricezione Mailgun per l’indirizzo o il pattern RegEx per ricevere email in arrivo
  2. Visita Google Admin
  3. Nella navigazione a sinistra, espandi “App”, poi “Google Workspace” e fai clic su “Gmail” (questo link potrebbe funzionare?)
  4. Fai clic su Routing predefinito
  5. Crea una route che mappa l’indirizzo o il pattern sul tuo dominio principale al tuo sottodominio basato su Mailgun:
4 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.