В это статье рассказывается, как сделать индикатор новых сообщений в Gmail для Raspberry Pi. Для этого понадобится программа на языке Python длиной всего в 10 строк! Если в подключенной учетной записи Gmail имеются новые сообщения, то светодиод загорается, если непрочитанных сообщений нет, он гаснет. Проект основан на основе аналогичного для Arduino и Mac OS X.
Замечание: для свежих версий Raspbian (после 15.07.2012) также потребуется пакет с заголовочными файлами python2.7-dev.
Наберите в консоли терминала:
sudo apt-get install python-pip python2.7-devТеперь, для того, чтобы pip правильно заработал, нужно обновить пакет distribute с помощью программы easy_install:
sudo easy_install -U distributeТеперь, с помощью pip установим модули feedparser и GPIO:
sudo pip install feedparser RPi.GPIOНаконец, все приготовления выполнены. Cкопируйте текст скрипта в файл raspi_gmail.py на Raspberry Pi:
import RPi.GPIO as GPIO, feedparser USERNAME="username@gmail.com" PASSWORD="password" GPIO_PIN=12 GPIO.setmode(GPIO.BOARD) GPIO.setup(GPIO_PIN, GPIO.OUT) newmails = int(feedparser.parse("https://" + USERNAME + ":" + PASSWORD + "@mail.google.com/gmail/feed/atom")["feed"]["fullcount"]) if newmails > 0: GPIO.output(GPIO_PIN, True) else: GPIO.output(GPIO_PIN, False)Теперь осталось только добавить задачу в cron для запуска каждую минуту. Для этого, откройте для редактирования файл конфигурации командой:
sudo crontab -eДобавьте эту строку в конце файла (проверьте путь к скрипту):
* * * * * python /home/pi/raspi_gmail.pyВсе готово! С этого момента cron будет запускать наш скрипт каждую минуту. Если в Gmail есть непрочитанные сообщения, то 12-й вывод GPIO будет в состоянии логической единицы и светодиод будет гореть, в противном случае, на выводе будет логический ноль и светодиод не будет гореть.
Статья взята тут
Комментариев нет:
Отправить комментарий