Общий способ сделать это чисто с точки зрения проектирования системы.Если вы собираетесь получить адрес электронной почты от одного из ваших пользователей и периодически отправлять им электронные письма, или по мере того, как происходят события и т. Д., То вам следует сначала попросить их «подтвердить свой адрес электронной почты».Обычно это включает создание уникального токена, размещение его в базе данных, связанного с пользователем, а затем отправку электронного письма, содержащего URL-адрес с этим уникальным токеном в нем.Пользователь щелкает ссылку, которая идет к контроллеру в вашем приложении Rails, который сопоставляет токен с пользователем.Если они не могут перейти по этой ссылке, они не могут прочитать ваши электронные письма, поэтому не отправляйте дальнейшие электронные письма на этот адрес.
Если вы получили адреса электронной почты с помощью «других средств», значит, вы потерялиустановить адрес возврата в исходящем электронном письме (здесь будут отправляться сообщения о возвратах), а затем проверить этот почтовый ящик на наличие сообщений об отказах.Я также часто с подозрением отношусь к тому, как люди сталкиваются со списком адресов электронной почты, которые пришли не от пользователей, согласившихся на соглашение с вашим сайтом.
Вы могли бы использовать гем почтыСделайте это, но вам нужно знать, как настроить SMTP-сервер, который направляет электронную почту в ваше приложение Rails, что непросто без предварительного опыта.Вы также можете использовать переменный адрес обратного пути (VERP), например <some unique hash>+bounces@your-domain.com
, где <some unique hash>
ссылается на адрес электронной почты в вашей системе.Это избавляет от необходимости пытаться проанализировать и интерпретировать отклоненное письмо, поскольку адрес, на который оно отправлено, сообщает вам, кто является отклоненным получателем.