Page 3 of 7 FirstFirst 12345 ... LastLast
Results 31 to 45 of 105

Thread: Отправка SMS-оповещений при помощи Google

  1. #31

    Post Отправка СМС сообщений киевстару(Украина) с помощью «Мобильной почты» (kyivstar.mobi)

    Т.к. у меня киевстар , была необходимость отправлять смс уведомления о закаченных торрентах

    Методы что здесь нашел мне не подходили из-за того что мой оператор не поддерживается.
    Единственное что мне подходило это отправка СМС сообщений с помощью google calendar

    но вот тут я наткнулся на сервис нашего оператора "мобильная почта"

    и с помощью него можно отсылать себе сообщения
    преимущество перед гуглом календарем
    - это то что сообщения сразу приходят
    - не нужно делать синхронизацию времени

    вот руководство

    1. Регистрируйтесь на сайте kyivstar.mobi
    Code:
    Для пользования услугой «Мобильная почта» Вам нужно зарегистрироваться на сайте kyivstar.mobi или на ее wap-версии wap.kyivstar.mobi. Для этого на главной странице услуги нужно нажать на ссылку «Регистрация» и ввести следующую информацию:
    
    имя пользователя (которое также будет названием почтового ящика:
    [имя пользователя]@kyivstar.mobi);
    пароль для входа в услугу;
    имя;
    фамилия;
    телефонный номер (на этот номер будут приходить нотификации о новых сообщениях).
    
    Также нужно ввести код регистрации, который поступит на Ваш номер в виде SMS-сообщения, и выбрать язык интерфейса пользователя и тип нотификаций о новых сообщениях. В дальнейшем для того, чтобы зайти в почтовый ящик, Вам нужно будет ввести имя пользователя и пароль на странице входа.
    
    Для услуги необходимо, чтобы Ваш телефон поддерживал wap и sms.
    
    Внимание! Для одного телефонного номера можно создать лишь один почтовый ящик «Мобильной почты».
    2. после регистрации заходите в свой почтовый ящик там выбирайте "настройки" и там "Уведомления".
    там выставляйте тип уведомления "SMS (остальные телефоны)"
    и выбрать "послать SMS уведомления для каждого нового отдельного письма"

    4. заходите в свой роутер, и устанавливаете сначала питон

    Code:
    ipkg install python
    ipkg install bc
    5. создайте папку /opt/etc/kyivstarSMS

    Code:
    md /opt/etc/kyivstarSMS
    6. качайте скрипт kyivstarSMS.py из вложения и размещайте его на устройстве в папку /opt/etc/kyivstarSMS

    Code:
    #!/opt/bin/python
    #
    # Copyright (C) 2010 vassio@ukr.net.
    #
    text=""
    receiver='[name]@kyivstar.mobi'
    russian = 'utf-8'
    smtp_server ='kyivstar.mobi'
    textsend=''
    
    import sys, os,getopt,smtplib,locale,email
    from ConfigParser import ConfigParser
    from ConfigParser import DuplicateSectionError
    from smtplib import SMTPException
    from email.header import Header
    from email.mime.multipart import MIMEMultipart
    from email.mime.text import MIMEText
    from smtplib import SMTP
    
    try:
     opts, args = getopt.getopt(sys.argv[1:], "", ["sender=", "receivers=", "text=","from=","smtp=","config="])
    except getopt.error, msg:
      print (''' kyivstarSMS [option]
      Options:
      --sender [sender]          email sender
    
      --receivers [receiver]     the mailing address of the receiver 
                                 Necessarily should be  name@kyivstar.mobi
    
      --text [text]              sent the text (mail Subject)
      --from [text]              from mail(any text)
      --smtp [smtp server]       smtp server
      --config [configFile]      config file to read
    ''') 
    
    
    configFile = '/opt/etc/kyivstarSMS/kyivstarSMS.config'
    for opt, arg in opts:
     if (opt == "--config"): configFile = arg
     
    config = ConfigParser()
    config.read(os.path.expanduser(configFile))
    
    for opt, arg in opts:
     if (opt == "--sender"):
       sender = arg
     else:
       try:
         sender = config.get('sendsms', 'sender')
       except:
         sender = '[name]@gmail.com'
    
    for opt, arg in opts:
     if (opt == "--smtp"):
       smtp_server = arg
     else:
       try:
         smtp_server = config.get('sendsms', 'smtp')
       except:
         smtp_server = 'kyivstar.mobi'
    
    for opt, arg in opts:
     if (opt == "--receivers"):
       receiver = arg
     else:
       try:
         receiver = config.get('sendsms', 'receivers')
       except:
         receiver = '[name]@kyivstar.mobi'
    receivers=[receiver]
    for opt, arg in opts:
     if (opt == "--from"):
       sender = arg
     else:
       try:
         from_ = config.get('sendsms', 'from')
       except:
         from_ = 'My Router'
    
    for opt, arg in opts:
     if (opt == "--text"):
       text = Header(arg, russian)
       textsend=arg
    if (text==""):
      print (''' kyivstarSMS [option]
      Options:
      --sender [sender]          email sender
    
      --receivers [receiver]     the mailing address of the receiver 
                                 Necessarily should be  name@kyivstar.mobi
    
      --text [text]              sent the text (mail Subject)
      --from [text]              from mail(any text)
      --smtp [smtp server]       smtp server
      --config [configFile]      config file to read
    ''') 
      sys.exit(2)
    
    msg = MIMEMultipart()
    msg["Subject"] =text
    msg["From"] = Header(from_, russian)
    msg["To"] = Header('Master', russian)
    m = "Router Sent (read subject)"
    mm = MIMEText(m.encode('cp1251'), 'plain', russian)
    msg.attach(mm)
    try:
     fromaddr = sender
     toaddr = receiver
     connect = SMTP(smtp_server)
    # connect.set_debuglevel(1)
     connect.sendmail(fromaddr, toaddr, msg.as_string())
     connect.quit()
    except SMTPException,e:
     print "kyivstarSMS: unable to send email:",e
     sys.exit(3)
    print "kyivstarSMS:Successfully sent SMS: %s"%(textsend)
    даем права на запуск
    Code:
    chmod 777 /opt/etc/kyivstarSMS/kyivstarSMS.py
    7. создайте конфигурационный файл /opt/etc/kyivstarSMS/kyivstarSMS.config
    пример содержимого файла
    Code:
    [sendsms]
    smtp: kyivstar.mobi
    sender: [name]@kyivstar.mobi
    receivers: [name]@kyivstar.mobi
    from: My Router
    smtp SMTP сервер через который идет отправка почты
    sender почтовый адрес отправителя(как правило должен быть зарегистрирован на SMTP сервер)
    receivers получатель должен быть обязательно [name]@kyivstar.mobi
    from от кого отправлено сообщение(любой текст) будет в SMS

    8. качайте скрипт sendsms из вложения и размещайте его на устройстве в папку /opt/etc/kyivstarSMS

    Code:
    #!/bin/sh
    PINGRESOURCE=google.com
    message=""
    
    case $# in 0)
     echo " sendsms [-inet] [-?] [сообщ]"
     echo " "
     echo "  -inet 	позволяет перед отправкой проверить "
     echo "		доступ к интернету(google.com), "
     echo "		пока интернет не появится сообщение не отправится"
     echo " "
     echo "  -? 		эта справка"
    
    exit 3;
    ;;
    esac
    
    for p in $*;
     do
      case "$p" in -?)
       echo " sendsms [-inet] [-?] [-sync]  [Сообщение]"
       echo " "
       echo "  -inet 	позволяет перед отправкой проверить "
       echo "		доступ к интернету(google.com), "
       echo "		пока интернет не появится сообщение не отправится"
       echo " "
       echo "  -? 		эта справка"
       echo "  сообщ 	сообщение которое будет отправлено"
       exit 0
      ;;
       -inet)
       while (! ping -c 3 -w 3 -W 2 ${PINGRESOURCE} >/dev/null  2>&1) do
       echo "kyivstarSMS: Сообщение не отправлено, подключение к интернету не обнаружено!!! "
       logger "kyivstarSMS: Сообщение не отправлено, подключение к интернету не обнаружено!!! "
       sleep 10s
       done
      ;;
      
    
      *)
      message="$message $p"
      ;;
      esac
     done
    log=`/opt/etc/kyivstarSMS/kyivstarSMS.py --text "$message"`
    logger $log
    exit 0
    даем права на запуск
    Code:
    chmod 777 /opt/etc/kyivstarSMS/sendsms
    8. сохраняйте изменения
    Code:
    flashfs save&&flashfs commit
    9. собственно сама отправка СМС

    Code:
    sendsms [text]
    отправка sms с проверкой доступности интернет(пинг google.com)

    Code:
    sendsms -inet [text]
    отправка sms с синхронизацией времени

    Code:
    sendsms -sync [text]
    пример
    Code:
    /opt/etc/kyivstarSMS/sendsms hello world

    Дополнительно

    1. Что бы при включении роутера отправлялось СМС с текущим IP адреса сервера, в файле /usr/local/sbin/post-mount добавить строчки

    Code:
    logger "sendsms:Отправляем информацию об успешной загрузке"
    sleep 5s                  
    ipaddr=`nvram get wan0_ipaddr`
    smslog=`/opt/etc/kyivstarSMS/sendsms -inet "Your router $ipaddr is loaded"`
    logger $smslog
    2. Уведомление о закачке торрента в rtorrent
    в /opt/etc/rtorrent.conf дописать

    Code:
    on_finished=send_finish_sms,"execute = /opt/etc/kyivstarSMS/sendsms,Торрент,$d.get_name=,успешно,скачан"

    PS: Надеюсь что кому то пригодится))
    так же надеюсь этот сервис не закроют
    Attached Files Attached Files

  2. #32

    Smile calendarSMS для Nagios

    Добрый день!

    у нас стоит мониторинг под Nagios, хотелось бы реализовать с помощью calendarSMS оповещение по SMS.

    В конфигах имеются такие переменные:
    '$NOTIFICATIONTYPE$ $HOSTALIAS$/$SERVICEDESC$: $SERVICEOUTPUT$'

    Как переадать в гугл с помощью .../calendarSMS/sendsms?

    Буду очень признателен....

  3. #33
    Quote Originally Posted by PDemonv View Post
    Добрый день!

    у нас стоит мониторинг под Nagios, хотелось бы реализовать с помощью calendarSMS оповещение по SMS.

    В конфигах имеются такие переменные:
    '$NOTIFICATIONTYPE$ $HOSTALIAS$/$SERVICEDESC$: $SERVICEOUTPUT$'

    Как переадать в гугл с помощью .../calendarSMS/sendsms?

    Буду очень признателен....
    Вопрос снимаю разобрался! Напоминнания приходят.
    Большое спасибо автору статьи...

  4. #34
    Quote Originally Posted by PDemonv View Post
    Большое спасибо автору статьи...
    не только автору но и vassio написавшему скрипты
    Last edited by gaur; 03-12-2010 at 09:37.

  5. #35
    Сообщения об успешной загрузке роутера приходят, а вот об окончании закачки в rtorrent - нет.
    При этом в логах роутера:
    PHP Code:
    21:38:18 05-12-2010 (notice|user|p2pp2pcalendarSMSстартуем отправку SMS
    21
    :38:18 05-12-2010 (notice|user|p2pp2pcalendarSMS
    и в календаре ничего не добавляется... где копать?!

  6. #36
    Quote Originally Posted by Kuban View Post
    Сообщения об успешной загрузке роутера приходят, а вот об окончании закачки в rtorrent - нет.
    При этом в логах роутера:
    PHP Code:
    21:38:18 05-12-2010 (notice|user|p2pp2pcalendarSMSстартуем отправку SMS
    21
    :38:18 05-12-2010 (notice|user|p2pp2pcalendarSMS
    и в календаре ничего не добавляется... где копать?!
    попробуй дописать
    Code:
    on_finished=send_finish_sms,"execute = /opt/etc/calendarSMS/sendsms,$d.get_name=,loading"
    в конце файла /opt/etc/rtorrent.conf
    и сохранить настройки
    Code:
    flashfs save && flashfs commit && flashfs enable && reboot

  7. #37
    У меня уже был вставлен:
    PHP Code:
    on_finished=send_finish_sms,"execute = /opt/etc/calendarSMS/sendsms,Торрент,$d.get_name=,успешно,скачан" 
    но на всякий случай вставил твой код, сохранился, перегрузился - результат тот же... я в непонятках...

  8. #38
    Quote Originally Posted by Kuban View Post
    У меня уже был вставлен:
    PHP Code:
    on_finished=send_finish_sms,"execute = /opt/etc/calendarSMS/sendsms,Торрент,$d.get_name=,успешно,скачан" 
    но на всякий случай вставил твой код, сохранился, перегрузился - результат тот же... я в непонятках...
    а путь к файлу sendsms правильный !?
    скорее всего что то с rtorrent

  9. #39
    путь к sendsms правильный:
    /opt/etc/calendarSMS и в нём находится три файла:
    calendarSMS.config
    calendarSMS.py
    sendsms


    ещё вопрос:
    в файле calendarSMS.py в начале идёт:
    PHP Code:
    __author__ 'vassio'
    __username__ '<username>@gmail.com'
    __password__ '<password>' 
    эти строки необходимо менять на свои данные или нет?! в инструкции про это ничего не сказано...

    rtorrent у меня работает нормально, sms о загрузке роутера приходит нормально, а об окончании закачки - не приходит, затык на уровне не отправки в google...

  10. #40
    Путём последовательного анализа вычислил, что
    1) rtorrent.config надо вставлять именно такого вида строку, т.к. с кириллицей - ошибки выдаёт
    on_finished=send_finish_sms,"execute = /opt/etc/calendarSMS/sendsms,$d.get_name=,loading"
    2) у файла calendarSMS.py права доступа обязательно должны быть 755, с 644 - sms об удачной закачке не приходят!
    Last edited by Kuban; 05-12-2010 at 15:46.

  11. #41
    Quote Originally Posted by Kuban View Post
    путь к sendsms правильный:
    /opt/etc/calendarSMS и в нём находится три файла:
    calendarSMS.config
    calendarSMS.py
    sendsms


    ещё вопрос:
    в файле calendarSMS.py в начале идёт:
    PHP Code:
    __author__ 'vassio'
    __username__ '<username>@gmail.com'
    __password__ '<password>' 
    эти строки необходимо менять на свои данные или нет?! в инструкции про это ничего не сказано...

    rtorrent у меня работает нормально, sms о загрузке роутера приходит нормально, а об окончании закачки - не приходит, затык на уровне не отправки в google...
    менять строчки не нужно, __author__ не используется нигде
    __username__ и __password__ перезаписываются значениями либо из файла конфигурации либо из командной строки

    rtorrent отправляет и работает под именем p2p(что впрочем видно по логам )

    Code:
    21:38:18 05-12-2010 (notice|user|p2p) p2p: calendarSMS:
    если пусто то значит в logger ничего не передалось...

    зайди под пользователем p2p выполнив команду:
    Code:
    su p2p
    и попробуй выполнить скрипт sendsms

    ps: скорей всего не достаточно прав на запуск

  12. #42
    выдало вот такую ошибку и сообщение не пришло само событие создалось а вот напоминание нет
    Code:
    21:37:52 06-12-2010 (notice|user|p2p) p2p: [truncated] calendarSMS: New single event inserted: http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534 \011Event edit URL: http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534/63427343866 \011Event HTML URL: http://www.google.com/calendar/event?eid=Z2w0dnZjczZmMGFrM3VjZWxwcWtxOGU1MzQgNjgyMzYxMEBt Adding 1 minute reminder to event (\'Error reminder:\', RequestError({\'status\': 302, \'body\': \'<HTML>\\n<HEAD>\\n<TITLE>Moved Temporarily</TITLE>\\n</HEAD>\\n<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\">\\n<H1>Moved Temporarily</H1>\\nThe document has moved <A HREF=\"http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534/63427343866?gsessionid=4NtAsStF-fJmjCjU3SrLxg\">here</A>.\\n</BODY>\\n</HTML>\\n\', \'reason\': \'Redirect received, but redirects_remaining <= 0\'},)) (\'error sendsms \', RequestError({\'status\': 302, \'body\': \'<HTML>\\n<HEAD>\\n<TITLE>Moved Temporarily</TITLE>\\n</HEAD>\\n<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\">\\n<H

  13. #43
    Quote Originally Posted by gaur View Post
    выдало вот такую ошибку и сообщение не пришло само событие создалось а вот напоминание нет
    Code:
    21:37:52 06-12-2010 (notice|user|p2p) p2p: [truncated] calendarSMS: New single event inserted: http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534 \011Event edit URL: http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534/63427343866 \011Event HTML URL: http://www.google.com/calendar/event?eid=Z2w0dnZjczZmMGFrM3VjZWxwcWtxOGU1MzQgNjgyMzYxMEBt Adding 1 minute reminder to event (\'Error reminder:\', RequestError({\'status\': 302, \'body\': \'<HTML>\\n<HEAD>\\n<TITLE>Moved Temporarily</TITLE>\\n</HEAD>\\n<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\">\\n<H1>Moved Temporarily</H1>\\nThe document has moved <A HREF=\"http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534/63427343866?gsessionid=4NtAsStF-fJmjCjU3SrLxg\">here</A>.\\n</BODY>\\n</HTML>\\n\', \'reason\': \'Redirect received, but redirects_remaining <= 0\'},)) (\'error sendsms \', RequestError({\'status\': 302, \'body\': \'<HTML>\\n<HEAD>\\n<TITLE>Moved Temporarily</TITLE>\\n</HEAD>\\n<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\">\\n<H
    похоже что у тебя не последняя версия... Бывает что с первого раза напоминание не устанавливается, с ошибкой
    Code:
    Redirect received, but redirects_remaining <= 0
    ... обнови calendarSMS
    там если с первого раза не устанавливается то событие удаляется и заново формируется

  14. #44
    Quote Originally Posted by vassio View Post
    похоже что у тебя не последняя версия... Бывает что с первого раза напоминание не устанавливается, с ошибкой
    Code:
    Redirect received, but redirects_remaining <= 0
    ... обнови calendarSMS
    там если с первого раза не устанавливается то событие удаляется и заново формируется
    стоит последняя версия вот лог
    Code:
    19:51:36 06-12-2010 (emerg|user|client) client: Synchronizing time with pool.ntp.org ...
    21:06:14 06-12-2010 (notice|user|p2p) p2p: calendarSMS: стартуем отправку SMS
    21:06:27 06-12-2010 (notice|user|p2p) p2p: calendarSMS: New single event inserted: http://www.google.com/calendar/feeds/default/private/full/flc7nhbaaae8fj76tam009365k \011Event edit URL: http://www.google.com/calendar/feeds/default/private/full/flc7nhbaaae8fj76tam009365k/63427341983 \011Event HTML URL: http://www.google.com/calendar/event?eid=ZmxjN25oYmFhYWU4Zmo3NnRhbTAwOTM2NWsgNjgyMzYxMEBt Adding 1 minute reminder to event
    21:37:37 06-12-2010 (notice|user|p2p) p2p: calendarSMS: стартуем отправку SMS
    21:37:52 06-12-2010 (notice|user|p2p) p2p: [truncated] calendarSMS: New single event inserted: http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534 \011Event edit URL: http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534/63427343866 \011Event HTML URL: http://www.google.com/calendar/event?eid=Z2w0dnZjczZmMGFrM3VjZWxwcWtxOGU1MzQgNjgyMzYxMEBt Adding 1 minute reminder to event (\'Error reminder:\', RequestError({\'status\': 302, \'body\': \'<HTML>\\n<HEAD>\\n<TITLE>Moved Temporarily</TITLE>\\n</HEAD>\\n<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\">\\n<H1>Moved Temporarily</H1>\\nThe document has moved <A HREF=\"http://www.google.com/calendar/feeds/default/private/full/gl4vvcs6f0ak3ucelpqkq8e534/63427343866?gsessionid=4NtAsStF-fJmjCjU3SrLxg\">here</A>.\\n</BODY>\\n</HTML>\\n\', \'reason\': \'Redirect received, but redirects_remaining <= 0\'},)) (\'error sendsms \', RequestError({\'status\': 302, \'body\': \'<HTML>\\n<HEAD>\\n<TITLE>Moved Temporarily</TITLE>\\n</HEAD>\\n<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\">\\n<H
    21:51:37 06-12-2010 (emerg|user|client) client: Synchronizing time with pool.ntp.org ...
    23:05:43 06-12-2010 (info|daemon|dnsmasq-dhcp) dnsmasq-dhcp[75]: DHCPINFORM(br0) 192.168.1.252 00:15:af:16:e4:1f 
    23:05:43 06-12-2010 (info|daemon|dnsmasq-dhcp) dnsmasq-dhcp[75]: DHCPACK(br0) 192.168.1.252 00:15:af:16:e4:1f asus-PC
    есть вероятность что не сформировалось и за длинного названия фильма

    еще если название написано кириллицей в логе пишет ошибку
    Code:
    03:37:27 07-12-2010 (notice|user|p2p) p2p: calendarSMS: стартуем отправку SMS
    03:37:35 07-12-2010 (notice|user|p2p) p2p: calendarSMS: (\'error sendsms \', UnicodeDecodeError(\'ascii\', \' \\xd0\\x97\\xd0\\xbb\\xd0\\xb8\\xd0\\xb4\\xd0\\xbdi.avi loading\', 1, 2, \'ordinal not in range(128)\'))
    Last edited by gaur; 07-12-2010 at 00:56.

  15. #45

    Exclamation

    Обновил скрипт отправки смс через google calendar

    Обновление(10.12.2010) Версия 2.2:
    - Исправил: отправка sms кириллицей
    - Добавил: если добавить напоминание не удалось, то перед добавлением нового идет ожидание в течении 2 сек.
    -Добавил: попыток пересоздания события в случае ошибки увеличено до 10

    качать тут

Page 3 of 7 FirstFirst 12345 ... LastLast

Similar Threads

  1. Подключаем USB HDD к роутеру
    By Hornet in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 3172
    Last Post: 31-08-2011, 12:03
  2. IDE Platte mit SATA Festplaten-Konvert anschliessen
    By spankingherr in forum German Discussion - Deutsch (DE)
    Replies: 0
    Last Post: 24-04-2009, 17:11
  3. Тормоза при подключении винта
    By Diz74 in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 14
    Last Post: 15-08-2008, 09:07

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •