Учим Сири открывать сайты. Siri Shortcuts.

учим сири открывать сайты

В этом выпуске мы научим тупичку Сири открывать сайты.

— Зачем? Быстрее же зайти в браузер и вручную открыть.
— Ну неее. Иногда ты можешь не знать, как пишется название сайта. Тогда ты просто просишь Siri и она открывает его. А еще бывает так, что руки заняты, а сайт открыть надо (если понимаешь о чем я). А еще это может оказаться реально быстрее, чем открывать вручную.

В общем, давай учить Siri!

P.S. Перед этим советую глянуть, как пользоваться приложением Команды.

Создаем команду «Открой сайт»

Мне нравится, когда техника не тупо выполняет команды, но еще и ведет диалог с тобой. Поэтому первым делом научим Siri спрашивать «Какой сайт Вы хотите открыть?».

Для этого тыкнем в строку поиска внизу экрана, пролистаем ниже и выберем пункт «Текст». Здесь нас интересует действие «Отправить сообщение». Оно возьмет текст, который мы напишем в нем, и отправит его следующему действию.

Нажимаем на «Отправить сообщение» и получаем что-то вроде этого:

Теперь заставим Сири произнести написанный текст. Для этого опять нажимаем на строку поиска, листаем до пункта «Текст» и ищем в нем действие «Произнести.» Выбираем его и ставим после «Отправить сообщение». В поле «язык» выберем «Русский». Голос можно оставить «женский Siri», потому что другие голоса — дикий ужас.

После того, как Сири спросит, какой сайт открыть, мы должны ответить ей. Опять тыкаем в строку поиска внизу экрана, листаем до пункта «Текст» и ищем в нем действие «Продиктовать текст». Выбираем его и ставим язык «Русский».

— А если выбран русский, но сказать на английском, то Siri распознает?
— Иногда распознает. Но тут, как я понимаю, дело в твоем произношении.

Ландан из зэ кэпитал оф Грэйт Бритэйн, Siri!

Итак. Сири получила название сайта (или что ты там ей набубнел) и теперь она должна его открыть. Но как?

Тут мы проворачиваем небольшой финт. И на помощь приходит Google со своим мощным поисковиком.

Дело в том, что Гугл умеет распознавать наши хотелки даже в тех случаях, когда мы «криво» об этом указываем. А так как Siri может распознать не совсем так, как этого хотелось бы, то помощь Гугла в этом случае будет в самый раз.

Начнем с того, что выберем в пункте «Текст» действие «Заменить текст» и поставим его после «Продиктовать текст». В поле «Найти текст» поставим «пробел» (да, просто тыкни в это поле и нажми пробел на клавиатуре). В поле «Заменить на» ставим «+». Переключатель «Чувствительный к регистру символ» можешь включать или нет. Плевать. Потому что пробел не бывает высоким или низким. Ну ты понял.

Что мы сейчас сделали? Мы взяли текст, который распознала Сири, и заменили в нем символы пробела на знаки «+». Этим шагом мы подготовили запрос, который будем кормить Гуглу.

Формируем URL с запросом вида: https://www.google.com/search?q=Заменить текст.

Для этого открываем пункт «Интернет», находим в нем действие «URL-адрес» и выбираем его. Прописываем указанный выше URL и в конце него добавляем переменную «Заменить текст», которую нам вернет предыдущее действие «Заменить текст». Когда вы будете набирать текст, то сверху в клавиатуре можно скроллить влево-вправо переменные, которые предлагает Сири. Должно получиться вот так:

Теперь нужно выполнить сформированный URL. Добавим действие «Получить содержимое URL» из пункта «Интернет». В поле «Метод» выберем «GET».

Из полученных данных от этого метода нужно создать HTML, который мы заюзаем для поиска урлов…

… так. Думаю, нужно разъяснить, ШТО ВООБЩЕ ПРАИСХОДИТ.

Мы пытаемся заставить Сири выполнить поиск в Гугле по фразе, которую продиктуем ей.

Когда вы ищите что-то в Гугле, то получаете примерно такую страницу:

Самая первая ссылка в результате поиска — наиболее релевантна. Это то, что нам нужно. Не всегда, конечно, это срабатывает, но в большинстве случаев Google умеет находить правильный ответ.

… возвращаясь к нашим действиям

Нам нужно сформировать HTML, из которого мы достанем URL результатов поиска.

Заходим в пункт «Текст» и выбираем в нем действие «Создать HTML из форматированного текста».

С учетом предыдущих двух пунктов должно получиться что-то вроде этого:

ФУФ!

Дело осталось за мАлым.

Нам надо выбрать url-адреса из html, из них выбрать первый релевантный и открыть его.

Получаем url-адреса. В пункте «Интернет» выбираем действие «Получить URL-адреса из входных данных». Входными данными будет результат предыдущего действия «Создать HTML из форматированного текста». Это действие вернет нам список всех урлов со страницы результата поиска.

После этого открываем пункт «Скрипты» и почти в самом низу выбираем действие «Получить объект из списка». Этим шагом мы выберем нужный нам URL. Для этого в поле «Получить» ставим «Объект с номером», а в поле «Порядковый номер» указываем 6. Почему не номер 1? Все просто. Предыдущее действие возвращает нам ВСЕ урлы со страницы, включая те, что не относятся к результату поиска. И именно с 6 номера в списке урлов, начинается результат поиска.

Теперь идем в пункт «Интернет» и выбираем действие «Открыть несколько URL». По итогу последних трех пунктов должно быть вот так:

Поздравляю! Вы только что запрограммировали Siri открывать сайты.

а что, если Сири не правильно услышала фразу и откроется другой сайт?

В таком случае, нам нужно добавить «Словарь», где ключами будут фразы, которые слышит Сири, а значениями — сайты, которые она должна открыть.

Выглядеть это будет вот так:

Что тут происходит:
— мы добавили «Словарь» с теми фразами, которые Сири слышит при названии сайтов (да, мой сайт она вообще ни в какую не воспринимает);
— затем добавили условие «Если» и в поле «Входные данные» указали «Содержит», а в поле «Значение» указали переменную query (что за переменная напишу ниже);
— внутри блока «Если» вставляем действие «Получить значение словаря». В поле «Получить» указываем «Значение», а в поле «Ключ» — переменную query.
Это действие работает так: переменная query содержит ту фразу, которую услышала Сири и, если эта фраза есть в словаре, то по ней мы получаем адрес сайта, который нужно открыть. То есть фраза, услышанная Сири — это ключ, по которому мы находим значение.
— используем действие «Открыть несколько URL», чтобы открыть сайт, адрес которого нам вернуло предыдущее действие;
— завершаем работу всей команды действием «Завершить выполнение».

Что за переменная query?

Она содержит значение, которое услышала Siri при диктовке ей названия сайта. Мы добавили переменную потому, что фразу нужно использовать в разных частях этой команды. И сделать это линейно не получится. А вот переменная спасает.

Также добавили действие «Сменить регистр» и в параметре «Регистр символов» указали строчные, чтобы вся фраза, услышанная Сири, переводилась в строчные буквы. Это важный шаг, потому что фразы в словаре лежат в нижнем регистре. И если хоть одна буква будет большой, то действие «Если» не сработает. Например: Сири услышала «Борщ», а в словаре лежит «борщ»; действие «Если» не сработает и откроется не мой сайт, а фиг пойми что.

Полный скриншот всех действий команды:

Настроим голосовое управление

Оставаясь в режиме редактирования шортката справа вверху тыкните на значок переключателей.

В поле «Название» пропишите название команды «открой сайт».
В поле «Значок» выберите цвет и иконку для этой команды.

Далее нажимаем на «Добавить для Siri» и диктуем фразу, по которой Сири выполнит эту команду. В моем случае фраза звучит как «открой сайт».

Теперь можно сказать «Привет, Siri. Открой сайт.» и Сири выполнит быструю команду, которую мы создали.

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

Спасибо за внимание.

Телеграм-канал Bor64.com кнопка подписаться

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *