Comments 29
Скрипт будет работать до устаревании сессии в кукисе.
Пример для Orange, имхо, не особо актуален. Заменить бы его на пример с wi-fi в московском метро что ли (там ведь тоже какая-то страница с какими-то «новостями» и рекламой вылезает?).
Извините, где укусило, там и починил. Принцип тот же — выцепить нужный запрос, вписать в хук. Для меня больше всего отладки было — найти, как на up для нужного коннекта реагировать, без ложных срабатываний.
Так что нау хау в посте два: «это можно сделать» и строчка с if'ом.
Так что нау хау в посте два: «это можно сделать» и строчка с if'ом.
На почту прислали, ссылку добавил в пост.
Ну, что-то как-то совсем просто и без проверок. Такой подход чуть-чуть расстроил меня, amarao.
Самое правильное решение — смотреть на параметр Network Authentication Type у сети, и если есть какой-то тип, то пытаться распарсить html и сделать запрос.
Но, к сожалению, зачастую этот параметр не ставят, тогда можно просто открывать какую-то страницу, и если открывается другая страница, опять же пытаться отправить запрос.
Самое правильное решение — смотреть на параметр Network Authentication Type у сети, и если есть какой-то тип, то пытаться распарсить html и сделать запрос.
Но, к сожалению, зачастую этот параметр не ставят, тогда можно просто открывать какую-то страницу, и если открывается другая страница, опять же пытаться отправить запрос.
Нафига? Uuid сети гарантирует, что мы «в той» сети, а любые телодвижения сделают подключение медленнее. От двойного логина никто не помер ещё, да и при отключении оранж сбрасывает логин, то есть надо логиниться снова.
Можно к коду ещё юнит-тестов написать и фреймворк для построения фабрик по генерации абстрактных методов. Но зачем?
Можно к коду ещё юнит-тестов написать и фреймворк для построения фабрик по генерации абстрактных методов. Но зачем?
В Apple'овских устройствах для таких WiFi-сетей появляется переключатель «Автоматически» и оно правда работает, не знаю как, но, видимо, есть какой-то универсальный протокол общения с этим хозяйством, хотелось бы увидеть исследования на эту тему + универсальный скрипт для любых сетей с web-попапом.
На правах инверсного оффтопа.
У меня на одном стареньком аппарате стоит виндафон 7.5. Так вот, я заметил, что каждый раз после перезагрузки и при регистрации его на моем роутере — у него разный MAC, точней, первая (левая) половина MAC статична, а вторая половина генерится рандомно каждый раз при перезагрузке девайса, в результате чего невозможно (по крайней мере простым стандартным способом) выдавать ему конкретый пишнег и каждый раз он ему выдается динамически. Притом, на этом же девайсе, но под андроидом — MAC статичен, но другой, конечно же.
Ну, вот зачем виндафон так делает?!
Не надо так!
Ну, вот зачем виндафон так делает?!
Не надо так!
2>&1 >>/var/log/our_wifi
А у вас
2>&1 разве не оно?
Нет, не оно (в данном, конкретном случае). Перенаправление «читается» справа налево. Т.е. у вас сначала идет вывод stdout в файл, а потом уже stderr перенаправляется в stdout. Надо делать наоборот:
Или, что даже проще, так (stdout и stderr перенаправит в файл):
>>/var/log/our_wifi 2>&1
Или, что даже проще, так (stdout и stderr перенаправит в файл):
&>>/var/log/our_wifi
Немного дополню Angel2S2.
При старте шелла создаются 3 дескриптора: stdin, stdout, stderr. Нас интересуют последние 2. Представим такой псевдокод:
Когда мы делаем так:
Происходит что-то такое:
А когда мы делаем так:
Получается такое:
При старте шелла создаются 3 дескриптора: stdin, stdout, stderr. Нас интересуют последние 2. Представим такой псевдокод:
stdout = fopen('/dev/tty')
stderr = fopen('/dev/tty')
Когда мы делаем так:
2>&1 >> /tmp/file.log
Происходит что-то такое:
stderr = stdout #stderr -> /dev/tty
stdout = fopen('/tmp/file.log') #stdout -> file
А когда мы делаем так:
>> /tmp/file.log 2>&1
Получается такое:
stdout = fopen('/tmp/file.log') #stdout -> file
stderr = stdout #stderr -> file
Дык, вроде ж stderr перенаправляется в stdout, а stdout добавляется в /var/log/our_wifi… Что-то разве не так или я чего-то недогоняю?
А что, ни у кого у них нет антиксрф токена или любого подобного механизма с уникальным параметром в формах логина?)
Я бы ещё MAC менял для московского метро :)
А такую штуку можно как то реализовать и на Andorid?
Тоже интересно.
Запуск скрипта можно организовать, например, через Llama (при подключении к определенной wifi сети, выполнить действие — запуск приложения/ярлыка). Осталось только найти программу, которая может запустить скрипт, либо которая может выполнить нужные действия. В свое время не нашел таких (для других целей — у меня при перезагрузке симка переключается в 2G режим, хотел автоматизировать включение 3G режима).
Запуск скрипта можно организовать, например, через Llama (при подключении к определенной wifi сети, выполнить действие — запуск приложения/ярлыка). Осталось только найти программу, которая может запустить скрипт, либо которая может выполнить нужные действия. В свое время не нашел таких (для других целей — у меня при перезагрузке симка переключается в 2G режим, хотел автоматизировать включение 3G режима).
на 4pda была прога для авторизации в московском метро как раз, так что да, возможно.
Я так понял вопрос не решён?
Sign up to leave a comment.
network manager + автоматизация http-логина в wifi