Мой код отправляет уведомления, но не отправляет электронные письма. Я получаю уведомления в расширении Pushbullet в Google Chrome, но не в почтовом ящике. Ошибки (например, 404, 405 и c.) Не возвращаются.
Я использую Python3.
Это отправленные данные (email
содержит адрес электронной почты, который я передал функции):
data_send = {
"email": email,
"type": "note",
"title": "Title",
"body": "Message"
}
Это запрос:
resp = requests.post('https://api.pushbullet.com/v2/pushes',
data=json.dumps(data_send),
headers={'Authorization': 'Bearer ' +
self.ACCESS_TOKEN,
'Content-Type': 'application/json'})
Это то, что я настроил, поэтому, если есть какие-либо ошибки, он распечатает его на консоли:
if resp.status_code != 200:
raise Exception('Something wrong')
else:
print(resp.text)
Когда я запускаю его, я получаю этот ответ (я xx разгласил любые личные данные и скопировал его вот так, потому что это легче увидеть, чем в формате кода):
{"active": true, "identify": "xxxxxx", "created": xxxxxx, "modified": xxxxxx, "type": "note", "disissed": false, "direction": "self", "sender_iden": "xxxxxx", "sender_email": "xxxxxx", "sender_email_normalized": "xxxxxx", "sender_name ":" xxxxxx "," Receiver_iden ":" xxxxxx "," Receiver_email ":" xxxxxxxx "," Receiver_email_normalized ":" xxxxxx "," title ":" Заголовок "," body ":" Сообщение "}
Плюс, я получаю уведомление в своем расширении Pushbullet в Google Chrome. Но письмо все еще не пришло в мою электронную почту.
В документации API Pushbullet указано, что цель должна быть «электронная почта». Способы, которыми я пытался это реализовать:
data_send = {
"target": "email",
"type": "note",
"title": "Title",
"body": "Message"
}
и
data_send = {
"target": {"email": email},
"type": "note",
"title": "Title",
"body": "Message"
}
и
data_send = {
"type": "note",
"title": "Title",
"body": "Message"
}
data_send["target"] = "email"
Ни один из этих способов не работает.
Я понимаю могут возникнуть проблемы с отправкой писем на другие адреса электронной почты из-за спама, но отправка электронного письма мне должна работать. И если он не отправляет электронное письмо на указанный адрес электронной почты, он должен отправить электронное письмо на адрес электронной почты, связанный с моей учетной записью (тот же адрес электронной почты).
Это просто означает, что много времени? Прошло несколько часов с тех пор, как письмо должно было быть отправлено.
Я просмотрел другие вопросы по SO, и наиболее близкие из них, кажется, этот и этот one .
Оба вопроса действительно не помогают в этом конкретном сценарии, поскольку в них не упоминается об отсутствии ошибок, но о том, что электронное письмо не получено.
Приносим извинения, если это слишком долго, дайте мне знать, если этот вопрос неуместен / противоречит руководящим принципам.
Изменить: я понял, что если электронное письмо было таким же, как и связанное с моей учетной записью, оно могло закончиться отправкой только уведомления, а не электронного письма, поскольку Pushbullet обнаруживает, что у меня есть учетная запись с этим адресом электронной почты. Я попытался изменить адрес электронной почты, отличный от того, который связан с моей учетной записью. Однако это все равно не работает.
Edit2: Когда я пытаюсь отправить электронное письмо на внешний адрес электронной почты, это электронное письмо появляется в списке разговоров, когда я посещаю веб-сайт Pushbullet. Когда я go в настройки> люди, электронное письмо появляется, когда я запускаю свою программу. Электронное письмо все еще не приходит в их почтовый ящик.
TL; DR: мой код просто не регистрирует ошибку, которую я не вижу? Или Pushbullet обычно отправляет электронные письма более нескольких часов?