Перейти к содержанию

Управляем Андроид смартфоном и Андроид-ТВ

Материал из Wiki yaboard

Вступление

Рассмотрим простой способ управления любым Android-смартфоном или ТВ-приставкой на Android, с которым справится даже рядовой пользователь. А перечисленные приложения помогут расширить возможности данных устройств, и настроить автоматизацию под любые задачи.

Для работы нам потребуются:

  1. AutoRemoteLite - программа-плагин для отправки вебхуков на устройство.
  2. MacroDroid - мощное, удобное и простое приложение для автоматизации Андроид-устройств.
  3. Навык УДЯ "Домовенок Кузя"
  4. Умный дом Яндекса
Советую использовать MacroDroid Pro, которая имеет больше функций и позволяет создать более 5 макросов, но на первое время сойдет и бесплатная версия.

Настраиваем AutoRemoteLite

  1. Загрузим и установим AutoRemoteLite из GooglePlay.
  2. При первом запуске приложение предложит задать имя устройства. Укажем.
  3. После ввода имени нажимаем "Оk", попадаем на главный экран (остальные диалоговые окна можно пропустить).
  4. Видим ссылку на страницу отправки сообщений через наш плагин, переходим:
То есть, для отправки сообщения "свет" через наш плагин мы просто меняем &message=Привет на &message=light
Судя по всему, Autoremote-Lite понимает сообщения в 2 символа, и лучше отправлять короткие &message=lt

Настройка AutoRemoteLite закончена. Проверяем работу, перейдя по ссылке вебхука. На устройстве появится уведомление о том, что сообщение дошло (это можно отключить стандартными средствами Андроид).

Самое интересное, или MacroDroid

Переходим к самому вкусному - приложению Macrodroid, и сделаем из нашего смартфона или другого смарт-устройства что-то действительно умное. Для этого загрузим MacroDroid и попробуем создать макрос (так называются сценарии в Macrodroid) поиска телефона.

Для начала немного теории, чтобы понять принцип работы. В программе Macrodroid есть 3 раздела:

  • Триггеры - события, на которые можно установить реакцию (например, поступил звонок, SMS, или сообщение по нашему вебхуку).
  • Действие - набор этих реакций на триггеры. Т.е. что нужно сделать?
  • Ограничения - например, выполнять наши действия с 6:00 до 22:00, или только если включен Wi-Fi (в этом случае ночью и при выключенной связи Wi-Fi действия не будут выполняться).


После установки и прохождения небольшой презентации попадаем в основной экран программы, где видим несколько кнопок.

  1. Жмём "Добавить макрос". Попадаем в раздел "Триггеры".
  2. Выбираем "Плагин Locale/Tasker" из списка "Приложения".
  3. Из списка доступных плагинов выбираем "AutoRemote".
  4. Из списка внутри плагина выбираем "AutoRemote Событие".
  5. Попадаем в окно, где выбираем пункт "" и вводим сообщение-якорь, которое мы будем отлавливать после вебхука (что будет стоять в конце ссылки нашего вебхука после &message=).
  6. Нажимаем "ОК".
  7. Выходим из настройки плагина кнопкой "Назад".
  8. Появится окно настройки переменных. Нас оно не интересует, просто нажимаем "ОК".
Мы создали триггер, который сработает при проверке приходящего сообщения, если там окажется наш якорь (&message=). 
Теперь настроим для триггера нужные действия.
  1. Выбираем вкладку "Действия".
  2. Создадим действие, устанавливающее громкость телефона на 100%: в списке "Громкость" выбираем "Установить громкость".
  3. Ставим все галочки и выводим все каналы на 100%. Отлично, громкость на максимуме!
  4. Теперь проиграем любой звук:
    • В списке "Медиа" выбираем "Воспроизвести/Остановить звук".
    • В следующем окне в пункте "Выбрать файл" выбираем звук, который будем воспроизводить.
    • Осталось добавить вибрацию (для пущего эффекта) из списка "Действия устройства", пункт "Вибрация" выберем, что-нибудь на свой вкус.
    • Осталось сохранить наш макрос, нажав на плавающую кнопку с галочкой внизу экрана и задав имя.

Теперь при переходе по ссылке нашего вебхука с указанным в конце сообщением, которое мы задали в процессе создания триггера в п.7 (например: https://autoremotejoaomgcd.appspot.com/sendmessage?key=ey7Nh7xwdGc:APA91bEW8uUIUHLKhkjhkkhjkklu8977878tyuicRXdVQ2ijcK598Dj17q69zS-QylATWFjBxoXhPK8Nu3kVp3WcA7a5QR3gHvZrVNNlHrUUzvaLjVcbJdyOh7RM-VDea7fGkMcYy_5N&message=sp) наше устройство выведет весь звук на 100%, проиграет выбранный нами звук и провибрирует. Но, что если этого мало, чтобы найти устройство. Например мы бы хотели, чтобы указанные действия продолжались пока мы не разблокируем экран.

  1. Откроем "Макросы" и откроем макрос созданный нами. В разделе "Действия" найдем "+".
  2. В появившемся теперь списке "Циклы/Условия" выберем "Цикл действий". В открывшемся окне выберем "Пока выполняется Условия" и с помощью "+" добавим условие, при котором действия будут выполняться циклично.
  3. В списке "Состояние устройства" выбираем "Блокировка устройства".
  4. Теперь в списке действий у нас появилось два блока обозначающие начало и конец цикла. Действия, которые будут выполняться в цикле нам нужно передвинуть между началом и концом. Для этого выбираем соответствующую кнопку и перетягиваем действия за символ "=".
  5. Получаем готовый макрос, который при запросе выведет весь звук на 100% и будет проигрывать звук и вибрировать пока мы не разблокируем экран.
  6. Но если экран изначально не заблокирован, то наш макрос не сработает. Поэтому видоизменим его, добавив перед циклом те же действия и добавим принудительную блокировку экрана.

Макрос готов, осталось только сохранить его. Теперь если экран разблокирован наш макрос выведет звук на 100%, проиграет звук, провибрирует, выключит экран и будет вибрировать и издавать звук до того момента, пока мы не разблокируем экран.

Вот еще несколько примеров, какими могут быть макросы (также их можно скачать здесь и импортировать в свое приложение Macrodroid).

Добавляем макросы в УДЯ

Настало время снова обратиться к навыку УДЯ "Домовенок Кузя". Наши макросы вида:

https://autoremotejoaomgcd.appspot.com/sendmessage?key=ey7Nh7xwdGc:APA91bEW8uUIUHLKhkjhkkhjkklu8977878tyuicRXdVQ2ijcK598Dj17q69zS-QylATWFjBxoXhPK8Nu3kVp3WcA7a5QR3gHvZrVNNlHrUUzvaLjVcbJdyOh7RM-VDea7fGkMcYy_5N&message=ss
https://autoremotejoaomgcd.appspot.com/sendmessage?key=ey7Nh7xwdGc:APA91bEW8uUIUHLKhkjhkkhjkklu8977878tyuicRXdVQ2ijcK598Dj17q69zS-QylATWFjBxoXhPK8Nu3kVp3WcA7a5QR3gHvZrVNNlHrUUzvaLjVcbJdyOh7RM-VDea7fGkMcYy_5N&message=sp

добавляем в Кузю. Подробнее тут.

Теперь добавляем устройства в УДЯ, при этом можно создать сценарии для готовых устройств, чтобы удобней было их вызывать.
Например Сценарий "Вызови скорую" с действием "включи вызов скорой".

Идеи для макросов

Для полноты картины приведу несколько примеров, какими могут быть макросы в Macrodroid:
Выполняемые из УДЯ (выполняемые по триггеру якорь-сообщения):

  • Запустить приложение с каналами или видеоплеер.
  • Позвонить на любой номер.
  • Отправить подготовленное смс-сообщение.
  • Сделать фото, отправить его по почте.
  • Сделать фото/селфи по команде.
  • Отправить местоположение телефона на заданный номер телефона или e-mail.
  • Включить wifi/передачу данных.
  • Отклонить входящий вызов.
  • Ответить на входящий вызов.
  • Произнести заготовленную фразу (с помощью речевого движка, который по умолчанию назначен в смартфоне).
  • Запустить голосовой поиск.
  • Записать звук на андроид устройстве и даже отправить его Вам по почте.
  • Завершить определенные приложения.
  • Включить BT, подключиться к устройству и включить музыку.

И это далеко не полный список а лишь то, что пришло на ум на данный момент. Не связанные с УДЯ, но которые использую я

  • По времени менять обои рабочего стола (например утром - утренний пейзаж, днем - полдень, вечером - закат, ночью - звезды).
  • Макрос "Светобудильник" - незаменимая вещь (без него я уже не просыпаюсь). Если дома имеется устройство освещения, управляемое с помощью вебхуков (например через blynk, IFTTT или ИК-пульт на NodeMCU) можно задать например следующее: в 7:00 - включить свет на 20% - задержка 5 минут - включить свет на 50% - задержка 5 минут - включить свет на 100%.
  • Если подключено к точке доступа Wifi - выключить передачу мобильных данных и наоборот.
  • Если запущено одно из приложений (требующих интернет) - включить Wifi, задержка 10 сек, если не подключено к какой-либо точке доступа - включить передачу данных.
  • Если закрыты все приложения, использующие интернет - выключить передачу данных и Wifi. (аналогично БТ).
  • Проговорить полученное смс/уведомление голосом.
  • При подключении наушников (в т.ч. БТ) запустить плеер и музыку.
  • Используя триггер Активность "Бег" - включать музыку (но с ограничением - если подключены наушники).
  • При входе в зону (по местоположению) "Работа" - выполнить список действий (Выключить звук, подключиться к местной Wifi-сети, отправить пакеты для включения рабочего ПК по WOL или HTTP-get). Тоже самое и с зоной "Дом" или любой другой зоной.
  • При выходе из зоны "Дом" выключать все умные устройства (по вебхукам).
  • Проговаривать время каждый час (не пользуюсь, но можно).
  • Проговаривать погоду в определенное время.
  • Запускать приложения/оправлять веб-хуки по времени.
  • Делать фото при неудачной разблокировке экрана после определенного количества раз.
  • Отправлять местоположение смартфона, после получения смс или по времени с определенным текстом.
  • Сообщать о полной зарядке или почти полной разрядке смартфона.
  • Включать тревогу при отключении от определенного БТ-устройства или точки доступа, при этом отправляя местоположение, смс и с ограничением по времени или при запуске макроса "режим охраны" по ярлыку.
  • Запускать набор действий по ярлыку.

И многое многое другое.

Послесловие

Для автоматизации устройств на Андроид существует множество приложений (Например Tasker, AutomateIt, Automate и др.), но, пожалуй, Macrodroid самое лаконичное из них, кроме того функционал не уступает его аналогам, но это уже на ваш выбор=) В статье представлена лишь малая часть того, что можно настроить. Все ограничивается лишь вашей фантазией.

Удачи вам в создании действительно умных из казалось бы умных на данный момент устройств.=)