• Категории
  • Главная
  • Документация
  • Последние
  • Пользователи
  • Зарегистрироваться
  • Войти
Raspberry Pi форум
  • Категории
  • Главная
  • Документация
  • Последние
  • Пользователи
  • Зарегистрироваться
  • Войти

Индикатор новых сообщений в Gmail

Запланировано Прикреплена Закрыта Перенесена
Блоги сообщества Raspberry Pi
1
3
27
Загружаем больше сообщений
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • P
    pi
    отредактировано pi 18 нояб. 2024 г., 06:35

    В этой статье рассказывается, как сделать индикатор новых сообщений в Gmail для Raspberry Pi. Для этого понадобится программа на языке Python длиной всего в 10 строк! Если в подключенной учетной записи Gmail имеются новые сообщения, то светодиод загорается, если непрочитанных сообщений нет, он гаснет.

    Проект основан на основе аналогичного для Arduino и Mac OS X.
    a00ef4c3-bb83-4ab3-aeea-bdc59274d61b-image.png

    Скрипт на Python для упрощения проверки сообщений на Gmail использует модуль feedparser, а также модуль RPi.GPIO для управления выводами шины GPIO. Самый простой способ устанавливать модули Python, это менеджер пакетов Pythonpip. Для установки pip используйте команду apt-get.

    Замечание: для свежих версий 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 будет в состоянии логической единицы и светодиод будет гореть, в противном случае, на выводе будет логический ноль и светодиод не будет гореть.

    Оригинал статьи на английском языке: http://mitchtech.net/raspberry-pi-physical-gmail-notifier/?utm_source=rss&utm_medium=rss&utm_campaign=raspberry-pi-physical-gmail-notifier

    Оригинал статьи на русском языке: http://www.armlinux.ru/индикатор-новых-сообщений-в-gmail/

    Хотелось рассказать об еще одном простом применении Raspberry Pi. Интересно получится ли у вас сделать такой индикатор. Я все делал по инструкции, но почему-то скрипт не работает. Я отредактировал код и теперь этот скрипт просто включает светодиод.

    import RPi.GPIO as GPIO
    GPIO_PIN=12
    GPIO.setmode(GPIO.BOARD)
    GPIO.setup(GPIO_PIN, GPIO.OUT)
    GPIO.output(GPIO_PIN, True)
    

    Надеюсь, что у вас все получится, если вы будете делать подобный индикатор! 😉

    1 ответ Последний ответ Ответить Цитировать 0
    • P
      pi
      отредактировано 20 нояб. 2024 г., 23:05

      Я бы хотел сделать, чтобы выводилось на дисплей 20х4 информация о почте

      1 ответ Последний ответ Ответить Цитировать 0
      • P
        pi
        отредактировано 20 нояб. 2024 г., 23:05

        Да было бы не плохо. На такой дисплейчик можно и тему, от кого письмо и время, когда пришло сообщение. У меня есть 16х2 дисплей только никак не получается подключить...

        1 ответ Последний ответ Ответить Цитировать 0
        • 1 / 1
        1 / 1
        • Первое сообщение
          1/3
          Последнее сообщение