محاولة إعداد التسليم المباشر للبريد الإلكتروني الوارد والمواضيع الجديدة عبر البريد الإلكتروني

أحاول تكوين الرد عبر البريد الإلكتروني وإنشاء منشور جديد عبر البريد الإلكتروني. سأكون ممتنًا جدًا لأي مساعدة.

لقد قمت بإعداد حاوية mail-receiver وتمكنت من التشغيل بنجاح دون أخطاء في منتدى Discourse المستضاف ذاتيًا باستخدام هذه الأدلة:

https://meta.discourse.org/t/configure-direct-delivery-incoming-email-for-self-hosted-sites-with-mail-receiver/49487

https://meta.discourse.org/t/configure-incoming-email-to-create-new-topics-or-group-messages/62977

أتلقى رسائل البريد الإلكتروني على نطاقي ولكن يبدو أن رسائل البريد الإلكتروني الخاصة بي يتم رفضها بواسطة مفتاح API.

لقد استخدمت هذا الدليل لإعداد مفتاح API: Where do I put the variables for mail-receiver? - #4 by Simon_Manning

لقد قمت بتكوين مفتاح API لنطاق النظام لاستقبال البريد الإلكتروني والقيم الافتراضية لـ:

  • /admin/email/smtp_should_reject (GET)
  • /admin/email/handle_mail (POST)

هذا مثال لمحتويات سجل mail-receiver الخاص بي:

 mail-qt1-f182.google.com[209.85.160.182]

<19>Jun  3 12:22:56 discourse-smtp-fast-rejection[114]: Failed to GET smtp_should_reject answer from thetarotclub.xyz/admin/email/smtp_should_reject.json: undefined method `request_uri' for #<URI::Generic:0x00005a643e1ea198> (NoMethodError)<19>Jun  3 12:22:56 discourse-smtp-fast-rejection[114]:   /usr/local/lib/site_ruby/mail_receiver/fast_rejection.rb:78:in `maybe_reject_email'
  /usr/local/lib/site_ruby/mail_receiver/fast_rejection.rb:142:in `maybe_reject_by_api'
  /usr/local/lib/site_ruby/mail_receiver/fast_rejection.rb:116:in `block in run_filters'
  /usr/local/lib/site_ruby/mail_receiver/fast_rejection.rb:115:in `each'
  /usr/local/lib/site_ruby/mail_receiver/fast_rejection.rb:115:in `run_filters'
  /usr/local/lib/site_ruby/mail_receiver/fast_rejection.rb:60:in `process_single_request'
  /usr/local/lib/site_ruby/mail_receiver/fast_rejection.rb:34:in `process'
  /usr/local/bin/discourse-smtp-fast-rejection:10:in `<main>'Jun 03 12:22:56 ubuntu-2gb-ash-1-mail-receiver postfix/smtpd[108]: NOQUEUE: reject: RCPT from mail-qt1-f182.google.com[209.85.160.182]: 450 4.7.1 <replies+772ea5167ee1fabce20db67cd141a364@thetarotclub.xyz>: Recipient address rejected: Internal error, API request preparation failed; from=<cheseldm@gmail.com> to=<replies+772ea5167ee1fabce20db67cd141a364@thetarotclub.xyz> proto=ESMTP helo=<mail-qt1-f182.google.com>
Jun 03 12:22:56 ubuntu-2gb-ash-1-mail-receiver postfix/smtpd[108]: disconnect from mail-qt1-f182.google.com[209.85.160.182] ehlo=1 mail=1 rcpt=0/1 bdat=0/1 quit=1 commands=3/5
Jun 03 12:26:16 ubuntu-2gb-ash-1-mail-receiver postfix/anvil[111]: statistics: max connection rate 1/60s for (smtp:209.85.160.182) at Jun  3 12:22:56
Jun 03 12:26:16 ubuntu-2gb-ash-1-mail-receiver postfix/anvil[111]: statistics: max connection count 1 for (smtp:209.85.160.182) at Jun  3 12:22:56
Jun 03 12:26:16 ubuntu-2gb-ash-1-mail-receiver postfix/anvil[111]: statistics: max cache size 1 at Jun  3 12:22:56
Jun 03 12:43:23 ubuntu-2gb-ash-1-mail-receiver postfix/smtpd[127]: connect from mail-qt1-f176.google.com[209.85.160.176]

وفي نهاية سجل mail-receiver يظهر:

Operating environment:
HOSTNAME=ubuntu-2gb-ash-1-mail-receiver
LANGUAGE=en_US.UTF-8
MAIL_DOMAIN=thetarotclub.xyz
DOCKER_HOST_IP=172.17.0.1
PWD=/
DISCOURSE_BASE_URL=thetarotclub.xyz
HOME=/root
LANG=en_US.UTF-8
TERM=xterm
SHLVL=1
DISCOURSE_API_USERNAME=system
LC_ALL=en_US.UTF-8
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
DISCOURSE_API_KEY=
_=/usr/bin/env
Delivering mail sent to thetarotclub.xyz to Discourse
postfix/postfix-script: warning: symlink leaves directory: /etc/postfix/./makedefs.out
Jun 03 21:34:36 ubuntu-2gb-ash-1-mail-receiver postfix/postfix-script[85]: warning: symlink leaves directory: /etc/postfix/./makedefs.out
Starting Postfix
Jun 03 21:34:36 ubuntu-2gb-ash-1-mail-receiver postfix/master[1]: daemon started -- version 3.5.6, configuration /etc/postfix

مفتاح Discourse API ليس هو ما قمت بإعداده في /var/discourse/containers/mail-receiver.yml.

هذا هو ملف mail-receiver.yml الخاص بي:

## this is the incoming mail receiver container template
##
## After making changes to this file, you MUST rebuild
## /var/discourse/launcher rebuild mail-receiver
##
## BE *VERY* CAREFUL WHEN EDITING!
## YAML FILES ARE SUPER SUPER SENSITIVE TO MISTAKES IN WHITESPACE OR ALIGNMENT!
## visit http://www.yamllint.com/ to validate this file as needed


base_image: discourse/mail-receiver:release
update_pups: false

expose:
  - "25:25"   # SMTP

env:
  LC_ALL: en_US.UTF-8
  LANG: en_US.UTF-8
  LANGUAGE: en_US.UTF-8

  ## Where e-mail to your forum should be sent.  In general, it's perfectly fine
  ## to use the same domain as the forum itself here.
  MAIL_DOMAIN: thetarotclub.xyz
# uncomment these (and the volume below!) to support TLS
#  POSTCONF_smtpd_tls_key_file:  /letsencrypt/discourse.example.com/discourse.example.com.key
#  POSTCONF_smtpd_tls_cert_file:  /letsencrypt/discourse.example.com/fullchain.cer
#  POSTCONF_smtpd_tls_security_level: may


  ## The base URL for this Discourse instance.
  ## This will be whatever your Discourse site URL is. For example,
  ## https://discourse.example.com. If you're running a subfolder setup,
  ## be sure to account for that (ie https://example.com/forum).
  DISCOURSE_BASE_URL: 'https://thetarotclub.xyz'

  ## The master API key of your Discourse forum.  You can get this from
  ## the "API" tab of your admin panel.
 DISCOURSE_API_KEY:
  ## The username to use for processing incoming e-mail.  Unless you have
  ## renamed the `system` user, you should leave this as-is.
  DISCOURSE_API_USERNAME: system

volumes:
  - volume:
      host: /var/discourse/shared/mail-receiver/postfix-spool
      guest: /var/spool/postfix
# uncomment to support TLS
#  - volume:
#      host: /var/discourse/shared/standalone/letsencrypt
#      guest: /letsencrypt

هذا هو الخطأ الذي أتلقاه في رسائل البريد الإلكتروني المرفوضة:

450 4.7.1 : Recipient address rejected: Internal error, API request preparation failed

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

5 إعجابات

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

شكرًا لك.

إعجابَين (2)

عظيم! وهل قمت بإنشاء مفاتيح جديدة منذ أن قمت بتضمين بعضها في منشورك الأول؟

عظيم! أردت فقط التأكد بشكل إضافي.

3 إعجابات

نعم. تم إلغاء المفاتيح القديمة وإنشاء مفاتيح جديدة.

3 إعجابات