Как отправить SMS из консоли

Знакомый линуксоид фрилансер выложил в общий доступ программу для отправки SMS из консоли , мне эта программа интересна, так как я сильно недолюбливаю телефоны и не против сбросить SMS через интернет

Особенно удобно на Asus EEEPC 701, так как не приходится заходить на идиотские сайты сотовых операторов. Программа проста, имеет несколько простых зависимостей и написана на Python, с вытекающей простотой модификации

Фишка программы в том, что она выкачивает Captchу  и отображает в ASCII графике, то есть не требует больших ресурсов, но пока, к сожалению, не может сама распознавать символы с капчи

Отправка SMS из консоли, отображение капчи

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

делаем копию оригинального файла cp megafonsms.py megafonsms.py.orig

вносим изменения, реализующие обработку переменной окружения http_proxy

def go_proxy(proxy):
proxy=re.split(r"[:@/]",proxy)
return httplib.HTTPConnection(proxy[-3],proxy[-2])

def go_get(hostname,anchor,cookies,agent):
if os.environ.has_key("http_proxy") and len(os.environ["http_proxy"])>0:
conn = go_proxy(os.environ["http_proxy"])
conn.putrequest("GET", "http://"+hostname+anchor)

def go_post(hostname,anchor,params,agent):
if os.environ.has_key("http_proxy") and len(os.environ["http_proxy"])>0:
conn = go_proxy(os.environ["http_proxy"])
conn.putrequest("POST", "http://"+hostname+anchor)

Проверяем, всё работает (за исключение авторизации в проксе), делаем патч

diff  megafonsms.py.orig megafonsms.py > megafonsms.py-use_http_proxy.path.txt

вроде всё, можно отослать автору php.grindars.ru

Документ:Патч для программы отправки SMS из консоли, реализации работы через proxyПатч для программы отправки SMS из консоли

Вот то, что осталось от проекта

Комментариев 0
Нужна авторизация с помощью
Об авторе
Илья Илья

меня можно найти тут