LINUX.ORG.RU

Голосовое оповещение о поче (скрипт)


0

1

Есть такой скрипт, проверяет новые сообщения на Яндексе и голосом оповещает о новых, работает с cron. Вопросов два: Этично ли дергать через cron, например, раз в 10 минут Яндекс? Второй вопрос, есть ли в скрипте ошибки, недоработки? Или в принципе такой скрипт права на существование не имеет?

#!/bin/bash
var_file=/var/tmp_file
/usr/bin/curl -D headers_and_cookies -d 'MainLogin&from=passport&idkey=31c1365723231ce2p2ZkbO&display=page&login=user@yandex.ru&passwd=ПАРОЛЬ' -L  https://passport.yandex.ru/passport?mode=auth;

notify () {
 if [ $maill -eq 1 ]; then
  echo "You have $maill incoming message in Yandex inbox" | festival --tts
   echo "$maill" > $var_file
fi
  
 if [ $maill -gt 1 ]; then
  echo "You have $maill incoming messages in Yandex inbox" | festival --tts
   echo "$maill" > $var_file
fi
}


test_mail() {

 if [ "$maill" -ge "1" -a "$maill" -gt "$cattt" ]; then
 notify
fi
  
 if [ "$maill" -lt "$cattt" ]; then
  echo "0" > $var_file
   notify
fi
}


init_test () {
 if [ ! -e $var_file ]; then
  touch $var_file
   echo "0" > $var_file
fi
 maill=$(/usr/bin/curl  -b headers_and_cookies -L http://www.yandex.ru/m | /bin/grep -wo \"Почта\".\/\>\<strong.class=\"num\"\>[0-9]* | grep -o [0-9]*) 2>/dev/null
 cattt=$(cat $var_file)
 if [ -z $maill ]; then
  echo "0" > $var_file
   exit
else
  test_mail
fi
}
init_test 

Ну и велосипед. А не проще почтовый клиент наконец поставить и перестать пялиться на рекламу в вебморде?

ziemin ★★
()
Ответ на: комментарий от ziemin

Интересно было заморочится, если честно. А есть какой-нибудь gui клиент с голосовым оповещением? Так как писать скрипт под консольный уже не хочется :)

AnonymUser
() автор топика
Ответ на: комментарий от AnonymUser

Да во всех наверно уже есть. У меня icedove - так там плагинов несколько (можно свой звук на каждую папку поставить).

ziemin ★★
()
Ответ на: комментарий от ziemin

Поставил пока Sylpheed, есть в настройках «Выполнять команду при получении сообщений», но стандартный синтаксис bash не отрабатывает, в справке объяснений пока не нашел.

AnonymUser
() автор топика
Ответ на: комментарий от AnonymUser

Попробуй написать скрипт, сделать исполняемым и указать путь к нему.

А что, просто так звук поставить нельзя?

ziemin ★★
()
Ответ на: комментарий от ziemin

Работает, просто у меня retrieve 1800 сообщений :), После ретрива сообщил, но только через скрипт, только команду не принял, видимо, нужно еще терминал вызывать. Или /bin/bash прописать...

AnonymUser
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.