Автор Тема: Скрипты в помощь искателям резервов  (Прочитано 2003 раз)

bronikkk

  • Флудер
  • Сообщений: 109
    • Просмотр профиля
Дорогие товарищи!

После того, как я слегка проворонил тыкву, мне в голову пришло написать небольшой набор скриптов, чтобы с его помощью я получил оповещение об открытии резервов (я, в общем-то, не был уверен, что организаторы оперативно сообщат об открытии в рассылке). Результат не заставил себя ждать (старт практически в 8 утра), и теперь я на радостях выкладываю архив в общественное достояние — вдруг кому пригодится!

Сразу скажу, что всё это будет работать для UNIX-систем. Для прочих ОС будет нужна небольшая доработка напильником. Ну то есть скрипты *.py (на Питоне) в идеале кросс-платформенные, а вот *.sh надо будет заменять, например, на *.bat.

Содержимое архива:
* Скрипт team-status.py — собственно, главный скрипт. В качестве аргумента командной строки указывается категория, например, sphynx-middle. Кроме того, в самом коде в предпоследней строке зашито магическое число, например, 3:
if not(any(values[:3])):Это количество часов, начиная с 8 утра, которые вас устраивают. Скажем, число 3 означает, что вам подходит старт с 8 до 11 утра. Так что число можно поменять в зависимости от ваших потребностей.
Скрипт возвращает:
0, если свободные места есть;
1, если свободных мест нет;
2, если случилась какая-нибудь ошибка, например, вы неправильно указали название категории, недоступен сервер и т. д.

* Скрипт wrap.sh — это «обвязка», запуск которой по идее нужно добавить в планировщик задач (для Unix-систем это, скажем, cron) на постоянно включённом компьютере, чтобы скрипт запускался, например, каждые 10 минут. Если team-status.py вернул 0, должно отправляться некоторое оповещение, например, по электронной почте, Jabber или SMS. У меня для простоты в wrap.sh настроена отправка Jabber-сообщения на мой GMail-ящик (будет отображаться в GMail как письмо с приставкой «Чат:») с помощью скрипта xsend.py (прилагается). Также в скрипте wrap.sh есть строчка с командой отправки SMS на определённый номер, но она закомментирована, потому что здесь есть свои сложности: необходимо устанавливать программу gnokii; к компьютеру должен быть постоянно подключён по USB второй мобильный телефон, который поддерживается gnokii; соединение компьютера с телефоном у меня периодически отваливалось и т. д. Можно, конечно, было настроить и отправку обычных электронных писем, но мне было лень этим заниматься.

* xsend.py — скрипт для отправки Jabber-сообщений. Пример запуска смотрите в wrap.sh. Скрипт требует, чтобы в домашней директории в файле .xsend содержались Jabber-ID и пароль аккаунта, с которого будет отправляться сообщение.

Ну вот, собственно, и всё. Любите БГМ и берегите себя!

СУИБр