PDA

Bekijk de volledige versie : router2sms



Pages : [1] 2

oleg.maiorov
16-12-2008, 12:46
Thanks Markiz

Питоноводам стоит почитать тему Router2sms python (http://wl500g.info/showthread.php?t=22891)


######## ОПИСАНИЕ ########
Основной функционал:
-отправка смс на любой номер, даже не из списка контактов (он автоматически добавляется в группу "телефонные контакты")
-перебор любого количества e-mail чтобы обойти ограничения по времени отправки
-отправка смс на русском (utf8)
-интерфейс командной строки, при желании могу сделать веб обертку, хотя в этом ничего сложного.

Дополнительно:
-задержка отправки смс по времени (чтобы роутер вас не будил, ночные смс можно скопом перенаправить на утро)


######## УСТАНОВКА########


Инструкция основная:
1. Вам понадобится роутер, с установленным php
2. Разархивируете (можно под windows) прилагающийся архив smssender.zip
3. Создаете на роутере папку /opt/etc/sendsms/
4. Закидываете файлы из архива в эту папку
5. Пишете
chmod +x /opt/etc/sendsms/send.php
chmod +x /opt/etc/sendsms/pro.mrim.proxy.class.php
chmod 666 /opt/etc/sendsms/login.txt
chmod 666 /opt/etc/sendsms/smsqueue
6. Открываете send.php НА ЛИНУКСЕ. РЕДАКТИРОВАТЬ ПОД WINDOWS нельзя. Для редактирования подойдет mc. Редактировать кнопка F4, либо Esc 4
7. Находите вот такое место:

$login[0]="login@mail.ru";
$pass[0]="pass";
8. Исправляете на свой логин и пароль.
9. При желании добавляете

$login[1]="login@mail.ru";
$pass[1]="pass";
И пишете другой логин и пароль, и так хоть до бесконечности. Перебираются по очереди.
10. Пользуетесь:
/opt/etc/sendsms/send.php 7916111111 ваше сообщениеЕстественно заменив номер на нужный вам (можно не только 916) и текст на ваш.
11. Если понравилось говорите спасибо в этой теме и главное здесь (http://tem.dp.ua/forum/showthread.php?p=353)

Пояснение: Если вы ставите скрипт не в /opt/etc/sendsms/ то в файле send.php нужно изменить переменную $base_dir. Не потеряйте последний слэш!



Инструкция дополнительная:
Выполните эти действия если хотите иметь возможность отправлять смски с задержкой
0. Установите (если нужно) cron описание здесь: http://www.macsat.com/cron.php
1. выполните "основную инструкцию"
2. скачайте архив smscron.zip
3. файл sendtime.php положите в /opt/etc/sendsms/
4. файл smscron.php положите в /opt/etc/cron.hourly/
5. Выполните команды:

touch /opt/etc/sendsms/smsqueue
chmod +666 /opt/etc/sendsms/smsqueue
chmod +x /opt/etc/sendsms/sendtime.php
chmod +x /opt/etc/cron.hourly/smscron.php
6. Пользуйтесь:

/opt/etc/smssend/sendtime.php 9 23 79161111111 текст вашего сообщения
Первая цифра "утренний" час. Время когда вы просыпаетесь. Вторая "вечерний" когда засыпаете. Смска прийдет в промежуток между ними. Внимание, если "вечерний" час у вас больше 00 часов, то всеравно указывать нужно

/opt/etc/smssend/sendtime.php 8 02 79161111111 текст вашего сообщения
Первым когда встаете. Вторым когда ложитесь. Если время как-раз в этом промежутке, то смска отправится сразу, если нет, то ляжет в буфер, и отправится потом, по крону.


Пояснение: Если вы ставите скрипт не в /opt/etc/sendsms/ то в файлах sendtime.php и smscron.php нужно изменить переменную $base_dir. Не потеряйте последний слэш!


######## ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ########
Примеры использования.

1. Уведомление о загрузке роутера
в /usr/local/sbin/post-mount (в конец после запуска всех программ) дописать

sleep 15s
/opt/etc/sendsms/send.php 79161111111 Роутер загружен


2. Уведомление о закачке торрента
в /opt/etc/rtorrent.conf дописать

#sms on finish conf
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/send.php,79161111111,Торрент,$d.get_name,закачался"

3. Чтобы торрент, докачавший ночью, вас не разбудил, воспользуйтесь дополниельной инструкцией и вместо пункта два используйте
в /opt/etc/rtorrent.conf дописать

#sms on finish conf
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/sendtime.php,9,23,79161111111,Торрент,$d.get_name, закачался"

4. Инструкцию, как сделать уведомление о закачке торрента на трансмишен написал Сhemist. Она ЗДЕСЬ (http://wl500g.info/showthread.php?p=131252#post131252).

5. Инструкцию, как сделать уведомление о закачке файлов aMule написал также Сhemist. Она ЗДЕСЬ (http://wl500g.info/showthread.php?p=131538#post131538).

######## ПОЯСНЕНИЯ########

P.S. Уважаемый Eugen, после того как прочитал эту ветку и мой лог ошибок внес необходимые исправления в класс и проконсультировал меня. Так что все уже ок, ниодного нотиса. :)

P.P.S По поводу использования php. Путей переписывания send.php на shell я не вижу. smscron.php я изначально писал на shell но уперся в невозможность использовать массивы (по крайней мере я не нашел как, я недавно в linux). Единственный путь, который вижу я ипспользовать дополнительный текстовый файл в качестве временного хранилища. Возможно в ближайшее время попробую этот вариант. sendtime.php вполне можно написать на shell. Писал его последним и написал на php для общности. :)

P.P.P.S Опытным путем установлено, что ИЕ бьет архив при скачке. Используейте оперу, или специальные качалки. Либо рапида.
http://rapidshare.com/files/189931366/smssender_0.1a_.zip
http://rapidshare.com/files/189931739/smscron_0.1a_.zip

Инструкция версии 1.2 от 12.02.09

avikus
16-12-2008, 13:14
Например, если упало соединение. Или кто-то вошел в админку

oleg.maiorov
16-12-2008, 13:17
Ну когда соединение упало инет тоже исчез. Надо тогда какой-нибудь резервный канал поднимать

Еще можно слать sms, если какой-нибудь торрент скачался. Для этого правим (или добавляем) в конфиг rtorrent секцию

on_finished = id,command
Будет время, попробую это реализовать и отписаться

oleg.maiorov
17-12-2008, 07:45
Итак, продолжаем копать новый сервис

Подготовительные действия - создал аккаунт на Mail.RU. Скачал Mail.RU Агент, подсоединился новым аккаунтом. Добавил ему же в контакты созданный аккаунт и указал новому контакту в поле Phone телефон, куда будем слать сообщения. Все это можно делать и через функции нашей библиотеки, но я пока не разбирался как. Номер в контакт нужно занести, т.к. замечено что без него смс-ки не отправляются.

Надеюсь, PHP у всех в коробочке стоит?

Я создал новый каталог /opt/etc/sendsms и положил в него наш класс, который вы сможете найти по ссылке из первого поста или скачать из приаттаченного архива.

Также там же создал новый php-файл (я назвал его sendsms.php) следующего содержания:



#!/opt/bin/php
<?php

include_once("pro.mrim.class.php");

$mra = new mra;
$mra->connect() or die("connection error");
// тут указываете свое мыло на Mail.RU и пароль на него
$mra->login("мыло@mail.ru","пароль") or die("login error");
sleep(1);
$mra->ping();
$mra->set_status("online"); // online, away, invisible
$time = time();
if($mra->is_connected()) {
if(time() >= $time + $mra->ping_time) {
$mra->ping();
$time = time();
}
$packet = $mra->receive_packet();
$mra->is_new_ping($packet);
// тут указываем номер телефона, куда будет уходить смс-ка
$mra->sms("+79031234567", $argv[1]);
}

?>


Если вы ходите в интернет через прокси, правьте строчку
$mra->connect(), там будет что-то вида $mra->connect("хост_прокси", "порт_прокси", "логин_на_прокси", "пароль_на_прокси", "http или socks4 или socks5" )

Делаем файл исполняемым:

chmod +x /opt/etc/sendsms/sendsms.php

Теперь мы можем исполнить команду

/opt/etc/sendsms/sendsms.php "Router is power on"
и сообщение отправится адресату. Не забываем, что максимальная длина сообщения - 160 символов латиницей.

Я, например, пока что повесил ЭТО безоразие в файле /usr/local/sbin/post-mount и теперь при каждом включении/ребуте роутера мне приходит смс-ка. Кстати, это оказалось удобно когда работаешь с коробочкой удаленно. Как бы команда когда уже можно на него ломиться), а также работает как просьба роутера проверить, все ли корректно поднялось после очередного отключения электричества (у меня иногда диск не подмонтируется).

В перспективе - завести пяток аккаунтов, добавлять их в контакты программно, работать через базу SQLite, обновляя информацию об этих аккаунтах, о том какие смс-ки на какие номера уходят... . На данный момент всё)

Cd_spb
17-12-2008, 09:39
[offtop]
"Месье знает толк в извращениях." :-)
Каких только приенений не придумают софту.

oleg.maiorov
17-12-2008, 10:14
Хых) Ну я ж не предлагаю спам-бота создавать :)
Тут некоторые пытаются воткнуть в него веб-камеру. Тоже отличное применение - повесить на MotionDetect что есть движение. Тебе пришла смс и ты стал рвать на себе волосы, вызывать ментов и т.д. и т.п.

egorc
17-12-2008, 12:58
Хых) Ну я ж не предлагаю спам-бота создавать :)
Тут некоторые пытаются воткнуть в него веб-камеру. Тоже отличное применение - повесить на MotionDetect что есть движение. Тебе пришла смс и ты стал рвать на себе волосы, вызывать ментов и т.д. и т.п.

Я вот IP камеру (Level-One WCS-2030) к роутеру подключил. На роутер установил Motion. Теперь роутер у меня транслирует видео-поток через интернет. Вот только MotionDetect на нем не могу настроить. Было бы очень интересно это сделать и привязать к нему отправку на СМС. Давайте попробуем совместными усилиями. :)

oleg.maiorov
17-12-2008, 18:23
Ну с настройкой камеры я к сожалению ничем помочь не смогу. А по поводу смсок - тут на самом деле ничего сложного не будет. В-принципе, хватает того что я уже написал.
Главное понять, что же собственно будет происходить, когда фиксируется движение. Решение в лоб - отслеживать появление новых файлов в каталоге со снимками, при появлении снимка отослать сообщение и повесить какой-нибудь таймаут, в течении которого ничего не слать, а то письмами засыпет. Посмотрим :)

P.S.: Посмотрел, он оказывается еще и e-mail отправляет. Вот похоже сюда и надо копать

egorc
18-12-2008, 04:01
Ну с настройкой камеры я к сожалению ничем помочь не смогу. А по поводу смсок - тут на самом деле ничего сложного не будет. В-принципе, хватает того что я уже написал.
Главное понять, что же собственно будет происходить, когда фиксируется движение. Решение в лоб - отслеживать появление новых файлов в каталоге со снимками, при появлении снимка отослать сообщение и повесить какой-нибудь таймаут, в течении которого ничего не слать, а то письмами засыпет. Посмотрим :)

P.S.: Посмотрел, он оказывается еще и e-mail отправляет. Вот похоже сюда и надо копать

Ну, с самой камерой я разобрался. А вот с Motion не все понятно. Именно сам факт движения отследить не получается. Он у меня сейчас тупо видео-поток гонит на определенный порт и через интернет с помощью VLC плейера я его принимаю. А отправка сообщений через email мне кажется даже более интересна.

gem
28-12-2008, 17:39
P.S.: Посмотрел, он оказывается еще и e-mail отправляет. Вот похоже сюда и надо копать

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

GUID
25-01-2009, 18:14
все работает, классно! СПАСИБО!
единственная проблема - с кириллицей в тексте sms. не подскажете в какую сторону копать?

featZima
26-01-2009, 03:16
Настоящим админам кирилица не нужна XD

agam18rus
26-01-2009, 10:44
PHP Notice: Undefined offset: 0 in /tmp/mnt/disc0_3/sms/pro.mrim.class.php on line 213
PHP Notice: Undefined offset: 12 in /tmp/mnt/disc0_3/sms/pro.mrim.class.php on line 449
PHP Notice: Undefined offset: 0 in /tmp/mnt/disc0_3/sms/pro.mrim.class.php on line 449
PHP Notice: Undefined offset: 0 in /tmp/mnt/disc0_3/sms/pro.mrim.class.php on line 697

Незнаю даже что и делать =)

Markiz
26-01-2009, 11:13
никто не сталкивался с
Ваше сообщение от 13:06 на номер 79161111111 доставлено не было, т.к. телефон указан в неверном формате. Правильный формат российских номеров: +71231234567. Отредактировать или добавить номер для этого абонента Вы можете, нажав кнопку 'Анкета' в правом верхнем углу этого окна.

stan
26-01-2009, 11:25
Можно настроить крон, чтобы проверял файл пользователей - появился новый пользователь - смсочка :D или какой-нибудь другой важный файл проверять (на md5, например).

А можно сделать, чтобы скрипт запускался через минуту после запуска роутера, а не из post-mount, а то у меня интернет не успевает подключаться (через gprs)?

GUID
26-01-2009, 12:01
Настоящим админам кирилица не нужна XD
но она нужна пользователям (получателям) и кроме того, исходный текст (рассылка) по-русски

GUID
26-01-2009, 12:04
Незнаю даже что и делать =)
таже фигня, но вроде бы работает, поэтому я плюнул на это - до лучших времен (пока руки до php не дойдут).
Кстати, в новых версиях класса (на сайте автора, а не тот который "вложен" в эту тему) - эти ошибки остаются

Markiz
26-01-2009, 16:40
######## ОПИСАНИЕ ########
Основной функционал:
-отправка смс на любой номер, даже не из списка контактов (он автоматически добавляется в группу "телефонные контакты")
-перебор любого количества e-mail чтобы обойти ограничения по времени отправки
-отправка смс на русском (utf8)
-интерфейс командной строки, при желании могу сделать веб обертку, хотя в этом ничего сложного.

Дополнительно:
-задержка отправки смс по времени (чтобы роутер вас не будил, ночные смс можно скопом перенаправить на утро)


######## УСТАНОВКА########


Инструкция основная:
1. Вам понадобится роутер, с установленным php
2. Разархивируете (можно под windows) прилагающийся архив smssender.zip
3. Создаете на роутере папку /opt/etc/sendsms/
4. Закидываете файлы из архива в эту папку
5. Пишете
chmod +x /opt/etc/sendsms/send.php
chmod +x /opt/etc/sendsms/pro.mrim.proxy.class.php
chmod 666 /opt/etc/sendsms/login.txt
chmod 666 /opt/etc/sendsms/smsqueue
6. Открываете send.php НА ЛИНУКСЕ. РЕДАКТИРОВАТЬ ПОД WINDOWS нельзя. Для редактирования подойдет mc. Редактировать кнопка F4, либо Esc 4
7. Находите вот такое место:

$login[0]="login@mail.ru";
$pass[0]="pass";
8. Исправляете на свой логин и пароль.
9. При желании добавляете

$login[1]="login@mail.ru";
$pass[1]="pass";
И пишете другой логин и пароль, и так хоть до бесконечности. Перебираются по очереди.
10. Пользуетесь:
/opt/etc/sendsms/send.php 7916111111 ваше сообщениеЕстественно заменив номер на нужный вам (можно не только 916) и текст на ваш.
11. Если понравилось говорите спасибо в этой теме и главное здесь (http://tem.dp.ua/forum/showthread.php?p=353)

Пояснение: Если вы ставите скрипт не в /opt/etc/sendsms/ то в файле send.php нужно изменить переменную $base_dir. Не потеряйте последний слэш!



Инструкция дополнительная:
Выполните эти действия если хотите иметь возможность отправлять смски с задержкой
0. Установите (если нужно) cron описание здесь: http://www.macsat.com/cron.php
1. выполните "основную инструкцию"
2. скачайте архив smscron.zip
3. файл sendtime.php положите в /opt/etc/sendsms/
4. файл smscron.php положите в /opt/etc/cron.hourly/
5. Выполните команды:

touch /opt/etc/sendsms/smsqueue
chmod +666 /opt/etc/sendsms/smsqueue
chmod +x /opt/etc/sendsms/sendtime.php
chmod +x /opt/etc/cron.hourly/smscron.php
6. Пользуйтесь:

/opt/etc/smssend/sendtime.php 9 23 79161111111 текст вашего сообщения
Первая цифра "утренний" час. Время когда вы просыпаетесь. Вторая "вечерний" когда засыпаете. Смска прийдет в промежуток между ними. Внимание, если "вечерний" час у вас больше 00 часов, то всеравно указывать нужно

/opt/etc/smssend/sendtime.php 8 02 79161111111 текст вашего сообщения
Первым когда встаете. Вторым когда ложитесь. Если время как-раз в этом промежутке, то смска отправится сразу, если нет, то ляжет в буфер, и отправится потом, по крону.


Пояснение: Если вы ставите скрипт не в /opt/etc/sendsms/ то в файлах sendtime.php и smscron.php нужно изменить переменную $base_dir. Не потеряйте последний слэш!


######## ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ########
Примеры использования.

1. Уведомление о загрузке роутера
в /usr/local/sbin/post-mount (в конец после запуска всех программ) дописать

sleep 15s
/opt/etc/sendsms/send.php 79161111111 Роутер загружен


2. Уведомление о закачке торрента
в /opt/etc/rtorrent.conf дописать

#sms on finish conf
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/send.php,79161111111,Торрент,$d.get_name,закачался"

3. Чтобы торрент, докачавший ночью, вас не разбудил, воспользуйтесь дополниельной инструкцией и вместо пункта два используйте
в /opt/etc/rtorrent.conf дописать

#sms on finish conf
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/sendtime.php,9,23,79161111111,Торрент,$d.get_name, закачался"

4. Инструкцию, как сделать уведомление о закачке торрента на трансмишен написал Сhemist. Она ЗДЕСЬ (http://wl500g.info/showthread.php?p=131252#post131252).

5. Инструкцию, как сделать уведомление о закачке файлов aMule написал также Сhemist. Она ЗДЕСЬ (http://wl500g.info/showthread.php?p=131538#post131538).

######## ПОЯСНЕНИЯ########

P.S. Уважаемый Eugen, после того как прочитал эту ветку и мой лог ошибок внес необходимые исправления в класс и проконсультировал меня. Так что все уже ок, ниодного нотиса. :)

P.P.S По поводу использования php. Путей переписывания send.php на shell я не вижу. smscron.php я изначально писал на shell но уперся в невозможность использовать массивы (по крайней мере я не нашел как, я недавно в linux). Единственный путь, который вижу я ипспользовать дополнительный текстовый файл в качестве временного хранилища. Возможно в ближайшее время попробую этот вариант. sendtime.php вполне можно написать на shell. Писал его последним и написал на php для общности. :)

P.P.P.S Опытным путем установлено, что ИЕ бьет архив при скачке. Используейте оперу, или специальные качалки. Либо рапида.
http://rapidshare.com/files/189931366/smssender_0.1a_.zip
http://rapidshare.com/files/189931739/smscron_0.1a_.zip

Инструкция версии 1.2 от 12.02.09

featZima
26-01-2009, 19:27
А никто скриптом для Life:) не поделиться?)

Markiz
27-01-2009, 01:05
Обновил, до версии 1.0 :) См. пост выше.

Кто еще что-то предложит: с радостью выслушаю.

rrunner
27-01-2009, 14:17
1. Вам понадобится роутер, с установленным php


Простите за ламерство, а что именно нужно ipkg install ?

Интуитивно конечно сделал ipkg install php , но
во 1х оно утянуло за собой кучу других пакетов,которые возможно не нужны простым смертным
во 2х теперь can't load library 'libuClibc++.so.0' а тут уже ламерской интуиции не хватает

GUID
27-01-2009, 14:26
ipkg install php
да вроде так...

оно утянуло за собой кучу других пакетов,которые возможно не нужны простым смертным
угу. я все-таки думаю, что нужны - не зря же зависимости прописаны... imho ламера

can't load library 'libuClibc++.so.0'
как мне кажется - вокруг этой библиотеки происходят танцы с бубном (из-за ее новых/старых версий). С интересом прочитаю ответы гуру на твой вопрос (собственно поэтому и написал... типа, чем больше народу интересуется, тем выше шансы получить ответ ;)

GUID
27-01-2009, 14:34
11. Если понравилось говорите спасибо в этой теме
говорю: СПАСИБО!
Кстати, а этот форум поддерживает функцию "оценки сообщений"? для темы уже 5 звездочек поставил, а хотелось бы для конкретного сообщения...

rrunner
27-01-2009, 14:48
да вроде так...

угу. я все-таки думаю, что нужны - не зря же зависимости прописаны... imho ламера


там может быть много того что нужно разработчику и не нужно если только скрипты запускать.ЗЫ тоже естественно имхо , естественно ламера


как мне кажется - вокруг этой библиотеки происходят танцы с бубном (из-за ее новых/старых версий). С интересом прочитаю ответы гуру на твой вопрос (собственно поэтому и написал... типа, чем больше народу интересуется, тем выше шансы получить ответ ;)

Угу, знаем, танцевали... когда mldonkey воспитывал. Теперь без гуру никак

Markiz
27-01-2009, 14:50
Честно признаться дело было давно. Но насколько я помню действительно

ipkg install php
Хотя в ipkg list_installed у меня php тоже есть. Попробуйте.

На всякий случай

[root@WL500 root]$ ipkg info php
Package: php
Version: 5.2.8-1
Depends: bzip2, openssl, zlib, libxml2, libxslt, gdbm, libdb, pcre, cyrus-sasl-libs, openldap-libs
Status: unknown ok not-installed
Section: net
Architecture: mipsel
maintainer: Josh Parsons <jbparsons@ucdavis.edu>
MD5Sum: c6d604f1830702075cb61e8d618cdc03
Size: 1871251
Filename: php_5.2.8-1_mipsel.ipk
Source: http://static.php.net/www.php.net/distributions//php-5.2.8.tar.bz2
Description: The php scripting language

Package: php
Version: 5.2.6-1
Depends: bzip2, openssl, zlib, libxml2, libxslt, gdbm, libdb, pcre, cyrus-sasl-libs, openldap-libs
Status: install ok installed
Architecture: mipsel

Successfully terminated.

Markiz
27-01-2009, 15:27
Только что просил товарища протестировать. php работает. :)

angel_il
27-01-2009, 15:31
самое забавное что тоже можно написать и на sh :) и не нужен будет php

Markiz
27-01-2009, 15:41
Ну класс переписывать будет тяжко :)
а вообще я sh не знаю. Но попробую переписать :)

Markiz
27-01-2009, 16:44
короче та либа, про которую вы говорите, это симлинк на ту что у вас уже есть. Откройте /opt/lib/ найтите что-то типа libuClibc-xx.x.so

Создайте симлнки на ней с именами libuClibc++.so.0 libuClibc++.so

Пользуйтесь. Позже включу в фак.

angel_il
27-01-2009, 19:09
а класс и не нужно переписывать...

rrunner
27-01-2009, 20:32
короче та либа, про которую вы говорите, это симлинк на ту что у вас уже есть. Откройте /opt/lib/ найтите что-то типа libuClibc-xx.x.so

Создайте симлнки на ней с именами libuClibc++.so.0 libuClibc++.so

Пользуйтесь. Позже включу в фак.

спасибо, после курения wiki по поводу симлинков все заработало :)
заодно узнал как они делаются

tanetomo
28-01-2009, 17:26
С кириллицей проблемы, а так замечательный скрипт.

rrunner
28-01-2009, 18:07
С кириллицей проблемы, а так замечательный скрипт.

C кирилицей все ок.Если ходиш через putty то
window>translation>win1251

Markiz
28-01-2009, 19:32
Либо window->translation->utf-8

Работают обе кодировки.


а класс и не нужно переписывать...
А как тогда сделать? Класс написан на php. Чтобы роутер вообще понял что это класс, я так понимаю всеравно нужен php. Больше того, скрипт который непосредственно пользуется этим классом тоже должен быть на php. Если знаете способ как это обойти подскажите или дайте ссылку где почитать, ну или хотябы ключевые слова для поиска :)

Исходя из логики, напрашивается только один бредовый вариант: можно php скомпилировать в бинарник?

А вот файлы которые используют send.php действительно можно на шеле, что я в будующем и планирую сделать.

alexcccp
28-01-2009, 22:11
СМС это интересно

Недавно пролетала тема про сигнализацию и роутер я в ней отписывался

все очень по идеи было просто

подключить usb устройство к роутеру, например мышь и заставить следить за кнопкой мышары.
прикрепить к двери геркон и прикрутить его замес-то кнопки мышары
(конструкция дешевле не придумаешь usb мышь 150 руб. геркон 15 + метр провода) пользы много
(геркон эт датчик такой, если кто не в курсе реагирует на магнитное поле при отсутствии такового разеденяит контакт при присутствии соединяет)

при открывании двери геркон размыкается мышь сообщает роутеру о новом состоянии ее кнопки, а тот в свою очередь шлет смс.


Гы Огромное спасибо за SMS :) сервис

angel_il
29-01-2009, 07:19
Либо window->translation->utf-8

Работают обе кодировки.


А как тогда сделать? Класс написан на php. Чтобы роутер вообще понял что это класс, я так понимаю всеравно нужен php.

нет я говорил о полном переписывании того что реализовано в том классе средствами shell

GUID
29-01-2009, 18:12
можно php скомпилировать в бинарник?
нет. т.к. "PHP is a scripting language" (wiki), а скриптовые языки не компилируются (по определению).

А вот файлы которые используют send.php действительно можно на шеле, что я в будующем и планирую сделать.
о каких именно файлах идет речь?! и зачем переписывать кусок, если php все равно нужен?!

Сhemist
08-02-2009, 19:21
Юзаю transmission 1.22-3, поэтому написал небольшие изменения, чтобы информировать о загрузке файла.
В /opt/sbin/transmission_watchdog меняем функцию send_report():

send_report ()
{
debug "SMS send: $SMSOPT $SMSTO"

`${SMSOPT} ${SMSTO} ${TORRENTNAME} torrent finished ${ENDTIME}`
notice "SMS send to: ${SMSTO} about ${TORRENTNAME}"
}

В /opt/etc/transmission.conf добавляем пару строк:

SMSTO=79*********
SMSOPT=/opt/etc/sendsms/send.php
или

SMSTO="9 23 79*********"
SMSOPT=/opt/etc/sendsms/sendtime.php
Специально вывел в SMSOPT путь к send.php, если он находится не по "стандартному" пути. Или если Вам захочется использовать sendtime.php.

Сhemist
09-02-2009, 10:02
1. Уведомление о загрузке роутера
в /usr/local/sbin/post-boot дописать

sleep 15s
/opt/etc/sendsms/send.php 79161111111 Роутер загружен

Возможно ошибка!!!
У меня правильно отрабатывает внутри sh-скрипта только так
`/opt/etc/sendsms/send.php 79161111111 Роутер загружен`

И ставить лучше не в post-boot, а отдельным скриптом в /opt/etc/init.d, чтобы к этому времени наверняка инет поднялся, потому что после post-boot идет post-firewall, где у многих роутинг прописывается и т.д.

Сhemist
09-02-2009, 10:53
После тестовой эксплуатации выявил один важный момент - при наличии в тексте знаков препинания, особенно :, (), !, и т.д. или выдает ошибку, или же вообще может не запуститься :(
Предлагаю как-то этот момент учесть введением "" для тела сообщения. Внутри кавычек скрипт должен на все спецсимволы класть болт и не считать их служебными.

И небольшое пожелание-просьба: Может кто напишет web-морду к этому скрипту? Было бы очень удобно иметь "свою" форму для отправки СМСок, а не шарится по провайдерским и не вводить защитные коды.

Mihali4_spb
09-02-2009, 19:09
а каким символом можно в отправляемой смс сделать перевод строки?

Сhemist
10-02-2009, 14:46
Скрипт для информирования о загрузке файла через aMule:
1. Создаем симлинк директории ../amule/Incoming потому что саму директорию Incoming find видеть не хочет.
2. В директории /opt/etc/cron.1min создаем скрипт:

#!/bin/sh

d=`date +'%d/%m/%y - %T'`
find -L /путь/до/симлинка/из/первого/пункта -type f -cmin 1 | grep -q путь/до/симлинка/из/первого/пункта && `/opt/etc/sendsms/send.php 79********* aMule downloaded next file at ${d}`
ВАЖНО
В команде grep путь/до/симлинка/из/первого/пункта указывается БЕЗ ПЕРВОГО СЛЭША, т.е. так /путь/до/симлинка/из/первого/пункта - ошибка.
3. Делаем этот скрипт исполняемым

Vityok
10-02-2009, 15:05
Сhemist, я в конец post-mount написал, чтоб оно отработало, когда уже диски смонтировались и даже, скорее всего, сервисы поднялись в /opt/etc/init.d/rc.unslung

Сhemist
10-02-2009, 15:11
я в конец post-mount написал

Согласен - тоже вариант. Но не в post-boot! Адназначна :)

sda
11-02-2009, 05:13
На transmission 1.44 уведомление о загрузке торрента по sms кто нибудь реализовал?

RET
11-02-2009, 12:55
А на украинских операторов Mail-агент может отсылать смски? Конкретно интересует MTS-UKR

desper
12-02-2009, 12:02
rtorrent, кстати, тоже может присылать название скачавшейся раздачи, достаточно прописать что-то типа:


on_finished=send_finish_sms,"execute = /opt/etc/sendsms/send.php,79161111111,$d.get_name=,complete"

Vityok
12-02-2009, 12:56
А зачем по-английски-то, оно и по русски в utf-8 прекрасно шлёт. Мне русский язык как-то ближе.

Sashunya
12-02-2009, 14:56
А на украинских операторов Mail-агент может отсылать смски? Конкретно интересует MTS-UKR

Загрузил только что Мейл.ру агент и пытался отправить СМС на номер МТС Укр. Пришло сообщение, что оператор не поддерживается, так что наверное для Украины этот пакет не подходит, а жаль ((

Markiz
12-02-2009, 20:11
Обновил инструцию. Внес необходимые поправки. Всем спасибо за то что пользуетесь. Автору класса тоже приятно. Мы с ним теперь каждый день общаемся.

Он новую версию сделал, там много всяких фишек включая передачу файлов. Теоретически можно сделать управление роутером по агенту, только тормозить будет ужастно наверное :) Я всеравно ССХ использую, даже на телефоне :)

P.S. Chemist ты в n00bs, InvalidTeam не играл? :) Если да то мир адски тесен. Если нет то извини, просто ник знакомый :)

abufct
15-02-2009, 23:56
Первый раз с новым мылом выдает такое сообщение в терминале:

PHP Notice: Undefined index: unknown in /opt/etc/sendsms/send.php on line 65
PHP Warning: Invalid argument supplied for foreach() in /opt/etc/sendsms/send.php on line 65
PHP Warning: unpack(): Type L: not enough input, need 4, have 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1119
contact list not send. Sms send Error.

Второй раз с мылом, первый раз на номер

PHP Warning: unpack(): Type L: not enough input, need 4, have 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1119
contact list not send. Sms send Error.

Если мыло и телефон уже использовались, ошибок никаких нет.
При этом на самом деле отправляет.
Сообщения больше одной смски обрубаются. А было бы классно, если бы разбивались на N.
Если сообщение короткое, MRA его дополняет рекламой себя. Немного неприятно. Если сообщение длинное - все ок. Было бы неплохо, если бы скрипт дополнял сообщение пробелами до полной длины смски.
Но и без этого классная вещь. Огромное спасибо тем, кто сделал!

Markiz
16-02-2009, 19:50
вы точно правильную версию класса скачали? Похоже на то что версия старая. Eugen (автор класса) уже пофиксил эту ошибку.

Попробуйте скачать класс из моего поста с инструкцией. Про разбивку сообщений, даж не знаю. Можно попробовать, если время будет.

abufct
16-02-2009, 21:45
Еще раз скачал теперь уже с рапиды. Проверил CRC - совпадает, на всякий случай заменил класс на роутере. Все равно на новый номер:

PHP Warning: unpack(): Type L: not enough input, need 4, have 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1119
contact list not send. Sms send Error.

Возможно, у меня в PHP что-то "не так". PHP ставился для WebUI rtorrent'а.

GerAN
18-02-2009, 10:32
скачал http://wl500g.info/attachment.php?attachmentid=4181&d=1233015912
установил
при отправке сообщения ругнулось:

PHP Warning: Invalid argument supplied for foreach() in /opt/etc/sendsms/send.php on line 65
PHP Warning: unpack(): Type L: not enough input, need 4, have 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1119
смс-ка дошла...

ParadoxRus
22-02-2009, 23:33
Вроде как работает - ошибок не выдает, только с русским у меня проблема ;( Что это могло бы быть?!
Еще как я понял автор класса -его обновил, соответственно придется обновить и сендер - т.к. определение mra уже не используется в принципе...

upd
Опа, сегодня что-то поломалось :(
Т.е. запускается вроде как, а сообщения нету - ошибок тоже... Логов же скрипт не ведет?!

upd2
Оказывается не поломалось - smskи пришли часа полтора спустя! видимо агент глючит на праздниках ;)
Но с русским так проблема и не решилась.

Сhemist
02-03-2009, 14:35
P.S. Chemist ты в n00bs, InvalidTeam не играл? :) Если да то мир адски тесен. Если нет то извини, просто ник знакомый :)

Не, не играл :)


Обновил инструцию. Внес необходимые поправки.

Сразу не понял, что это значит. Только когда увидел, что там ссылки на мои "изыскания", стало приятно (Поручик, молчать! :)). Спасибо!

ParadoxRus
05-03-2009, 20:03
Вроде как работает - ошибок не выдает, только с русским у меня проблема ;( Что это могло бы быть?!
Еще как я понял автор класса -его обновил, соответственно придется обновить и сендер - т.к. определение mra уже не используется в принципе...

upd
Опа, сегодня что-то поломалось :(
Т.е. запускается вроде как, а сообщения нету - ошибок тоже... Логов же скрипт не ведет?!

upd2
Оказывается не поломалось - smskи пришли часа полтора спустя! видимо агент глючит на праздниках ;)
Но с русским так проблема и не решилась.

C русским вопрос решился - что было не знаю... поставил новый mc - возможно какие то шаманства с локалью осуществлял...
А вот с rtorrentа не приходят смски :( что не так?

self
06-03-2009, 06:35
То же самое хотя раньше работало :confused:

SpL
07-03-2009, 20:58
Есть идея сделать отправку смс когда кто нибудь заходит на фтп.
к примеру 22:30 Log in: Anonymous
Но знаний, как это сделать, нету :confused:

Знатоки, помогите пожалуйста:)

junkies
09-03-2009, 13:49
вчера все работало сегодня перестало)
кто то может сказать работает или нет?
разобрался все работает ;)

A007
11-03-2009, 14:19
Автору большое спасибо. Нужная вещь ;)

kir-g
12-03-2009, 12:30
Огромное спасибо Markiz !!!! Может кто-нибудь посмотрит как вот здесь сделать http://wl500g.info/showthread.php?t=11460&page=12 Уведомление о закачке торрента

DiNamiD
15-03-2009, 22:51
Спасибо большое автору за скрипты.
Правда с rtorrent у меня пока не заработали. Дописал в конце, как в инструкции:

#sms on finish conf
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/send.php,79161111111,Торрент,$d.get_name,закачался"

А при попытке отправить сообщение из командной строки, через раз ругается:

PHP Warning: unpack(): Type L: not enough input, need 4, have 3 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1020
PHP Warning: unpack(): Type L: not enough input, need 4, have 0 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1042
PHP Notice: Undefined index: unknown in /opt/etc/sendsms/send.php on line 65
PHP Warning: Invalid argument supplied for foreach() in /opt/etc/sendsms/send.php on line 65
PHP Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 1767990785 bytes) in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 595

Что я не так делаю? Спасибо.

Сhemist
17-03-2009, 06:10
Вопрос к пользователям:
У меня не отрабатывает "вечерний" час в sendtime.php. Выглядит это так: если событие произошло ночью, то до "утреннего" часа все хоккей. Если же событие произошло в течении часа после "вечернего", то СМС приходит.

После включения девайса mosk и анализа алгоритма работы sendtime.php понял, что "вечерний" час считается полностью (включительно), до 59 минуты. Т.е. скрипт получает от роутера дату, вырезает час и сравнивает с заданным. Получается, что 22-35 -> это 22 час, а 21-20 -> 21 час. Таким образом, если вы не хотите просыпаться после 22 часов, то "вечерний" час должен быть 21.

darlock
20-03-2009, 11:13
PHP Notice: Undefined index: unknown in /opt/etc/sendsms/send.php on line 65
PHP Warning: Invalid argument supplied for foreach() in /opt/etc/sendsms/send.php on line 65
PHP Warning: unpack(): Type L: not enough input, need 4, have 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1119
contact list not send. Sms send Error.

Смс-ка пришла... но вот такой вывод не очень понравился... что делаю не так?

kir-g
20-03-2009, 12:22
PHP Notice: Undefined index: unknown in /opt/etc/sendsms/send.php on line 65
PHP Warning: Invalid argument supplied for foreach() in /opt/etc/sendsms/send.php on line 65
PHP Warning: unpack(): Type L: not enough input, need 4, have 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1119
contact list not send. Sms send Error.

Смс-ка пришла... но вот такой вывод не очень понравился... что делаю не так?

Читайте внимательнее ветку http://wl500g.info/showpost.php?p=132346&postcount=51

DiNamiD
21-03-2009, 13:09
Правда с rtorrent у меня пока не заработали. Дописал в конце, как в инструкции:

#sms on finish conf
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/send.php,79161111111,Торрент,$d.get_name,закачался"

Что я не так делаю? Спасибо.

Неужели никто не сталкивался?

dven
21-03-2009, 16:33
Неужели никто не сталкивался?
тоже не работает в rtorrent :(
хотя по команде смски отправляются без проблем. может в версии 0.8.4 стОит иначе как-то прописывать?

Shushik
21-03-2009, 18:29
Уважаемые, кто-нибудь пробовал сделать отправку прогноза погоды с сайта Гисметео (http://gismeteo.ru) на сотик средствами роутера. На Хабрхабре нашел статейку (http://habrahabr.ru/blogs/linux/54199/), но там скрипт для FreeBSD 7.1. Как можно тоже самое реализовать на WL-500gP V1?

grol
22-03-2009, 17:31
тоже не работает в rtorrent :(
хотя по команде смски отправляются без проблем. может в версии 0.8.4 стОит иначе как-то прописывать?

#sms on finish conf
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/send.php,79161111111,Торрент,$d.get_name,закачался"

Ошибка здесь - $d.get_name
Надо так - $d.get_name=

rrunner
03-04-2009, 08:31
/opt/etc/sendsms/sendsms.php "Router is power on"
А нельзя какнибудь вывод внешнего IP прикрутить?
на идею наткнулся вот тут
http://wl500g.info/showthread.php?t=18955
но как-то не активно..
Так-же было бы гораздо полезнее sendsms не из postboot или mount а по событию ppp connected. т.к. сам по себе роутер не ребутится , а дисконекты бывают.

ABATAPA
03-04-2009, 08:46
Так-же было бы гораздо полезнее sendsms не из postboot или mount а по событию ppp connected. т.к. сам по себе роутер не ребутится , а дисконекты бывают.

Скрипту /usr/local/sbin/post-firewall, вызываемого ПОСЛЕ установки соединения, вторым параметром передается IP-адрес WAN.

Так что из этого скрипта передать IP можно так:

/opt/etc/sendsms/sendsms.php "New connection established, WAN IP address is $2"

rrunner
03-04-2009, 09:49
Скрипту /usr/local/sbin/post-firewall, вызываемого ПОСЛЕ установки соединения, вторым параметром передается IP-адрес WAN.

Так что из этого скрипта передать IP можно так:

/opt/etc/sendsms/sendsms.php "New connection established, WAN IP address is $2"

Не хочет из скрипта php запускать


iptables: Bad rule (does a matching rule exist in that chain?)
./post-firewall: line 18: /opt/etc/sendsms/sendsms.php: not found

ABATAPA
03-04-2009, 10:32
Не хочет из скрипта php запускать


Ну так или исправьте заголовок, или запускайте как
php 'имя файла'.

rrunner
03-04-2009, 10:51
Ну так или исправьте заголовок, или запускайте как
php 'имя файла'.

Так он вроде вообще его как rule помоему воспринемает. и само собой ругается что такого правила нет.
Я не совсем уверен что все сделал правильно , я просто в конец post-firewall добавил
/opt/etc/sendsms/sendsms.php 7хххххх "$2"

ABATAPA
03-04-2009, 11:24
Я не совсем уверен что все сделал правильно , я просто в конец post-firewall добавил
/opt/etc/sendsms/sendsms.php 7хххххх "$2"

Еще раз: "апускайте как php 'имя файла'.", т.е.
php /opt/etc/sendsms/sendsms.php 7хххххх "$2"

rrunner
03-04-2009, 12:29
Еще раз: "апускайте как php 'имя файла'.", т.е.
php /opt/etc/sendsms/sendsms.php 7хххххх "$2"

Теперь

iptables: Bad rule (does a matching rule exist in that chain?)
Could not open input file: /opt/etc/sendsms/sendsms.php
при этом файл sendsms.php в /opt/etc/sendsms/ разумеется есть.

ABATAPA
03-04-2009, 12:32
при этом файл sendsms.php в /opt/etc/sendsms/ разумеется есть.

Весь файл покажите, а то так и будем ходить вокруг да около...

rrunner
03-04-2009, 12:49
Весь файл покажите, а то так и будем ходить вокруг да около...

Так файл из этой ветки, я его не менял кроме логина и пароля.
Из post-boot post-mount да и просто из шела - работает

ABATAPA
03-04-2009, 13:08
Так файл из этой ветки, я его не менял кроме логина и пароля.
Из post-boot post-mount да и просто из шела - работает

Ну, тогда и справлятесь сами, или пусть другие помогут.
Искать файлы "из этой ветки" нет никакого желания - проблема не моя.

rrunner
03-04-2009, 13:44
Ну, тогда и справлятесь сами, или пусть другие помогут.
Искать файлы "из этой ветки" нет никакого желания - проблема не моя.

А что его искать? вот он
http://wl500g.info/showpost.php?p=124053&postcount=4
не хотел просто ветку засорять, 2 раза одно и то-же постить.

Говорю же , с ним все в порядке, сам по себе он запускается , а из скрипта post-firewall не хочет

собственно просто из шела php /opt/etc/sendsms/sendsms.php тоже не хочет, пишет
Could not open input file: /opt/etc/sendsms/sendsms.php

ABATAPA
05-04-2009, 09:27
Could not open input file: /opt/etc/sendsms/sendsms.php

Мне за Вас воспользоваться переводчиком?
Переведите сообщение, и посмотрите, где на самом деле лежит и как называется Ваш файл.

rrunner
05-04-2009, 12:38
Мне за Вас воспользоваться переводчиком?
Переведите сообщение, и посмотрите, где на самом деле лежит и как называется Ваш файл.

C Английским знаком давно , в отличае от *nix. Просто Немогу открыть инпут файл без указания почему - может быть по очень огромному ряду причин. В моем случае все просто - сам дурак не sendsms.php a send.php толлько веравно из php /opt/etc/sendsms/send.php 7хххххххххх "$2" в postfirewall получается


# ./post-firewall
iptables: Bad rule (does a matching rule exist in that chain?)

Из postboot\postmount прекрасно работает


/opt/etc/sendsms/send.php 7хххххххххх `nvram get wan0_ipaddr`

Moжно включить в howto, всетаки информативнее чем "Router started" получается, но хотелось бы всетаки из postfirewall научится запускать, если postfirewall действительно при каждом ppp сonectе отрабатывает

ABATAPA
05-04-2009, 13:49
В моем случае все просто - сам дурак не sendsms.php a send.php толлько веравно из php /opt/etc/sendsms/send.php 7хххххххххх "$2" в postfirewall получается

О чем Вам и говорилось.
Будьте внимательнее.




./post-firewall
iptables: Bad rule (does a matching rule exist in that chain?)[/CODE]


Упакуйте этот файл командой
gzip -9 -c /usr/local/sbin/post-firewall > /tmp/post-firewall.gz
И прикрепите к сообщению.

#piter#
09-04-2009, 15:36
1. В файле smssender.zip свежей версии, видимо изменилось наполнение(а именно вместо файла smsqueue наличиствует base.db) соответственно фрагмент инструкции:

chmod +x /opt/etc/sendsms/send.php
chmod +x /opt/etc/sendsms/pro.mrim.proxy.class.php
chmod 666 /opt/etc/sendsms/login.txt
chmod 666 /opt/etc/sendsms/smsqueue
следует заменить на:
chmod +x /opt/etc/sendsms/send.php
chmod +x /opt/etc/sendsms/pro.mrim.proxy.class.php
chmod 666 /opt/etc/sendsms/login.txt
chmod 666 /opt/etc/sendsms/base.dbВо всяком случае в таком варианте оно у меня заработало, после еще одного важного момента:
2. Для нового акаунта на майл.ру требуется хотя бы один раз зайти в него агентом http://agent.mail.ru/ru/download/agent_windows/download.html иначе при попытке запуска скрипта получаем сообщения о том, что неверный логин

За понимание пункта 2 спасибо oleg.maiorov,
Ну и разумеется автору скрипта за замечательную ШТУКУ.

добавлено 09.04.2009, 18:00

Продолжая ловить жуков в инструкции:
Инструкция дополнительная->5-й пункт->код->2-я строка "chmod +666 /opt/etc/sendsms/smsqueue" шэл матерно ругается и говорит, что не знает такой моды +666, его в общем можно понять, там скорее всего имелось в виду просто 666

ну и в 6 пункте там же, папка "/opt/etc/smssend/sendtime.php 8 02 79161111111 текст вашего сообщения" вызвала не понимание интерпритатора, в чем он тоже прав, на самом то деле она sendsms

fig
07-06-2009, 19:12
Нужна помощь в написании простого скрипта. Суть в том, что бы пароль и логин брались из файла login.txt
Предпологается создание нескольких почтовых ящиков, и попеременная отпаравка смс с них. Это позволит обойти ограничения на время между отправкой смс и кол-во их в сутки.

ABATAPA
07-06-2009, 22:07
Нужна помощь в написании простого скрипта. Суть в том, что бы пароль и логин брались из файла login.txt
Предпологается создание нескольких почтовых ящиков, и попеременная отпаравка смс с них. Это позволит обойти ограничения на время между отправкой смс и кол-во их в сутки.

# cat filename
USERNAME1 PASS1
USERNAME2 PASS2
USERNAME3 PASS3

# cat filename | while read USERNAME PASS
do
do_something $USERNAME $PASS
done

olegos007
12-06-2009, 22:40
сделал все по инструкции
из командной строки смс-ки отправляются а автоматом по окончании закачки не отправляются
подскажите куда копать

oleg.maiorov
14-06-2009, 12:08
Привет от топикстартера :)
Спасибо за замечательное развитие темы (респект Markiz`у).

>> Решил обновить свои кривые скрипты, скачал сегодня здешнюю версию.
>> Все замечательно работает, но прикрутить информер к rtorrent аналогично не получилось.

У rtorrent получилось отправить sms. Правда, фик знает почему, сделал много изменений в системе, среди которых обновил rtorrent до последней версии и модифицировал rtorrent.conf, у меня строка сейчас имеет простейший вид:

on_finished=send_finish_sms,"execute=/opt/etc/sendsms/send.php,79621111111,$d.get_name="
Ну и главное - не забывать делать /opt/etc/init.d/S99rtorrent restart ;)

колбаскин
16-06-2009, 21:53
Для Украины смс не идут , поэтому увы мне не пойдет...
а было бы супер...может в течении ближайших 10 лет все таки будет Украина

oleg.maiorov
19-06-2009, 09:21
Глупая идея конечно - попросить у друзей из России симку МТС или Библайна. Вроде бы входящие sms в роуминге бесплатные.
Отрицательные стороны - это изврат, нужен отдельный телефон или телефон на 2 симки, на счету должна быть определенная сумма (актуальную не знаю, два года назад было 50 у.ё.)

Kolandr
20-06-2009, 16:18
/opt/etc/sendsms/send.php 7916xxxxxxx test

при попытке отправить через консоль


PHP Warning: unpack(): Type L: not enough input, need 4, have 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 1119
contact list not send. Sms send Error.
но сообщение пришло.
отправлялось в первый раз. попробовал второй - тоже самое.

ZoraX
05-07-2009, 14:01
Добрый день, функцию отправки sms по окончании закачки торента в rtorrent реализовал у себя на роутере следующим образом:
1. Установил esmtp:

ipkg install esmtp
2. Ввёл данные ящика на mail.ru - файл /opt/etc/esmtprc

hostname = "smtp.mail.ru"
username = "mail_login"
password = "mail_pass"
3. добавил в конфиг rtorrent

#sms on finished
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/startsms"
4. Файл startsms

#!/bin/sh
echo -e "Торрент закачался" | sendmail 7913xxxxxxx@sms.mtslife.ru -f mymail@mail.ru
------------
Суть данного действия что на МТС при подключенной бесплатной услуге sms to e-mail письмо отправляемое на данный адрес придёт как смска на телефон.
Ещё есть проблема в том что например на mail.ru письмо отправленные сендмайлом или через php воспринимаются как спам и письмо дальше не проходит о чём майлру нам и сообщает:

http://nwku.academ.org/putty.gif

Ещё Как в конфиге - мне реализовать так чтобы отправлялось и название торрента тоже, например - Торрент "название" скачался. У меня сейчас так
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/startsms"
Если пишу в конфиге так: on_finished=send_finish_sms,"execute = echo -e "Торрент $d.get_name закачался" | sendmail 7913ххххххх@sms.mtslife.ru -f хххххх@bk.ru
То клиент rtorrent не стартует.

колбаскин
03-08-2009, 12:56
Хорошая новость! теперь есть отправка смс на Украинские операторы
скрипт работает

но вот как сделать Русский язык - этого я не понял
и можно ли как-то сделать команду отправки по короче
чтобы в телнете просто набрать sms номер и текст ?

Sectoid
03-08-2009, 17:42
Интересно, а с украинскими опсосами мэйл.ру агент работать будет?

колбаскин
03-08-2009, 18:03
Интересно, а с украинскими опсосами мэйл.ру агент работать будет?

билайн , мтс и лайф

как русским смс сделать? каракули приходят

Sectoid
05-08-2009, 01:51
а КиевСтар?

ceramic
05-08-2009, 10:38
а КиевСтар?

С КиевСтаром проще, через e-mail:

38(код)номертелефона@sms.kyivstar.net для контрактников Киевстар

38(код)номертелефона@2sms.kyivstar.net для абонентов AСE&BASE и DJUICE.

колбаскин
05-08-2009, 11:48
С КиевСтаром проще, через e-mail:

38(код)номертелефона@sms.kyivstar.net для контрактников Киевстар

38(код)номертелефона@2sms.kyivstar.net для абонентов AСE&BASE и DJUICE.

Как раз проще с другими операторами , чем с киевстаром
на киевстаре нужно активировать приход смс с мыла
на beeline приходят длинные смс на русском(если настроить)
на МТС тоже на русском(если настроить)
на киевстар транслитом только с большой задержкой по времени

и не путайте отправку сообщений через шлюз и через мыло

ЗЫ кто-то решил проблему с русским языком?

bigsmaleman
27-08-2009, 10:46
может кому пригодится
реализовал отправку смс после реконекта следующим образом:
в файл post-firewall добавляем:

/opt/bin/php /opt/etc/sendsms/send.php +7хххххххххх `nvram get wan0_ipaddr`

при испытании столкнулся с тем что в magent'е есть ограничение на кол-во исходящих смс в сутки

колбаскин
27-08-2009, 11:45
может кому пригодится
реализовал отправку смс после реконекта следующим образом:
в файл post-firewall добавляем:

/opt/bin/php /opt/etc/sendsms/send.php +7хххххххххх `nvram get wan0_ipaddr`


А может есть возможность отправить смс при смене ip адреса провайдером, например как у билайна Украина - они же меняют ip сами раз в сутки вроде
чтобы смс приходила сразу после смены...

ЗЫ с русским языком я так и не понял
из обычного виндовского telnet можно отправить русское сообщение?

bigsmaleman
27-08-2009, 12:38
А может есть возможность отправить смс при смене ip адреса провайдером, например как у билайна Украина - они же меняют ip сами раз в сутки вроде
чтобы смс приходила сразу после смены...

Именно это и делается, post-firewall автоматически отрабатывает после каждого реконекта

колбаскин
27-08-2009, 13:01
Именно это и делается, post-firewall автоматически отрабатывает после каждого реконекта

За это спасибо!
а к русскому как приучить?

колбаскин
27-08-2009, 13:53
Люди скрипт перестает отправлять смс
а если отправлять с этого же мыла но mail.ru агента - все норм
в чем причина? понимаю что телепаты в отпуске - но всеже...
может по ip ограничения стоят?

Вопрос снят! суточный лимит....
правда интересно сколько можно отослать

колбаскин
07-09-2009, 15:47
Может конечно уже эта тема не интересна, но как всеже заставить роутер слать сообщения на кирилице?

russ2
18-09-2009, 17:45
может ты просто текст в mc редакторе пишешь, а он у тебя без UTF-8?

alting
23-09-2009, 10:05
Жалко, что скрипт работает только на роутере.
Попытался заставить работать на линукс-сервере:

PHP Notice: Undefined variable: argv in /opt/etc/sendsms/send.php on line 73
PHP Notice: Undefined variable: argv in /opt/etc/sendsms/send.php on line 76

С php незнаком, гугл никаких тем для размышлений не дал :confused:

alting
23-09-2009, 10:21
Жалко, что скрипт работает только на роутере.
Попытался заставить работать на линукс-сервере:

PHP Notice: Undefined variable: argv in /opt/etc/sendsms/send.php on line 73
PHP Notice: Undefined variable: argv in /opt/etc/sendsms/send.php on line 76

С php незнаком, гугл никаких тем для размышлений не дал :confused:

Нашел-таки.
в php.ini надо выставить переменную в cli
register_argc_argv = On

колбаскин
24-09-2009, 23:45
может ты просто текст в mc редакторе пишешь, а он у тебя без UTF-8?

я по всякому пробовал!
и из роутера отсылать и через telnet
как заставить русские сообщения отсылать я так и не нашел!
а очень жаль...

sauron093
25-09-2009, 08:32
я по всякому пробовал!
и из роутера отсылать и через telnet
как заставить русские сообщения отсылать я так и не нашел!
а очень жаль...

хм.. у меня нормально кириллица отсылается. в MC все тексты набирал.

ROM
01-10-2009, 09:25
Коллеги, бросьте пожалуйста ссылкой, если есть...

Ничего путного не нашел на эту тему.
Есть желание отправлять (и получать!) SMS через 3G-модем от билайна MF626.
Роутер WL-500W. Прошивка 1.9.2.7-d-r396.

Т.е. как подключить можем для поднятие интернета, вроде инфа есть, а вот именно для приема/отправки СМС можно ли его использовать?
Эту задачу реально решить?

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

Wolfgun
01-10-2009, 15:33
Посмотри здесь роутер следит за темературой (http://wl500g.info/showthread.php?t=18254)

ROM
01-10-2009, 21:03
Посмотри здесь роутер следит за темературой (http://wl500g.info/showthread.php?t=18254)

Спасибо!
Видел эту тему полгода назад, но забыл про нее. ;)

Потрясающие вещи люди делают!
К сожалению, мне из этой темы мало что понятно - например, не понял что-же все-таки устанавливать и откуда... Не настолько я в этом шарю. Еле-еле развернул торренты и АДОС... С помощью Vector-а и его инструкций.

Ладно, пойду еще раз перечитывать указанную тему... Может дойдет :rolleyes:

колбаскин
02-10-2009, 10:39
хм.. у меня нормально кириллица отсылается. в MC все тексты набирал.

как ты сделал чтобы MC кирилицу понимал?

Yurikus1984
02-10-2009, 11:23
Добрый день, функцию отправки sms по окончании закачки торента в rtorrent реализовал у себя на роутере следующим образом:
1. Установил esmtp:

ipkg install esmtp
2. Ввёл данные ящика на mail.ru - файл /opt/etc/esmtprc

hostname = "smtp.mail.ru"
username = "mail_login"
password = "mail_pass"
3. добавил в конфиг rtorrent

#sms on finished
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/startsms"
4. Файл startsms

#!/bin/sh
echo -e "Торрент закачался" | sendmail 7913xxxxxxx@sms.mtslife.ru -f mymail@mail.ru
.
Сделал всё к в этой инструкции кроме 3 и 4-го пункта... Вместо того чтобы приходило сообщение о скачанном торенте echo -e "Торрент закачался" | sendmail 7913xxxxxxx@sms.mtslife.ru -f mymail@mail.ru, прописал в post-firewall такую строчку echo -e "nvram get wan0_ipaddr" | sendmail xxx@mail.ru -f xxx@mail.ru. Чтобы приходило письмо с IP адресом на указанное мыло
Попробовал просто в консоли запустить, написало что нужна авторизация на сервере. Что сделал не так?
PS надо ли перезагрузить роутер после установки esmtp и прописании скриптов в post-firewall???

BVI
11-10-2009, 14:19
Добрый день, функцию отправки sms по окончании закачки торента в rtorrent реализовал у себя на роутере следующим образом:
1. Установил esmtp:

ipkg install esmtp
2. Ввёл данные ящика на mail.ru - файл /opt/etc/esmtprc

hostname = "smtp.mail.ru"
username = "mail_login"
password = "mail_pass"
3. добавил в конфиг rtorrent

#sms on finished
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/startsms"
4. Файл startsms

#!/bin/sh
echo -e "Торрент закачался" | sendmail 7913xxxxxxx@sms.mtslife.ru -f mymail@mail.ru
------------
Суть данного действия что на МТС при подключенной бесплатной услуге sms to e-mail письмо отправляемое на данный адрес придёт как смска на телефон.
Ещё есть проблема в том что например на mail.ru письмо отправленные сендмайлом или через php воспринимаются как спам и письмо дальше не проходит о чём майлру нам и сообщает:

http://nwku.academ.org/putty.gif

Ещё Как в конфиге - мне реализовать так чтобы отправлялось и название торрента тоже, например - Торрент "название" скачался. У меня сейчас так
on_finished=send_finish_sms,"execute = /opt/etc/sendsms/startsms"
Если пишу в конфиге так: on_finished=send_finish_sms,"execute = echo -e "Торрент $d.get_name закачался" | sendmail 7913ххххххх@sms.mtslife.ru -f хххххх@bk.ru
То клиент rtorrent не стартует.

Спасибо за инструкцию!!!
Для того что бы письма уходили используйте SMTP почты yandex.ru

колбаскин
12-10-2009, 10:42
Еще раз повторюсь...
Как отсылать сообщения на кирилице?

sauron093
12-10-2009, 10:57
Еще раз повторюсь...
Как отсылать сообщения на кирилице?

у меня стоит МС с поддержкой UTF-8 и папки с файлами на кирилице в нем нормально отображаются. в нем и написал что отправлять по русски, оно и отправляется

колбаскин
12-10-2009, 11:00
у меня стоит МС с поддержкой UTF-8 и папки с файлами на кирилице в нем нормально отображаются. в нем и написал что отправлять по русски, оно и отправляется

Дай плз ссылку где качнуть такой MC и как быть если из telnet отправлять?

sauron093
12-10-2009, 11:04
Дай плз ссылку где качнуть такой MC и как быть если из telnet отправлять?

ссылку не помню, надо по форуму порыскать.

у меня отправка то скриптами, там фразы на кирилице написаны и менять их не нада

ЗЫ

не помню откуда ставил, может от сюда:

http://wl500g.info/showpost.php?p=68725&postcount=1

sauron093
12-10-2009, 11:19
Суть данного действия что на МТС при подключенной бесплатной услуге sms to e-mail письмо отправляемое на данный адрес придёт как смска на телефон.

можно поподробнее? а то я что-то не нашел такой услуги у МТС

колбаскин
12-10-2009, 11:26
можно поподробнее? а то я что-то не нашел такой услуги у МТС

есть такое, но работает очень тупо
письмо может прийти а может и нет
может прийти завтра или через час

у билайна адрес 8068XXXXXXX@sms.beeline.ua
у мтс чет типо 8050xxxxxxx@mts.com.ua

ZoraX
17-10-2009, 07:32
Дай плз ссылку где качнуть такой MC и как быть если из telnet отправлять?

Не обязательно, когда запускаешь putty из винды..в настройках надо указать кодировку cp-1251, mc - не обязателен..после этого русский текст воспринимается.

колбаскин
17-10-2009, 15:47
Не обязательно, когда запускаешь putty из винды..в настройках надо указать кодировку cp-1251, mc - не обязателен..после этого русский текст воспринимается.

Спасибо! оказалось все горазно проще....

ЗЫ я уже задавал вопрос, но ответа небыло
можно ли как-то забиндить в роутере отправку смс не по /opt/etc/sendsms/send.php , а по команде
sms 38068XXXXXXX текст

andy-oliver
29-10-2009, 23:19
никто не сталкивался с
Ваше сообщение от 13:06 на номер 79161111111 доставлено не было, т.к. телефон указан в неверном формате. Правильный формат российских номеров: +71231234567. Отредактировать или добавить номер для этого абонента Вы можете, нажав кнопку 'Анкета' в правом верхнем углу этого окна.


Немного с запазданием (почти год прошел), но может актуально кому...
В телефонии есть национальный (national ) и международный (international) планы нумерации.
В конфигах там нет параметра ton?
В национальном плане нумерации ton=0, т.е. + не подставляем к номеру, у нас национальный формат 8910ххххххх, в интернациональном же наоборот, ton=1, т.е. перед номером будет подставляться "+", +7910ххххххх.

За идею, спасибо! Надо будет себе смс-банкинг настроить, у меня бесплатно только е-майл приходит о движении средств.

Shushik
02-12-2009, 16:36
Еще раз повторюсь. Кто-нибудь организовывал рассылку прогноза погода по этой методе? http://habrahabr.ru/blogs/linux/76867/

Merlin68
13-12-2009, 12:09
Пытаюсь реализовать отсылку СМС через yandex.ru на 38(код)номертелефона@sms.kyivstar.net.
Всё настроено, через терминал из командной строки отправляется

echo -e "Router is power on " | sendmail 38хххххххххх@sms.kyivstar.net -f yyyyyyy@yandex.ru
Создал файл в \Router\all\opt\etc\init.d\S99RouterStart, сделал его исполняемым и наполнил содержимым:

#!/bin/sh
#
# Отправляем СМС на телефон с отчётом, что роутер загрузился

d=`date +'%d/%m/%y - %T'`
sleep 15s
echo -e "Router is power on at ${d}" | sendmail 38хххххххххх@sms.kyivstar.net -f yyyyyyy@yandex.ru
Если файл запускаем вручную - СМС отправляется. Но при перегрузке роутера ничего не отправляется.
Также добавил в конец \Router\all\usr\local\sbin\post-firewall строчки

#Отправляем СМС на телефон с полученным IP
sleep 15s
echo -e "New connection established, WAN IP address is $2'" | sendmail 38xxxxxxxxxx@sms.kyivstar.net -f yyyyyyy@yandex.ru
И это при перегрузке не отправляется, хотя вручную, с командной строки всё прекрасно уходит.
Коллеги, где грабли ?
Что подправить, чтобы всё работало ?

Pablo Escobar
13-12-2009, 18:48
rc.unslung можно перезапустить ручками, посмотреть, что будет

Merlin68
13-12-2009, 20:26
rc.unslung можно перезапустить ручками, посмотреть, что будет

При перезапуске rc.unslung ручками \Router\all\opt\etc\init.d\S99RouterStart отрабатывает нормально и присылает СМС. При перезагрузке роутера, что програмно, что с выключением питания, СМС не отправляются. Уже весь мозг сломал.... Как жа поправить-то ?

Pablo Escobar
13-12-2009, 20:59
При перезапуске rc.unslung ручками \Router\all\opt\etc\init.d\S99RouterStart отрабатывает нормально и присылает СМС. При перезагрузке роутера, что програмно, что с выключением питания, СМС не отправляются. Уже весь мозг сломал.... Как жа поправить-то ?

напишите, чтоб он при запуске в лог писал инфу - типа
starting samba
..
samba started
и т.д.

мож локализуем проблему

Merlin68
13-12-2009, 21:29
напишите, чтоб он при запуске в лог писал инфу - типа
starting samba
..
samba started
и т.д.

мож локализуем проблему

Подскажите, плиз, как это написать?
Я ещё не столь продвинутый линуксоид, я только учусь....

Pablo Escobar
13-12-2009, 21:39
Подскажите, плиз, как это написать?
Я ещё не столь продвинутый линуксоид, я только учусь....

в rc.unslung должны быть строки вида

# Write to syslog
logger -t rc.unslung "$1 service $i
я приложу свой, посмотрите

Merlin68
13-12-2009, 21:59
в rc.unslung должны быть строки вида



У меня есть эти строки. Где лог искать ?

Pablo Escobar
13-12-2009, 22:01
У меня есть эти строки. Где лог искать ?

в вебморде он точно есть - в разделе status & log

Merlin68
13-12-2009, 22:13
Очистил лог в веб-морде и перегрузил роутер ( с выкл. питания). Вот что получил:(прикрепляю в Log.txt)5706
По логу всё отработало.... А СМС нет....

Pablo Escobar
13-12-2009, 22:17
Очистил лог в веб-морде и перегрузил роутер ( с выкл. питания). Вот что получил:(прикрепляю в Log.txt)5706
По логу всё отработало.... А СМС нет....

вы сначала отправляете смс, а потом роутер коннектится к isp :D


Dec 13 22:18:53 rc.unslung: start service /opt/etc/init.d/S99RouterStart
Dec 13 22:18:57 dnsmasq[73]: DHCPDISCOVER(br0) 00:26:5e:53:8b:36
Dec 13 22:18:57 dnsmasq[73]: DHCPOFFER(br0) 192.168.68.50 00:26:5e:53:8b:36
Dec 13 22:18:57 dnsmasq[73]: DHCPREQUEST(br0) 192.168.68.50 00:26:5e:53:8b:36
Dec 13 22:18:57 dnsmasq[73]: DHCPACK(br0) 192.168.68.50 00:26:5e:53:8b:36 merlinhp
Dec 13 22:19:00 PPTP: connect to ISP
Dec 13 22:19:17 ntp client: Synchronizing time with ntp.time.in.ua ...

Merlin68
13-12-2009, 22:23
А как правильно прописать в \Router\all\opt\etc\init.d\S99RouterStart и \Router\all\usr\local\sbin\post-firewall отправку СМС только после коннекта к ISP ? Вроди всё делаю, как прописано в данной ветке....

Pablo Escobar
13-12-2009, 22:29
А как правильно прописать в \Router\all\opt\etc\init.d\S99RouterStart и \Router\all\usr\local\sbin\post-firewall отправку СМС только после коннекта к ISP ? Вроди всё делаю, как прописано в данной ветке....

попробуйте задержку поставить перед смс и поиграться с ней
sleep скоко-то

Merlin68
13-12-2009, 22:54
попробуйте задержку поставить перед смс и поиграться с ней
sleep скоко-то

Поставил заделжку 45 сек. (Sleep 45s)
В логе получил:


Dec 13 22:59:09 rc.unslung: start service /opt/etc/init.d/S99RouterStart
Dec 13 22:59:47 PPTP: connect to ISP

Как видим, коннект к ISP происходит _после_ того, как истекает время задержки и отрабатывает S99RouterStart.
В \Router\all\usr\local\sbin\post-firewall также перед отсылкой поставил задержку 45 сек. Не отрабатывает.
Коллеги, как же всё-таки сделать правильно отсылку ?

Pablo Escobar
13-12-2009, 23:15
Поставил заделжку 45 сек. (Sleep 45s)
В логе получил:


Dec 13 22:59:09 rc.unslung: start service /opt/etc/init.d/S99RouterStart
Dec 13 22:59:47 PPTP: connect to ISP

Как видим, коннект к ISP происходит _после_ того, как истекает время задержки и отрабатывает S99RouterStart.
В \Router\all\usr\local\sbin\post-firewall также перед отсылкой поставил задержку 45 сек. Не отрабатывает.
Коллеги, как же всё-таки сделать правильно отсылку ?

ваш вариант?
http://wl500g.info/showpost.php?p=91632&postcount=1

Merlin68
13-12-2009, 23:41
ваш вариант?
http://wl500g.info/showpost.php?p=91632&postcount=1

Спасибо, Брат ! Это именно оно ! Сам бы я ни за что не допёр !
Прописал запуск /opt/sbin/sendmail, и всё поехало !

Merlin68
13-12-2009, 23:46
Бывают ситуации, когда роутер не ребутиться, а коннект с провайдером рвётся/восстанавливается.
Как сделать отсылку СМС при таком восстановлении соединения ?
Желательно, чтобы в СМС приходило нечто такое : "Соединение разорвано ДД.ММ.ГГГ - ЧЧ:ММ и восстановлено ДД.ММ.ГГГ - ЧЧ:ММ".
Такое как можно реализовать ?

Pablo Escobar
13-12-2009, 23:57
Бывают ситуации, когда роутер не ребутиться, а коннект с провайдером рвётся/восстанавливается.
Как сделать отсылку СМС при таком восстановлении соединения ?
Желательно, чтобы в СМС приходило нечто такое : "Соединение разорвано ДД.ММ.ГГГ - ЧЧ:ММ и восстановлено ДД.ММ.ГГГ - ЧЧ:ММ".
Такое как можно реализовать ?

кроном пинговать кого-нибудь и мыло по отсустсвию пинга.
других путей не знаю.
или лог парсить.

Merlin68
14-12-2009, 00:03
кроном пинговать кого-нибудь и мыло по отсустсвию пинга.
других путей не знаю.
или лог парсить.

Думаю, не так всё просто. Нет пинга - вряд ли мыло отправиться....:)
Нужно анализировать, когда пропал пинг, затем, как только появился, сформировать СМС со временем, когда пинг пропал и временем, когда появился, СМС отправить, и на этом пока успокоиться (до следующего реконнекта). Жаль, линух только-только начал осваивать (даже на второй ноут дома убунту поставил), не осилить мне поэтому такую задачу. Мож, кто поможет? Вещь ведь в хозяйстве нужная... :)

Pablo Escobar
14-12-2009, 00:12
зачем нужная? зачем тебе реалтайм?
а так - просто формируй лог падений и когда линк поднимется - отправляй

expollux
30-12-2009, 18:04
Попробовал этот скрипт. Прописал, естественно, свой логин и пароль, запускаю его, в ответ ругается:

PHP Notice: Undefined offset: 27 in /opt/etc/sendsms/send.php on line 105
PHP Notice: Undefined offset: 11 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 10 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
login error
и ничего не отсылается
Если в строчке

$mra->login($login[$login_num],$pass[$login_num]) or die("login error");
явно прописываю логин и пароль, отрабатывает без ошибок.
Чего оно от меня хочет?

xz_kostyan
06-01-2010, 21:13
В районе последних чисел декабря отвалился скрипт отправки смс. Как выяснилось, сменился протокол. Был найден новый класс для обмена информацией с сервером. Основные отличия текущей версии от предыдущей:
- для отправки смс используется кодировка UTF-16LE вместо CP1251;
- для хранения данных внутри класса используется UTF-8;
- порядок байт в пакетах, отсылаемых серверу, -- Little Endian.

В исходной версии класса для преобразования кодировок используется iconv, в моей версии класса -- mb_convert_encoding. Ввиду, того, что от CP1251 отказались из файла send.php были убраны функции отвечающие за перекодировку. Теперь все входные данные должны быть в UTF-8.

Источник класса:
http://forum.eugen.su/showthread.php?t=129

Обновленная версия во вложении. Неплохо было, если бы Markiz обновил свой пост-руководство.

Да, не знаю как раньше, но теперь смс, содержащие url, иногда не доходят(похоже на фильтрацию спама). Но критерий фильтрации я так и не понял.

P.S.: Это одна из моих первых проб пера в php, прошу сильно не пинать.

P.P.S.: Как пишут тут (http://wl500g.info/showpost.php?p=177816&postcount=1364), надо обновить php и обновить(поставить) php-mbstring.

valerakvb
06-01-2010, 22:22
В районе последних чисел декабря отвалился скрипт отправки смс. Как выяснилось, сменился протокол. Был найден новый класс для обмена информацией с сервером. Основные отличия текущей версии от предыдущей:
- для отправки смс используется кодировка UTF-16LE вместо CP1251;
- для хранения данных внутри класса используется UTF-8;
- порядок байт в пакетах, отсылаемых серверу, -- Little Endian.

В исходной версии класса для преобразования кодировок используется iconv, в моей версии класса -- mb_convert_encoding. Ввиду, того, что от CP1251 отказались из файла send.php были убраны функции отвечающие за перекодировку. Теперь все входные данные должны быть в UTF-8.

Источник класса:
http://forum.eugen.su/showthread.php?t=129

Обновленная версия во вложении. Неплохо было, если бы Markiz обновил свой пост-руководство.

Да, не знаю как раньше, но теперь смс, содержащие url, иногда не доходят(похоже на фильтрацию спама). Но критерий фильтрации я так и не понял.

P.S.: Это одна из моих первых проб пера в php, прошу сильно не пинать.

Спасибо !!! Работает ! Буду встраивать в новую версию скрипта http://wl500g.info/showthread.php?t=21889

rasvad
07-01-2010, 19:05
Логины обязательно mail.ru или в поддерживаемых ими доменах (inbox.ru bk.ru и list.ru ) тоже можно использовать ?

xz_kostyan
07-01-2010, 19:31
rasvad, проверил на bk.ru. Работает. Подозреваю, что с остальными тоже будет работать.

trsw
08-01-2010, 18:15
у меня не работает, класс заменил

HUB107
09-01-2010, 17:30
у меня не работает, класс заменил

подтверждаю

xz_kostyan
10-01-2010, 18:53
Как пишут тут (http://wl500g.info/showpost.php?p=177816&postcount=1364), надо обновить php и поставить php-mbstring.
У меня стояла не самая свежая версия php. php-mbstring вроде php утянул автоматом.

HUB107
10-01-2010, 21:56
Послу установки php-mbstring и впрямь заработало :-) Кстати никто не встречал тут скриптика для забирания почты с сервера типа маил.ру и пересылке её смс-кой?

xz_kostyan
10-01-2010, 22:50
Я планирую перенести нужное из скрипта с php на python, прикрутить отсылку больших смс (разбивая на части). Собственно, уже почти перенес. Если будет не лень займусь и почтой.

HUB107
10-01-2010, 23:35
Если будет не лень займусь и почтой.

Это будет хорошим подспорьем платным mail2sms сервисам :D

GUID
11-01-2010, 10:28
Я планирую перенести нужное из скрипта с php на python
т.е. продублировать функционал исходного класса (Евгения) ? А смысл? А поддержка (ясно ведь, что протокол будет постоянно меняться) ?

прикрутить отсылку больших смс (разбивая на части).
(imho) сюда же нужно добавить "дополнение" короткого смс, до максимальной длины. Чтобы убрать дополнительный текст, который вставляет mail.ru

займусь и почтой.
а.... это Вы о чем?

Zein
11-01-2010, 15:56
СМС-оповещение перестало работать.
Причем никаких действий с моей стороны не было. В декабре работало - в январе перестало :)
Переустановил пакет (который за СМС отвечает) - проблема не исчезла.
Все аккаунты на майл ру ессн живые

Может с нового года мейлрушники заблокировали отправку смс?

vectorm
11-01-2010, 16:16
СМС-оповещение перестало работать.
Причем никаких действий с моей стороны не было. В декабре работало - в январе перестало :)
Переустановил пакет (который за СМС отвечает) - проблема не исчезла.
Все аккаунты на майл ру ессн живые

Может с нового года мейлрушники заблокировали отправку смс?
Перенес в нужную тему, тут ответ написан уже давно.

xz_kostyan
18-01-2010, 15:33
UPD: Последняя версия тут (http://wl500g.info/showthread.php?t=22891).

Cкрипт теперь на python.
Добавлено:
- отсылка больших смс путем дробления на части и посылки каждой отдельно. Большие смс с русским текстом тоже обрабатываются;
- убран мусор, добавляемый mail.ru в конец сообщения;
- список адресов электронной почты перебирается по кругу, ищутся те, с которого можно послать;
- создана веб-страница для отправки смс с помощью веб-интерфейса (тестировал с lighttpd);
- для ускорения работы скрипта время возможной отправки смс сохраняется в файл;

Установка скрипта: скопируйте содержимое архива sms в какую-нибудь директорию.
Сделайте скрипт send.py исполняемым.


chmod +x send.py

Для установки Python в шелле выполните:


ipkg update
ipkg install python3

Отправка смс таким же образом как и в случае с php:


./send.py 7916xxxxxxx message


Список email-ов задается в файле sender.py.
Если задано мало email-ов, но с них еще можно отправить, скрипт висит в памяти и отправляет каждую минуту. Поэтому лучше задать штук 5 чтобы не было ожидания.

Установка веб-интерфейса (сервер lighttpd): распакуйте содержимое архива webInterface в корень веб сервера (у меня /opt/share/www). В файле sendFromWeb.py задайте переменной sender_path свой путь до директории с файлом send.py.
В файле конфига lighttpd (/opt/etc/lighttpd/lighttpd-ssl.conf - у меня используется ssl. Или /opt/etc/lighttpd/lighttpd.conf если без ssl) необходимо секцию cgi модифицировать следующим образом:


#### CGI module
cgi.assign = ( ".pl" => "/opt/bin/perl",
".py" => "/opt/bin/python3",
".cgi" => "/bin/sh" )


По желанию можно настроить аутентификацию в том же конфиге. Вот пример моей


auth.require = ( "/" =>
(
"method" => "digest",
"realm" => "realm_can_access_to_root",
"require" => "user=user_can_access_to_root"
)
)

$HTTP["url"] =~ "^/rtorrent"{
auth.require = ( "/rtorrent" =>
(
"method" => "digest",
"realm" => "rtorrent",
"require" => "valid-user"
)
)
}

$HTTP["url"] =~ "^/sms"{
auth.require = ( "/sms" =>
(
"method" => "digest",
"realm" => "sms",
"require" => "valid-user"
)
)
}

Про аутентификацию подробнее тут (http://wl500g.info/showpost.php?p=90459&postcount=343).

Не забудьте установить локаль, если не установлена.


export LANG='ru_RU.UTF-8'


Пробуйте.
P.S.: Версия на php все еще работает. Тут веб интерфейс + посылка больших сообщений.
Изменится протокол - возьмем сниффер и будем допиливать.

GUID
18-01-2010, 16:31
Cкрипт теперь на python.
Добавлено: [skip]
Спасибо! Это большой шаг вперед.

Тут видимо опечатка:


В файле конфига lighttpd (/opt/etc/lighttpd/lighttpd-ssl.conf - у меня используется ssl. Или /opt/etc/lighttpd/lighttpd-ssl.conf если без ssl) необходимо секцию cgi модифицировать следующим образом:


Просьба: Вы не могли бы "прорекламировать" python?
Интересует:
- для каких задач Вы его используете на роуторе?
- чем он лучше (для Вас) php?
(ни о каких с.в. речи не идет, просто хочется услышать мнение человека, которому нравится python)

колбаскин
18-01-2010, 19:23
Сделал вроде как все по инструкции, но при отправке через telnet


[False, False, False, False]
Traceback (most recent call last):
File "/tmp/harddisk/www/sms/send.py", line 27, in <module>
print(s.send_sms(phone, message))
File "/tmp/mnt/disc0_3/www/sms/sender.py", line 179, in send_sms
if self.send_sms_part(phone, temp_message[:size]):
File "/tmp/mnt/disc0_3/www/sms/sender.py", line 111, in send_sms_part
list = agent.is_contact_list(packet)
File "/tmp/mnt/disc0_3/www/sms/mrim.py", line 466, in is_contact_list
phone = str(self.get_bytes_from_packet(packet, dlen), 'UTF-8')
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 3-5: invalid dat

При отправке через веб интерфейс

Результат
[False, False, False, False]

Результат для 4х ящиков
Для одного ящика ответ [False]

где мог накосячить? у меня 11 ящиков с одинаковыми паролями

xz_kostyan
18-01-2010, 20:02
колбаскин
Команда export что говорит? Переменная LANG установлена?

export LANG='ru_RU.UTF-8'

колбаскин
18-01-2010, 20:19
колбаскин
Команда export что говорит? Переменная LANG установлена?

export LANG='ru_RU.UTF-8'

Куда прописать нужно? напиши, я попробую

xz_kostyan
18-01-2010, 20:25
export выполните в шелле.
Если LANG не установлено, то тоже в шелле выполните:

export LANG='ru_RU.UTF-8'

А вообще эту строку лучше прописать в /etc/profile, чтобы при загрузке подхватывалось.

колбаскин
18-01-2010, 20:47
Лыжи не едут

Дописал в /etc/profile
export LANG='ru_RU.UTF-8'

перегрузился



/tmp/harddisk/www/sms/send.py 38068xxxxxxx hjijifjiodfjgoijiodfgjidofg
[False, False, False, False]
Traceback (most recent call last):
File "/tmp/harddisk/www/sms/send.py", line 27, in <module>
print(s.send_sms(phone, message))
File "/tmp/mnt/disc0_3/www/sms/sender.py", line 179, in send_sms
if self.send_sms_part(phone, temp_message[:size]):
File "/tmp/mnt/disc0_3/www/sms/sender.py", line 111, in send_sms_part
list = agent.is_contact_list(packet)
File "/tmp/mnt/disc0_3/www/sms/mrim.py", line 466, in is_contact_list
phone = str(self.get_bytes_from_packet(packet, dlen), 'UTF-8')
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 3-5: invalid dat
a
[maxya@maxya_wi_fi root]$

xz_kostyan
18-01-2010, 20:55
GUID, на роутере я использую питон пока что только для смс, больше применения не придумал пока.
Библиотек под питон гораздо больше, чем под php.
Вот (http://wl500g.info/showthread.php?t=16377), например, питон использован для скачивания подкастов.
Python, хорош и в качестве интерпритатора/калькулятора. Удобно писать на нем сценарии, когда шелла уже не хватает, а писать что-то на чем-то С/С++ лень. Да и PHP, все же "препроцессор гипертекста", хоть и может применяться к "повседневным задачам".

колбаскин
18-01-2010, 21:00
Это все хорошо, но ты мог бы полную инструкцию к установке сделать
что нужно для того чтобы работало, то что у тебя написано я сделал
но результат сводится в ошибки и смс не отправляет!

xz_kostyan
19-01-2010, 10:45
В итоге все работает, пока что. Дело было в неправильном определении кодировки (сервер отдавал информацию для некоторых контактов все еще в win-1251). Архив был обновлен вчера вечером.

колбаскин
19-01-2010, 18:47
Архив был обновлен вчера вечером.

Да спасибо! но майлру опять что-то придумали с ограничениями по отправке смс

Ощущение что по 5 на один номер в сутки

abufct
20-01-2010, 17:34
У меня странно ведет себя отправка смс. Сообщения на английском не доходят. Если в сообщении есть русские буквы - доходит.
php - 5.2.8-1 -
php-fcgi - 5.2.8-1 -
php-mbstring - 5.2.9-5

колбаскин
20-01-2010, 17:40
У меня странно ведет себя отправка смс. Сообщения на английском не доходят. Если в сообщении есть русские буквы - доходит.


Также!!! приходит или написанное на русском или цифры(но тогда пишет в конце что с майл ру)

abufct
20-01-2010, 17:46
Например
Торрент test скачан
приходит, а
Torrent test completed
- нет

колбаскин
20-01-2010, 19:49
Ты знаешь обманул, приходит и кирилица и латиница

qqwer2001
21-01-2010, 10:19
Опять с смс проблема.
Позавчера было все нормально.Сейчас при запуске скрипта - login error.
Аккаунты на mail.ru сделал новые.Все равно ошибка - login error.Скрипт на php.

GUID
21-01-2010, 13:11
Все равно ошибка - login error.Скрипт на php.
Подтверждаю

xz_kostyan
21-01-2010, 17:48
У меня тоже самое, лавочку прикрывают. :) Похоже стали банить по user_agent и user_agent_descr. Прикинемся мейл-агентом получше.
Поправьте в class.mrim.php:


var $user_agent = 'MRA 5.6 (build 3278);'
var $user_agent_descr = 'client=\"magent\" version=\"5.6\" build=\"3278\"'

Во вложении файл для тех, кому лень вручную править.

qqwer2001
21-01-2010, 19:37
У меня тоже самое, лавочку прикрывают. :) Похоже стали банить по user_agent и user_agent_descr. Прикинемся мейл-агентом получше.
Поправьте в class.mrim.php:


var $user_agent = 'MRA 5.6 (build 3278);'
var $user_agent_descr = 'client=\"magent\" version=\"5.6\" build=\"3278\"'

Во вложении файл для тех, кому лень вручную править.
Работает.Спасибо.

valerakvb
21-01-2010, 22:11
У меня тоже самое, лавочку прикрывают. :) Похоже стали банить по user_agent и user_agent_descr. Прикинемся мейл-агентом получше.
Поправьте в class.mrim.php:


var $user_agent = 'MRA 5.6 (build 3278);'
var $user_agent_descr = 'client=\"magent\" version=\"5.6\" build=\"3278\"'

Во вложении файл для тех, кому лень вручную править.

Спасибо. Работает. Изменил скрипт (http://wl500g.info/showthread.php?t=21889).

akm2008
24-01-2010, 20:26
Делал все по инструкции в ответ в веб интерфейсе получил


500 - Internal Server Error

akm2008
24-01-2010, 21:04
Делал все по инструкции в ответ в веб интерфейсе получил


500 - Internal Server Error

Разобрался заработало :D

TikiTak
25-01-2010, 11:11
Разобрался заработало :D

так скажи пожалуйста что было - у меня то же самое, но найти проблему не смог...

колбаскин
25-01-2010, 18:14
Разобрался заработало :D

Если разобрался, напиши в чем причина была! может у кого-то также

xz_kostyan
26-01-2010, 15:08
Например
Торрент test скачан
приходит, а
Torrent test completed
- нет

Да, проблема действительно имела место. Обновил пост с архивом.

TikiTak
26-01-2010, 19:57
так скажи пожалуйста что было - у меня то же самое, но найти проблему не смог...

проблема решилась - надо поправить пути к sendsms.php (или py)

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

MFMan
27-01-2010, 08:59
Кто-нть реализовал оповещения о скачанных торрентах для transmission 1.76?
Вот нашёл оповещения по почте:


#!/bin/sh
# Script that checks for finished downloads in Transmission and
# sends email to a specified user.
# This code placed into public domain

# Requires:
# GNU mailutils | bsd-mailx (does not work with heirloom-mailx)
# lockfile-progs
# transmission-cli

# History:
#----------------------------------------------------------------------------
# Date | Author <EMail> | Description |
#----------------------------------------------------------------------------
# 04 May 2009 | A.Galanin <gaa.nnov AT mail.ru> | Creation |
# 04 May 2009 | A.Galanin <gaa.nnov AT mail.ru> | Usage moved before locking|
#----------------------------------------------------------------------------

# default configuration options
# put it into config file ~/.checkFinishedTransmissionDownloads/config
HOST=localhost
PORT=9091

RPC_AUTH=1
USER=username
PASS=password

MAILTO=root
FROM=torrent-checker
MAIL_CONTENT="Downloading of \"%s\" has been finished.\nGo to %s to make an approriate action.\n"

#------------------------------------------------------------------------------

# files
FILEPATH="$HOME/.checkFinishedTransmissionDownloads"
CONFIG_FILE="$FILEPATH/config"
NOTIFY_FILE="$FILEPATH/notified"
ALL_FILE="/tmp/checkFinishedTransmissionDownloads.all"
TMP_FILE="/tmp/checkFinishedTransmissionDownloads.tmp"
LOCK_FILE="/tmp/checkFinishedTransmissionDownloads"

[ -f "$CONFIG_FILE" ] && . "$CONFIG_FILE"

#------------------------------------------------------------------------------

# Call transmission-remote with corresponding parameters
callTransmission () {
if [ "$RPC_AUTH" -eq 0 ]
then
transmission-remote "$HOST":"$PORT" "$@"
else
transmission-remote "$HOST":"$PORT" -N "$TMP_FILE" "$@"
fi
}

# Remove lock and temporary files, exit with code $1
exitAndClean () {
kill "$LOCK_PID"
lockfile-remove "$LOCK_FILE"
rm -f "$TMP_FILE" "$ALL_FILE"

exit "$1"
}

# initialization
if [ $# != 0 ]
then
echo "$0: check for finished downloads in Transmission"
echo "USAGE: $0"
exit 1
fi

lockfile-create "$LOCK_FILE" || (echo "Unable to lock lockfile!"; exitAndClean 2)
lockfile-touch "$LOCK_FILE" &
LOCK_PID="$!"

trap "exitAndClean 1" HUP INT QUIT KILL

mkdir -p "$FILEPATH"
touch "$NOTIFY_FILE" "$TMP_FILE"
echo -n > "$ALL_FILE"
chmod 600 "$TMP_FILE" "$ALL_FILE"
# generate netrc file for RPC authorisation
printf "machine %s\nlogin %s\npassword %s\n" "$HOST" "$USER" "$PASS" > "$TMP_FILE"

# main
callTransmission -l | gawk '{
if ($1 != "Sum:" && $1 != "ID") {
print $1,$2
}
}' | while read id percent
do
reply="`callTransmission -t "$id" -i | grep -E '^ Name|^ Hash'`"

name="`echo "$reply" | grep '^ Name' | cut -c 9-`"
hash="`echo "$reply" | grep '^ Hash' | cut -c 9-`"

# check that notification is not yet sent
grep -q "$hash" "$NOTIFY_FILE"
if [ $? = 1 -a "$percent" = "100%" ]
then
printf "$MAIL_CONTENT" "$name" "http://$HOST:$PORT/" | \
mailx $MAILTO -s "Torrents info: $name" -a "From: $FROM"
echo "$hash" >> "$NOTIFY_FILE"
fi
echo "$hash" >> "$ALL_FILE"
done

# remove deleted torrents from sent notifications list
sort "$NOTIFY_FILE" > "$TMP_FILE"
mv "$TMP_FILE" "$NOTIFY_FILE"

sort "$ALL_FILE" > "$TMP_FILE"
mv "$TMP_FILE" "$ALL_FILE"

comm -1 -2 "$NOTIFY_FILE" "$ALL_FILE" > "$TMP_FILE"
mv "$TMP_FILE" "$NOTIFY_FILE"

exitAndClean 0

Можно конечно и из этого допилить, но может быть есть у кого готовый?
И ещё скиньте плиз скрипт запуска для transmission-daemon(чтобы старт|стоп и тэ дэ работали))

DanGer
20-02-2010, 16:43
проблема решилась - надо поправить пути к sendsms.php (или py)

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

Не могли бы Вы описать где нужно поправить путь? Спасибо!

falselight
23-02-2010, 04:36
Установил я только 2 программы
Самба и SENDSMS php
http://192.168.1.1:901/ - не пашет.
Что делать с самба как завести её ?
SENDSMS php: Login Error

valek101
28-02-2010, 05:48
Мммм полезная штука, как бы этот скрипт приспособить как напоминалку например: 7 часов вечера каждый день он тебе смс присылает харе работать пора домой а с утра будит вставай лодырь на работу пора:):):)

valek101
28-02-2010, 05:57
-интерфейс командной строки, при желании могу сделать веб обертку, хотя в этом ничего сложного.
Вот бы обертку для того что после установки этого скрипта получается (http://wl500g.info/showthread.php?t=21889&highlight=telnet)
Чтоб можно было через веб интерфейс выбирать настройки отправки смс о перезагрузке роутера о закачки торрента о закачке файла через Download Engine и тому подобных приблуд и все в одной веб морде зделать где и смс отправлять

johny_c
28-02-2010, 08:03
Интересно было после загрузки роутера получать в сообщении внешний IP адрес. У меня он динамический и при переподключении есть вероятность, что поменяется на новый.
Как это можно реализовать?

vectorm
28-02-2010, 11:17
Интересно было после загрузки роутера получать в сообщении внешний IP адрес. У меня он динамический и при переподключении есть вероятность, что поменяется на новый.
Как это можно реализовать?
А поискать никак???
Минимум 2 реализации только в русскоязычной ветке.
Плюс DynDNS никто не отменял.

Jogi
17-03-2010, 13:20
И снова login error. Снова смена протокола ?

JHBTYN
17-03-2010, 13:23
У меня все нормально, только что пробовал.

mobilru
18-03-2010, 00:11
посмотрите на лог что нетак? мне кажется зациклилась


Mar 17 21:05:01 /opt/sbin/cron[4467]: (root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins )
Mar 17 21:05:01 /opt/sbin/cron[4468]: (root) CMD (if [ -x /opt/bin/vnstat ] && [ `ls /opt/var/lib/vnstat/ | wc -l` -ge 1 ]; then /opt/bin/vnstat -u; fi)
Mar 17 21:05:01 /opt/sbin/cron[4466]: (root) MAIL (mailed 68 bytes of output but got status 0x0001 )
Mar 17 21:10:01 /opt/sbin/cron[4549]: (root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins )
Mar 17 21:10:01 /opt/sbin/cron[4550]: (root) CMD (if [ -x /opt/bin/vnstat ] && [ `ls /opt/var/lib/vnstat/ | wc -l` -ge 1 ]; then /opt/bin/vnstat -u; fi)
Mar 17 21:10:01 /opt/sbin/cron[4548]: (root) MAIL (mailed 68 bytes of output but got status 0x0001 )
Mar 17 21:11:20 dnsmasq-dhcp[69]: DHCPINFORM(br0) 192.168.1.213 00:17:31:91:1d:b8
Mar 17 21:11:20 dnsmasq-dhcp[69]: DHCPACK(br0) 192.168.1.213 00:17:31:91:1d:b8 ooo-clon
Mar 17 21:15:01 /opt/sbin/cron[4637]: (root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins )
Mar 17 21:15:01 /opt/sbin/cron[4638]: (root) CMD (if [ -x /opt/bin/vnstat ] && [ `ls /opt/var/lib/vnstat/ | wc -l` -ge 1 ]; then /opt/bin/vnstat -u; fi)
Mar 17 21:15:01 /opt/sbin/cron[4636]: (root) MAIL (mailed 68 bytes of output but got status 0x0001 )
Mar 17 21:20:01 /opt/sbin/cron[4719]: (root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins )
Mar 17 21:20:01 /opt/sbin/cron[4720]: (root) CMD (if [ -x /opt/bin/vnstat ] && [ `ls /opt/var/lib/vnstat/ | wc -l` -ge 1 ]; then /opt/bin/vnstat -u; fi)
Mar 17 21:20:02 /opt/sbin/cron[4718]: (root) MAIL (mailed 68 bytes of output but got status 0x0001 )
Mar 17 21:25:01 /opt/sbin/cron[4806]: (root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins )
Mar 17 21:25:01 /opt/sbin/cron[4807]: (root) CMD (if [ -x /opt/bin/vnstat ] && [ `ls /opt/var/lib/vnstat/ | wc -l` -ge 1 ]; then /opt/bin/vnstat -u; fi)
Mar 17 21:25:02 /opt/sbin/cron[4805]: (root) MAIL (mailed 68 bytes of output but got status 0x0001 )
Mar 17 21:30:01 /opt/sbin/cron[4888]: (root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins )
Mar 17 21:30:01 /opt/sbin/cron[4889]: (root) CMD (if [ -x /opt/bin/vnstat ] && [ `ls /opt/var/lib/vnstat/ | wc -l` -ge 1 ]; then /opt/bin/vnstat -u; fi)
Mar 17 21:30:02 /opt/sbin/cron[4887]: (root) MAIL (mailed 68 bytes of output but got status 0x0001 )
Mar 17 21:31:20 dnsmasq-dhcp[69]: DHCPINFORM(br0) 192.168.1.213 00:17:31:91:1d:b8
Mar 17 21:31:20 dnsmasq-dhcp[69]: DHCPACK(br0) 192.168.1.213 00:17:31:91:1d:b8 ooo-clon
Mar 17 21:35:01 /opt/sbin/cron[4975]: (root) CMD (/opt/bin/run-parts /opt/etc/cron.5mins )
Mar 17 21:35:01 /opt/sbin/cron[4976]: (root) CMD (if [ -x /opt/bin/vnstat ] && [ `ls /opt/var/lib/vnstat/ | wc -l` -ge 1 ]; then /opt/bin/vnstat -u; fi)
Mar 17 21:35:01 /opt/sbin/cron[4974]: (root) MAIL (mailed 68 bytes of output but got status 0x0001 )

Tarasishe
19-04-2010, 11:26
Доброе время суток, а подскажите пожалуйста, я хочу реализовать оповещение по СМС со своего сайта, скажем при "заказе" ... я так понимаю, что на send.php мне нужно отправить телефон и сообщение... как сделать... средствами php ?

SancheSZ
20-04-2010, 17:03
Ребят, запутался немного - где взять актуальную версию скрипта?

Не отсылается...

Делал так:
взял класс и сам скрипт из этого поста

В файле send.php изменил логин и пароль на свои
Обновил php и php-mbstring.
http://wl500g.info/showpost.php?p=177458&postcount=144

Запускаю:

/opt/etc/sendsms/send.php 7916xxxxxxx test
скрипт отрабатывает без сообщения об ошибки, но ничего не приходит.
к слову, если замерить логин и пароль на неверные - выдается login error.

пробовал также запускать таким образом:
php /opt/etc/sendsms/send.php 7916xxxxxxx test

ничего не меняется

пробовал номер задавать в формате +7916xxxxxxx (добавлял + перед 7)
тоже не помогает

где грабли?

popow_sergei
20-04-2010, 18:15
Ребят, запутался немного - где взять актуальную версию скрипта?

Не отсылается...

Делал так:
взял класс и сам скрипт из этого поста

В файле send.php изменил логин и пароль на свои
Обновил php и php-mbstring.
http://wl500g.info/showpost.php?p=177458&postcount=144

Запускаю:

/opt/etc/sendsms/send.php 7916xxxxxxx test
скрипт отрабатывает без сообщения об ошибки, но ничего не приходит.
к слову, если замерить логин и пароль на неверные - выдается login error.

пробовал также запускать таким образом:
php /opt/etc/sendsms/send.php 7916xxxxxxx test

ничего не меняется

пробовал номер задавать в формате +7916xxxxxxx (добавлял + перед 7)
тоже не помогает

где грабли?

такая же беда . не шлет и всё тут . где глянуть логи ?

qwest
21-04-2010, 14:02
такая же беда . не шлет и всё тут . где глянуть логи ?
А версию клиента (user_agent и user_agent_descr) (http://wl500g.info/showpost.php?p=179846&postcount=177)исправили?

popow_sergei
21-04-2010, 18:17
А версию клиента (user_agent и user_agent_descr) (http://wl500g.info/showpost.php?p=179846&postcount=177)исправили?

все равно не шлет . банят наверно .

SancheSZ
21-04-2010, 23:34
Собсно у меня изначально такой user-agent и стоял.
Не шлет - просто ничего не приходит, ошибки логина не выдает.

Zein
28-04-2010, 12:01
Прочитал все ветки.
Так реализована отправка на украинские номера?
Сейчас попробовал - пишет "номер должен быть в формате 7916******"

То есть все, что начинается с 38 - скрипт не хавает.

Копать или это навсегда?

Pablo Escobar
08-05-2010, 14:40
1. работает ТОЛЬКО если телефон занесен в список в клиенте.
2. при наличии русского текста приходит пустое сообщение (и подпись от mail.ru)

прокомментируйте, плз.

terrabyte
09-05-2010, 05:05
а у меня совсем ничего не отсылает.

Pablo Escobar
10-05-2010, 12:50
проблема с русским не решена, не приходит ни с мака, ни с винды ни в каких кодировках.
приходит только, если номер добавлен в контакты в клиенте.

интерес уже чисто спортивный =)

GUID
13-05-2010, 07:52
1. работает ТОЛЬКО если телефон занесен в список в клиенте.
Скрипт (send.php) проверяет наличие телефона в списке контактов и при необходимости его вносит.


2. при наличии русского текста приходит пустое сообщение (и подпись от mail.ru)
Только что проверил на текстах: "test" и "тест" - все дошло (постоянно использую латинский).

Версия send.php - не позднее 14.01.2010 (дата файла на роуторе). Номер телефона: Мегафон-Питер.

Вот...

Unlimited
13-05-2010, 08:58
Что-то у меня тоже русские не приходят...

popow_sergei
13-05-2010, 09:10
а у меня сообщения сами по себе заработали .
странно.

в смысле настраивал - неработало , забил , прошло недели 2 , заработало

Pablo Escobar
13-05-2010, 12:26
Скрипт (send.php) проверяет наличие телефона в списке контактов и при необходимости его вносит.


Только что проверил на текстах: "test" и "тест" - все дошло (постоянно использую латинский).

Версия send.php - не позднее 14.01.2010 (дата файла на роуторе). Номер телефона: Мегафон-Питер.

Вот...

1. да, я файл смотрел. видимо, глюки. сейчас удалил все телефоны из вккаунта - пришло смс. может, нужно, чтоб в аккаунт через клиента был добавлен хоть один номер (даже, если потом стерт), типа для активации?

2. давайте разбираться с кодировками и отправкой, плз.

GUID
13-05-2010, 12:39
может, нужно, чтоб в аккаунт через клиента был добавлен хоть один номер (даже, если потом стерт), типа для активации?
Одно могу сказать точно: в январе этого делать не надо было (я не делал... там 10 номеров, я бы точно запомнил ;). Еще один момент: я посылаю сообщения только на один номер (т.е. в контактах забит только один телефон).

давайте разбираться с кодировками и отправкой, плз.
хммм.... utf-8.... что еще "разобрать" надо?

Pablo Escobar
13-05-2010, 13:41
хммм.... utf-8.... что еще "разобрать" надо?
что я делаю не так?
http://emberapp.com/psychov/images/terminal-2/sizes/m.png

http://emberapp.com/psychov/images/terminal-3/sizes/m.png

terrabyte
25-05-2010, 15:16
на transmission кто нибудь сделал уведомление об окончании закачки?

zhuravlevsg
02-06-2010, 17:15
поддерживаю вопрос на transmission кто нибудь сделал уведомление об окончании закачки?

oleg.maiorov
02-06-2010, 18:10
Можно начать поиск вот отсюда (https://trac.transmissionbt.com/ticket/1372)

zhuravlevsg
02-06-2010, 19:50
мда это уже не осилить :)

Maksus
15-06-2010, 05:35
Всем доброго времени суток! Все сделал по инструкции, класс заменил, логин/пароль вбил, при попытке отправить смс, выдает "class mra not found in ...proxy.class.php", в каком направлении искать?

GUID
15-06-2010, 09:47
что я делаю не так?
к сожалению, моей квалификации не хватает, чтобы ответить на Ваш вопрос :(

SIJey
31-08-2010, 12:03
Установил набор для чайников, но там неправильно написал номер телефона. Пытаюсь поменять в /usr/local/sbin/post-mount, все сохраняется, но после перезагрузки роутера вижу не измененный вариант, поэтому и не присылает смс, в чем дело?

oleg.maiorov
31-08-2010, 12:10
flashfs save & flashfs commit & flashfs enable
reboot

_Jess
25-09-2010, 09:07
Юзаю transmission 1.22-3, поэтому написал небольшие изменения, чтобы информировать о загрузке файла.
В /opt/sbin/transmission_watchdog меняем функцию send_report():

send_report ()
{
debug "SMS send: $SMSOPT $SMSTO"

`${SMSOPT} ${SMSTO} ${TORRENTNAME} torrent finished ${ENDTIME}`
notice "SMS send to: ${SMSTO} about ${TORRENTNAME}"
}

В /opt/etc/transmission.conf добавляем пару строк:

SMSTO=79*********
SMSOPT=/opt/etc/sendsms/send.php
или

SMSTO="9 23 79*********"
SMSOPT=/opt/etc/sendsms/sendtime.php
Специально вывел в SMSOPT путь к send.php, если он находится не по "стандартному" пути. Или если Вам захочется использовать sendtime.php.

Пытался настроить отправку смс из transmition 1.93 но даже таких папок и фаилов не нашел.
Похоже в новой версии совсем другая организация фалов, подскажите кто настроил на Transmition 1.93.

cemtem
12-10-2010, 20:55
У меня та же проблема, вроде при отправке смс говорит, что логин и пароль не может подобрать.Есть мысль, что mail.ru что-то поменял у себя,а тут поможет только переделка скрипта.

JHBTYN
12-10-2010, 20:55
Перестали отправляться смс, притом никакой ошибки в логах нет. Это только у меня так?

На билайн отправляет.

Viper_Rus
13-10-2010, 06:00
Не могу понять. Вроде все установил по инструкции, создал пару мыл. Прописал их в скрипт, но постоянно выдает вот такое:


# /opt/etc/sendsms/send.php 79119241111 Test
PHP Notice: Undefined offset: 11 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 10 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 9 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 8 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 7 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 6 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 5 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 4 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 3 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 2 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
PHP Notice: Undefined offset: 1 in /opt/etc/sendsms/pro.mrim.proxy.class.php on line 402
login error

логин и пасс 100% прописал правильно. 2 мыла вот такого вида: router.rt-n16@mail.ru и router-rt-n16@mail.ru

mail агентом на это логины заходил и даже добавил свой телефон в контакты. Оттуда отправлялось нормально.

Elite_boy
14-10-2010, 20:30
Оповестил сегодня, после ребута, что загрузился. Но из консоли все равно не хочет отправлять. :(

bvvr
18-10-2010, 06:01
у меня тоже перестал отправлять :(
раньше работало, давно не перегружался, вчера перезагрузил роутер - ничего не пришло. Попробовал из консоли - аналогично... ни на мтс ни на билайн...
ошибок не пишет, номер ящика в файле login.txt меняется

akm2008
18-10-2010, 17:04
Похоже mail.ru сменил протокол или еще чего придумал :D

Аналогично не шлет смс оператор Мегафон :cool:

LazyRaven
20-10-2010, 20:02
Через питоновский (http://wl500g.info/showthread.php?t=22891)отправляется. Правда иногда пишет что использован лимит отправки хотя это не так.
А php-ный у меня уже давно не отправляет :(

bvvr
21-10-2010, 06:02
да, проверил, на питоне работает
месяц назад php-пишный точно работал

Sleg72
21-10-2010, 19:50
Таже бодяга,с Web-морды шлет,а больше ни в какую... Билайн.Чего делать-то мужики?:confused:

nofuture
22-10-2010, 14:59
Пхпшный не пашет
Питоновский почему то всегда (если отрубить от сети модем и роутер и подрубить его заново этаки минут через 5) говорит исчерпан лимит всех (у меня 3) емайлов
Если тупо рестартнуть роутер (не трогая модем) то смски приходят нормально
Через консоль так же без проблем

изменил


user_agent = 'MRA 5.7 (build 3757);'
user_agent_descr = 'client=\"magent\" version=\"5.7\" build=\"3757\"'

толку ноль
задержка до отправки 60 секунд, PPPoE точно успевает сконнектится, даже с запасом
хз че делать) идти и покупать ИБП чтоль:)
оператор НСС

bekkuz
19-11-2010, 21:26
Тоже не отправляется.
Раньше все работало просто супер.
Гуру сделайте что нибудь. Очень надеемся на вас.

Baatezu
22-11-2010, 09:46
поддерживаю не отправляет

akm2008
22-11-2010, 12:58
месяца 3-4 как не работает :cool:

колбаскин
22-11-2010, 13:51
Так есть же рабочий скрипт на питоне...
я его юзаю

gaur
22-11-2010, 15:54
Так есть же рабочий скрипт на питоне...
я его юзаю

так выложи его сюда

ellectu
23-11-2010, 16:02
так выложи его сюда
там есть тема специальная с питоновским скриптом. Давайте лучше разберемся, в чем отличие пхпшного скрипта от питоновского и как нужно изменить пхпшный, чтобы он заработал :)

gaur
23-11-2010, 21:59
там есть тема специальная с питоновским скриптом. Давайте лучше разберемся, в чем отличие пхпшного скрипта от питоновского и как нужно изменить пхпшный, чтобы он заработал :)

не работает не php не python оператор мегафон

bvvr
24-11-2010, 11:05
только что проверил - скрипт на питоне работает
оператор мтс

gaur
24-11-2010, 14:31
только что проверил - скрипт на питоне работает
оператор мтс

ну если работает проще подкорректировать скрипты чтоб отправлял не через php а через python

Slav_on
16-12-2010, 19:57
Про работу PHP скрипта можно забыть? Ставил все из комплекта "Скрипт для чайников":confused:

СМС через вебморду отправлять получается, а вот заставить отправлять информационные сообщения не получилось =(

akm2008
16-12-2010, 20:21
Про работу PHP скрипта можно забыть? Ставил все из комплекта "Скрипт для чайников":confused:

СМС через вебморду отправлять получается, а вот заставить отправлять информационные сообщения не получилось =(


Что мешает пошуршать форум и поставить например вот это http://www.wl500g.info/showpost.php?p=212652&postcount=69
Работает безотказно :cool:

Slav_on
16-12-2010, 22:23
Что мешает пошуршать форум и поставить например вот это http://www.wl500g.info/showpost.php?p=212652&postcount=69
Работает безотказно :cool:
Ничего не понимаю... не получается настроить хоть ты тресни... Может кто сделает автоматический скриптик для неособо разбирающихся юзеров чтоб ввел команду и все заработало.

bekkuz
17-12-2010, 10:08
Что мешает пошуршать форум и поставить например вот это http://www.wl500g.info/showpost.php?p=212652&postcount=69
Работает безотказно :cool:

Там просто оповещение о загрузке и подключения роутера.
А меня надо оповестить о завершении загрузки торрента.
Кто нибудь сделайте пожалуйста. Раньше все работало прекрасно.

Slav_on
17-12-2010, 11:28
Там просто оповещение о загрузке и подключения роутера.
А меня надо оповестить о завершении загрузки торрента.
Кто нибудь сделайте пожалуйста. Раньше все работало прекрасно.
Поддерживаю и включить это в набор скриптов "Для чайников" чтоб отдельно ручками не шаманить.

AkuNin
17-12-2010, 11:48
Про загрузку торрента для примера:
rtorrent.conf

system.method.set_key=event.download.finished,noti fy_me,"execute=/opt/etc/sms_py/sendtime.py,9,23,7929xxxxx,Торрент , $d.get_name=, загружен"

lbvf
08-01-2011, 20:40
Добрый вечер.
На сегодняшний день, у кого нибудь работает отправка? У меня нет...
Сделал все как написано в теме, поменял исходный класс на class.mrim.php. Зарегил 5 ящиков. Включил маил агент. при отправке через телнет - никаких сообщений не выдается, плюс в момент отправки маил агент ругается, что программа используется гдето в другом месте, т.е. все работает, но сообщения не приходят...что делать?
Заранее благодарен

wert61rus
27-01-2011, 16:40
как мне отредактировать этот файл /opt/etc/sendsms/send.php чтобы вставить эти строчки $login[0]="login1@mail.ru";
$pass[0]="password1";
$login[1]="login2@mail.ru";
$pass[1]="password2";
$login[2]="login3@mail.ru";
$pass[2]="password3";
$login[3]="login4@mail.ru";
$pass[3]="password4";
$login[4]="login5@mail.ru"; что для этого надо?

FilimoniC
27-01-2011, 16:53
как мне отредактировать этот файл /opt/etc/sendsms/send.php чтобы вставить эти строчки $login[0]="login1@mail.ru";
$pass[0]="password1";
$login[1]="login2@mail.ru";
$pass[1]="password2";
$login[2]="login3@mail.ru";
$pass[2]="password3";
$login[3]="login4@mail.ru";
$pass[3]="password4";
$login[4]="login5@mail.ru"; что для этого надо?

$vi /opt/etc/sendsms/send.php
http://system-administrators.info/?p=829
Учись пользоваться компьютером

Grond
30-01-2011, 19:31
Знаю, что вопрос глупый, но как скинуть файлы, тот же зип архив с компа на USB жёсткий роутера? Я пробовал постаить Ext2Fsd и Unreal commander'om скинуть, но он ругался на то, что нет прав. Я почитал тут статьи для новеньких, вроде как надо через путти cp ~/from/<filename> ~/to/<filename> но одно дело, когда из папки в папку, а другое по телнету с компа на комп... или не другое? Как мне быть? Что ещё почитать?

Это я интересуюсь для того, чтобы настроить рассылку смс через Питон - там первый пункт



Установка
1) Скопируйте содержимое архива sms в какую-нибудь директорию.
2) Установите ....

akm2008
30-01-2011, 19:37
Знаю, что вопрос глупый, но как скинуть файлы, тот же зип архив с компа на USB жёсткий роутера? Я пробовал постаить Ext2Fsd и Unreal commander'om скинуть, но он ругался на то, что нет прав. Я почитал тут статьи для новеньких, вроде как надо через путти cp ~/from/<filename> ~/to/<filename> но одно дело, когда из папки в папку, а другое по телнету с компа на комп... или не другое? Как мне быть? Что ещё почитать?

Данюл Дж. Баррет. Linux: основные команды. Linux: основные команды. Карманный справочник. (http://www.booksgid.com/operating_systems_databases/5276-.html)