Отправка бесплатного sms сообщения в Linux

/www/pages/modesco/ubuntovod

В Google Calendar есть очень интересная функция — уведомления. Благодаря ей можно получать бесплатные смс на телефон о событиях в календаре. Поддерживается очень много стран и операторов сотовой связи:

Россия

  • Билайн
  • МегаФон
  • МТС
  • Скай Линк

Беларусь

  • JLLC Mobile TeleSystems
  • VELCOM

Полный список стран здесь (у меня например смс также приходили к операторам которых нет в списке).

Умельцы с форума wl500g.info написали парочку скриптов которые шлют любые смс через Google Calendar. Задержка составляет всего 1 минуту, а ограничение 20 смс в сутки пока обойти не удалось.

Для начала нужно зарегистрироваться в gmail.

В настройках Google Календаря, в пункте "настройка для мобильных устройств", ввести и активировать свой мобильный телефон. Номер телефона можно ввести только один, но впоследствии его можно будет сменить.

Дальше устанавливаем python и bc:

sudo apt-get install python
sudo apt-get install bc

Качаем gdata-python-client питон клиент для календаря, и устанавливаем его:

wget gdata-python-client.googlecode.com/files/gdata-2.0.13.tar.gz
tar xfv gdata-2.0.13.tar.gz
rm gdata-2.0.13.tar.gz
cd gdata-2.0.13
python setup.py install

Создаем папку /opt/etc/calendarSMS и кладем в нее питоновский скрипт, скачанный по ссылке (если папка другая — то нужно поправить пути в файле, я исправил все на /etc/calendarSMS).

В архиве по ссылке выше лежит конфиг файл для скрипта, его кладем рядом и правим.

[sendsms]
user: vassio
pw: *******
starttime: 120
endtime: 180
remindertime: 1
calendar: fafgttkq8ed2idfgfhdfidn6eok@group.calendar.google. com
attempt:11
delay:5
  • user - аккаунт google
  • pw - пароль к аккаунту google
  • starttime - указывает через какое время будет начато мероприятие(в секундах)
  • endtime - указывает через какое время будет закончено мероприятие(в секундах)
  • remindertime - время напоминания(в минутах)
  • calendar - идентификатор календаря (например fafgttkq8ed2idfgfhdfidn6eok@group.calendar.google. com). Можно посмотреть в настройках календаря — подробные сведения конкретного календаря, поле "адрес календаря" и там справа в скобках
  • attempt - максимальное количество попыток установить новое напоминание в календарь
  • delay - время ожидания между попытками

Дальше нужно скачать и положить файл sendsms в туже папку /opt/etc/calendarSMS (если меняли путь то не забудьте поправить его везде).

Для синхронизации времени перед каждой отправкой в примере используется ntpclient. Он используется только в предыдущем пункте. В Ubuntu я исправил его на ntpdate и все заработало.

Не забываем дать права на запуск:

chmod 777 /opt/etc/calendarSMS/sendsms

Вот и все, теперь что бы отправить себе sms набираем:

sendsms [-inet] [-?] [-sync] [сообщ]
  • -inet позволяет перед отправкой проверить доступ к интернету(google.com), пока интернет не появится сообщение не отправится
  • -? эта справка
  • -sync перед отправкой синхронезировать время сообщ сообщение которое будет отправлено

Пример:

/opt/etc/calendarSMS/sendsms -inet -sync Привет Мир!

Область применения огромна:

  • Смс о завершившийся закачке в торрент клиенте
  • Смс о сработке датчика движения в системах видео наблюдения
  • Смс о достижении определенного порога в наблюдаемой величине
  • Смс о сбое канала связи/сервера/программы

И т.д. и т.п.

Единственное ограничение 20 смс в сутки на 1 номер. Но для каждого события можно завести свой гугл аккаунт, совпадения номеров он с разными аккаунтами не сверяет.

Хотите создать себе хорошее настроение? Тогда вам стоит начать слушать клубную музыку онлайн прямо сейчас! Для этого зайдите на сайт club-music-online.ru.

AgentSIB
2012-07-20 02:05:00
Использую littlesms. 30 копеек за смску. Гораздо проще и надежней)
Sk8er
2012-07-22 03:44:00
мда. я не знал, что многие убунтоводы так ограниченно мыслят. расскажите тогда как с помощью littlesms отправить смс по завершению скрипта.
Alexandr Preys
2013-03-14 22:13:00
вопрос: откуда берётся файл calendarSMS.py, ни в дире билд, ни в системных файла найти не удалось, ни с gdata-2.0.17 ни с gdata-2.0.13. (питон 2.6)