Raspberry Pi отправка e-mail с Python скрипта

В тех случаях, когда Raspberry Pi используется для мониторинга чего либо (движение, безопасность, температура и т.д.), очень полезна функция оповещения, при наступлении определенного события. Например, если показания датчика температуры превысили допустимую, предварительно установленную границу для температуры, Raspberry Pi может сообщить нам об этом через e-mail.

RaspberryPI_Email

Шаг 1

Выполним команду
apt-get update
Raspberry Pi при этом должна иметь доступ к интернету.

Шаг 2
Установим необходимое программное обеспечение:

sudo apt-get install ssmtp
sudo apt-get install mailutils
sudo apt-get install mpack

Шаг 3

Осуществим настройку установленного SMTP-сервера:
nano /etc/ssmtp/ssmtp.conf
И правим строки:
AuthUser=ваш_аккаунт@gmail.com
AuthPass=ваш_пароль
FromLineOverride=YES
mailhub=smtp.gmail.com:587
UseSTARTTLS=YES

При этом Вам необходимо иметь gmail аккаунт!

Шаг 4

Теперь мы можем отправлять e-mail из командной строки. Делается это так:
echo "текст сообщения" | mail -s "Тема" имя_пользователя@домен.xxx
Таким образом сообщение с темой “Тема” и содержимым “текст сообщения” будет отправлено по адресу имя_пользователя@домен.xxx
Но нас больше интересует автоматическое оповещение по почте с Python-скрипта.



Шаг 5

Создадим bash-скрипт с командой, которая отправляет сообщения. Создадим файл email.sh
nano email.sh
И в нем наберем:
#!/bin/bash
echo "текст сообщения" | mail -s "Тема" имя_пользователя@домен.xxx

Сохраним файл (CTRL O + Enter) и закроем его (CTRL X). Теперь сделаем наш файл исполняемым:
chmod +x email.sh
Теперь сообщение должно посылаться запуском нашего файла:
./email.sh

Шаг 6

Скопируем файл в папку bin:
sudo cp email.sh/usr/local/bin/

Шаг 7

Теперь импортировав в Python-скрипт соответствующую библиотеку
import os
Просто используем команду
os.system('email')
в той части программы, где нам необходимо отправить e-mail. Вот и все 🙂

Оставить ответ

Обязательные поля помечены*

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.