Я знаю, что в Интернете есть много статей о отправке писем с кода/C#, и я прочитал их многие, прежде чем публиковать здесь, но я до сих пор не вижу четкой картины о том, как реализовать мои требования:Передача сообщений SMTP SMTP получателю через запись MX
Сценарий:
Моя заявка на mydomain.com получает запрос на передачу какой-то адрес электронной почты (от: [email protected], к: кто-то @ gmail.com. ком/anyother.com).
Мне нужно сделать некоторые манипуляции с содержимым электронной почты.
После того, как я изменил сообщение, мне нужно отправить его напрямую получателю.
Под напрямую получателю Я имею в виду, что я хочу отправить его получателю нашими серверами и не использовать какой-либо сервис/реле SMTP.
Как я понимаю, я могу установить на наши серверы программное обеспечение SMTP и отправить с помощью System.Net.Mail.SmtpClient
на наш сервер, и он будет доставлять его получателям с использованием SMTP Relay или каким-либо другим способом, который кодируется внутри этого программного обеспечения ... но я бы как сделать это без использования программного обеспечения SMTP Server ...
До сих пор я обнаружил, что мне нужно обнаружить запись MX для домена получателей, так что, допустим, я нашел запись MX для gmail.com (gmail-smtp-in.l .google.com), но как отправить сообщение на эту запись MX из моего собственного кода на C#?
System.Net.Mail.SmtpClient
подходит для решения этой задачи?
Где я могу найти примеры того, как это сделать?
Из моего предыдущего опыта с SmtpClient мне нужно предоставить адрес SMTP-сервера (необязательный порт), учетные данные, но в моем случае, конечно, у меня нет учетных данных, и я не уверен, как получить правильный порт (все ли серверы из записей MX имеют порт 25?).
Спасибо!
Почему в мире вы бы хотели изобрести реле SMTP? –
@ DanWilson В основном потому, что я хочу лучше понять эту тему, и после этого я, наконец, решу, что использовать и как ... но у меня есть некоторые дыры в моей голове относительно того, как все работает. –