So-notify — уведомитель о вопросах о переполнении стека
Stack Overflow не нуждается в представлении. Это один из крупнейших порталов вопросов и ответов для программистов, на котором можно учиться, искать и публиковать вопросы, а также получать ответы от миллионов пользователей со всего мира. Некоторое время назад мы опубликовали руководство, в котором описывается, как искать и просматривать веб-сайт Stack Overflow из командной строки. Сегодня мы собираемся обсудить еще одно приложение командной строки под названием "so-notify", которое отправляет уведомление в систему пользователя, когда новый вопрос публикуется на веб-сайте Stack Overflow.
So-notify, Уведомление о вопросах о переполнении стека, представляет собой крошечное приложение CLI (97k), написанное на PHP. Исходный код находится в свободном доступе на GitHub, поэтому вы можете его форкнуть, улучшить код или исправить ошибки, если таковые имеются.
Установите so-notify в Linux
Установка невероятно проста! Я протестировал это на своей системе Arch Linux. Это сработало хорошо!
Сначала убедитесь, что у вас установлены пакеты php и php-sqlite. Эти два пакета доступны в официальных репозиториях большинства дистрибутивов Linux. В Arch Linux и его производных вы можете установить их, как показано ниже.
sudo pacman -S php php-sqlite
После установки необходимых компонентов включите расширение pdo sqlite для вашего php.
Для этого отредактируйте файл /etc/php/php.ini:
sudo vi /etc/php/php.ini
Найдите и раскомментируйте следующую строку:
extension=pdo_sqlite
Нажмите клавишу ESC и введите :wq, чтобы сохранить и закрыть файл.
Теперь загрузите последнюю версию so-notify со страницы релизов проекта.
wget https://github.com/SapneshNaik/so-notify--A_Stack_Overflow_Question_Notifier/files/1586849/so-notify.gz
Распакуйте скачанный архив:
gzip -d ./so-notify.gz
Затем скопируйте его в папку /usr/local/bin/:
sudo mv ./so-notify /usr/local/bin
Наконец, сделайте его исполняемым:
chmod u+x /usr/local/bin/./so-notify
Сделанный! Теперь пришло время посмотреть, как это работает.
Как использовать So-notify, уведомитель о вопросах о переполнении стека
Если вы запустите so-notify без каких-либо аргументов, вы увидите список доступных команд и общих параметров.
so-notify
Прежде чем запустить его, вам необходимо подписаться на один или несколько тегов по вашему выбору. Позвольте мне подписаться на некоторые теги, например Linux и Python.
so-notify tag:add linux
so-notify tag:add python
Вы можете подписаться на любое количество тегов. Чтобы просмотреть все подписанные теги, запустите:
$ so-notify tag:show
Пример вывода будет:
После подписки запустите so-notify при возникновении вопросов:
so-notify run
Просто нажмите на любой вопрос, чтобы просмотреть его в веб-браузере по умолчанию.
Чтобы отказаться от подписки на любой подписанный тег, используйте tag_id, как показано ниже:
so-notify tag:remove 2
Вы можете просмотреть идентификаторы тегов, перечислив подписанные теги.
so-notify tag:show
Вам не придется каждый раз вручную проверять наличие вопросов. Настройте cronjob для проверки новых вопросов каждые X минут.
Для этого запустите:
$ crontab -e
Добавьте следующую строку, чтобы каждую минуту проверять наличие новых вопросов.
* * * * * /usr/local/bin/so-notify run
Сохраните и закройте файл. Запустите или перезапустите службу cron, чтобы изменения вступили в силу.
$ sudo service cron start
Рекомендуем прочитать:
- Руководство по заданиям Cron для начинающих
Ресурс:
- Поэтому уведомите репозиторий GitHub