لديّ إعداد webhook لتحليل رسائل البريد الإلكتروني الواردة ، وهو يعمل بشكل جيد ، لكني أستخدم واجهة برمجة تطبيقات البريد للرد على مرسل هذا البريد الإلكتروني. يمكنني إرسال البريد الإلكتروني على ما يرام ، لكنني أريد الرد على البريد الإلكتروني للمرسلين وإنشاء سلسلة رسائل بريد إلكتروني. لم أتمكن من العثور على أي شيء حول هذا الموضوع في مستندات Sendgrid بخلاف القدرة على إضافة رؤوس مخصصة.
بعد النظر في كيفية عمل رسائل البريد الإلكتروني بشكل عام ، تعرفت على حقل In-Reply-To وحقل المراجع. لقد نجحت في سحب معرف الرسالة من البريد الإلكتروني للمرسل وقمت بتعيين حقل In-Reply-To عليه في عنوان رسائلي. علاوة على ذلك ، أقوم بإلحاق مُعرّف الرسالة بسلسلة المراجع وأرسلها أيضًا.
عندما أنظر إلى البريد الإلكتروني الأولي في Gmail ، أستطيع أن أرى أن كلا الحقلين قد تم تعيينهما ، لكنه لا يزال يرسل كبريد إلكتروني جديد بدلاً من الرد على الأصل.
هذا هو الرمز الخاص بي بشكل أساسي ، ولا يمكنني عرض كل شيء ، ولكن إذا احتاج أي شيء إلى التوضيح ، فسأكون أكثر من راغب في القيام بذلك.
const msg = {
to: from,
headers: {
References: `${references} ${messageId}`,
'In-Reply-To': messageId
},
from: '[email protected]',
subject: 'subject',
text: 'reply',
};
sgMail.send(msg)
بقدر ما يذهب الحقل References
، فأنا آخذ references
من البريد الإلكتروني للمرسل ثم ألحق به مُعرّف الرسالة. لدي شعور بأنني قد لا أفعل هذا بشكل صحيح لكنني لست متأكدًا تمامًا.
شكرا للمساعدة!
تحياتي الحارة،
كريس
من أجل الرد ، يجب أن يكون لديك موضوع البريد الإلكتروني للمرسل في موضوع بريدك الإلكتروني.
const msg = {
to: from,
headers: {
References: `${references} ${messageId}`,
'In-Reply-To': messageId
},
from: '[email protected]',
subject: `Re: ${subject}`, // where subject is the sender's subject.
text: 'reply'
};
شكرا لتقديم الحلChrischuck!
ما هو هذا المتغير المفترض أن يكون؟
$ {مراجع}
يقول منشور SO هذا أنه من المفترض أن يكون معرف الرسالة .. هل هذا ما تستخدمه؟
التعليق الأكثر فائدة
من أجل الرد ، يجب أن يكون لديك موضوع البريد الإلكتروني للمرسل في موضوع بريدك الإلكتروني.