Search the Community
Showing results for tags 'ios'.
Found 1 result
-
Push уведомления - очень удобное, даже жизненно необходимое, дополнение к серверу. В любом месте на планете мы получаем оперативную информацию с поля боя. Для реализации задуманного есть очень удобный ресурс pushbullet.com с простым API. Забегая немного вперед, сразу покажу как это хозяйство будет выглядеть. Android Windows На момент написания статьи, сервис поддерживает следующие платформы для получения push уведомлений: AndroidiOSWindowsChromeFirefoxOperaSafariДумаю, что в скором времени и Mac добавится к списку. И так, к делу Все работы я проводил на Linux Ubuntu Server 4.8 и Zabbix 2.4, но описанное подойдет для любой ОС семейства UNIX, а под Windows лишь с небольшими модификациями. Первым делом нам необходимо перейти на сайт pushbullet (ссылка в начале поста) и пройти регистрацию или авторизоваться под одной из предоставленных систем: google, facebook ... В общем есть из чего выбирать. Привязать необходимую платформу для получения уведомлений можно в разделе Devices -> Add device. Для установки Вас перенаправят на ресурс соответствующий вашему выбору. Устанавливаем, авторизуемся и возвращаемся на сайт в раздел Settings -> Account. Ищем графу Access Token и, если у Вас хорошая память, запоминаем или переписываем секретный ключ. Самое тяжелое позади, переходим к изучению API Необходимый багаж знаний мы можем получить в соответствующем разделе сайта docs.pushbullet.com Раздел Pushes гласит, что мы можем отправлять запросы методом POST/GET и использовать следующие типы запросов с сопутствующими параметрами: На момент написания статьи, ссылка по которой реализована работа с API выглядит так - https://api.pushbullet.com/v2/pushes В документации приведен пример для отправки тестового push уведомления методом POST с использованием Curl в формате Json. curl --header 'Authorization: Bearer <your_access_token_here>' \ -X POST https://api.pushbullet.com/v2/pushes \ --header 'Content-Type: application/json' \ --data-binary '{"type": "note", "title": "Note Title", "body": "Note Body"}'Для теста замените <your_access_token_here> на свой секретный ключ. Это довольно удобно, но у меня возникли проблемы в реализации связки Zabbix -> Bash -> Curl+Json, при которой наблюдались перебои в работе. Поэтому я выкинул из связки Json. Устремляемся на сервер Идем в каталог со скриптами оповещений Zabbix (в Linux это /usr/local/share/zabbix/alertscripts) и создаем там файл с любым именем, но для удобства понимания назовем его pushbullet. Это будет простенький Bash скрипт со следующим содержимым: #!/bin/bash API_URL="https://api.pushbullet.com/v2/pushes" API_KEY="$1" SUBJECT="$2" MESSAGE="$3" curl $API_URL -u $API_KEY: -d type=note -d title="$SUBJECT" -d body="$MESSAGE" -X POST Переходим в Zabbix В разделе Администрирование -> Способы оповещения и добавляем новый способ со следующими параметрами: Имя - pushbulletТип - СкриптИмя скрипта - pushbulletИдем в раздел Настройка -> Действия -> Источник событий: Триггеры и создаем новое действие с именем Report problems to Pushbullet. Активируйте и отредактируйте Сообщение по умолчанию и Сообщение о восстановлении, это поможет получать как список самих проблем так и сообщения при их устранении. Далее в разделе Операции указываем Тип операции: отправлять сообщение и выбираем отправлять только через pushbullet. Можно отредактировать через стандартный шаблон оповещений, но отдельный шаблон позволяет создать конкретное сообщение, что очень удобно т.к например на телефоне не большой дисплей и плавать во всем шлаке данных о проблеме будет не удобно. Что выбрать решать только Вам. Теперь самое вкусно. Переходим в раздел Администрирование -> Пользователи и выбираем нашу учетную запись. Во вкладке Оповещения добавляем новое оповещение со следующими параметрами: Тип - pushbulletОтправлять на - указываем <your_access_token_here>Остальные параметры по желанию, но по личному опыту советую изменить активность на Ваше рабочее время. Я уже получал посреди ночи пулеметную очередь уведомлений с последующими одиночными выстрелами. Таким образом настраиваются уведомления для всех необходимых пользователей. Все готово к работе. PS: По желанию Вы можете модифицировать скрипт и профили пользователей для получения уведомлений на конкретные устройства или распределить между устройствами оповещения в зависимости от текущего времени дня (на рабочий телефон в рабочее время, на домашний компьютер/телефон в свободное). Выбор остается за Вами.