Пока весь мир сосредоточенно клепал мобильные приложения, в Китае придумали, как превратить в универсальную платформу обыкновенные мессенджеры. Теперь к китайскому опыту присматриваются в Кремниевой долине.
Вступление
Кроме детективов про Шерлока Холмса, у Артура Конан-Дойла есть книжка под названием «Затерянный мир». Ее герои открывают горное плато, которое настолько изолировано от остального мира, что там до сих пор обитают динозавры.
Китайский интернет — как раз такой затерянный мир. Протекционизм, языковой барьер и пресловутый китайский файрвол создали там среду, в которой даже самые обыкновенные технологии то и дело используются не вполне обыкновенным образом, и порой — с крайне интересными результатами.
Google, Facebook и Amazon плохо знакомы китайскому пользователю. У Китая свои интернет-гиганты — Tencent, Alibaba и Baidu. И своя специфика.
Основа бизнеса Tencent, одного из китайских интернет-гигантов, — не поиск, соцсети или онлайновая торговля, а интернет-мессенджеры. Компании принадлежит мессенджер QQ, у которого порядка 650 миллионов активных учетных записей, и мобильное приложение WeChat, имеющее более 400 миллионов активных пользователей.
Google в любом начинании отталкивается от своего главного продукта — поисковой системы. Facebook изо всех сил пытается превратить свою социальную сеть в заменитель интернета если не для всех, то для изрядной доли своих пользователей. Для Tencent же совершенно естественно ставить во главу угла мессенджеры.
Боты, заменившие людей
WeChat сочетает черты мессенджера и соцсети: в нем можно общаться напрямую, как в Google Talk или ICQ, а можно публиковать общедоступные сообщения для подписчиков, как в Twitter или Facebook. Знаменитости и известные китайские компании, как правило, имеют представительство в WeChat.
Но самое необычное в WeChat — это боты. Сама по себе идея чат-бота не нова, но тут все дело в масштабах. Боты WeChat — это очень серьезно. По сути, в Китае они заняли ту же нишу, которая в других странах отведена для мобильных приложений или сайтов. О таком успехе своих продуктов в Google или Facebook могут только мечтать.
В WeChat есть боты, работающие на государственные организации и на крупные корпорации, есть боты-торговцы и боты-банкиры. С их помощью можно сделать все: продлить визу, совершить покупку, записаться на прием к врачу, узнать новости и многое другое.
![Продление визы](https://xakep.ru/wp-content/uploads/2015/09/1442389810_7fef_wechat-visa-renewa.jpg)
![](https://xakep.ru/wp-content/uploads/2015/08/ipad_v-210x280.jpg)
Xakep #200. Тайная жизнь Windows 10
Общение с программой в данном случае — это действительно общение в самом буквальном смысле этого слова. Для управления банковским счетом или обращения в магазин используется тот же интерфейс, что и для разговоров с приятелями. Просто в данном случае на запросы отвечает машина. Впрочем, если понадобится, к разговору всегда может подключиться человек-оператор.
Это удобно для пользователей: им не нужно устанавливать отдельные приложения и разбираться в их интерфейсах. Это удобно и для разработчиков: боты куда проще и дешевле, чем приложения и даже сайты. К тому же не нужно думать о поддержке различных мобильных платформ — это забота WeChat.
Чтобы упростить взаимодействие с ботами на мобильных устройствах, WeChat позволяет им отображать в нижней части чата готовые варианты ответа, которые можно выбрать одним кликом (реализацию той же идеи можно встретить в сообщениях Apple Watch и в мессенджере Telegram).
![Больничный бот с вариантами ответов](https://xakep.ru/wp-content/uploads/2015/09/1442389820_a86a_wechat-hospital.jpeg)
Чат в качестве пользовательского интерфейса стал в Китае общим местом, и теперь такой подход копируют даже приложения, не имеющие ничего общего ни с WeChat, ни с чатами как таковыми. У них нет выбора. Чат — это именно то, чего ждут от них пользователи.
Не надо слов
Диалоговые интерфейсы никогда не были столь массовыми, но они существовали задолго до ботов WeChat. Более того, они предшествовали даже привычному для нас графическому интерфейсу пользователя, но давно ему проиграли. И не просто так. Для проигрыша были все основания.
Удобство диалогового интерфейса напрямую зависит от того, до какой степени компьютер понимает естественный язык. Поскольку до недавних пор с пониманием было совсем худо, пользователь должен был сам позаботиться о том, чтобы до машины дошло, чего от нее хотят.
Проигрыш не привел к полному исчезновению диалоговых интерфейсов, но надолго вытеснил их на обочину. Чаще всего их применяли для передачи команд удаленным программам: для взаимодействия с серверами IRC, подписки на почтовые рассылки или, к примеру, управления СМС-сервисами (да, это тоже диалоговый интерфейс, пусть и очень примитивный).
Другой пример незаметного диалогового интерфейса — поисковые системы, особенно в тех случаях, когда выдаваемые ими результаты — это не вполне поиск. Например, известно, что, если отправить Google математическое выражение, он подсчитает его результат. Яндекс можно заставить конвертировать единицы измерения, показывать точное время или нужный цвет прямо в выдаче (на яндексовском жаргоне такие микроприложения называются «колдунщики»).
В начале двухтысячных американская компания ActiveBuddy разработала чат-бот под названием SmarterChild для мессенджеров AIM и Windows Live Messenger. В отличие от большинства диалоговых интерфейсов, существовавших до него, SmarterChild, во-первых, не нуждался в знании специального языка запросов, а во-вторых, пытался вести настолько живую беседу, насколько это возможно без настоящего искусственного интеллекта.
С помощью SmarterChild можно было получить последние новости, узнать погоду в разных точках страны, выяснить, когда начинается нужный сеанс в ближайшем кинотеатре, проследить за итогами спортивного матча и многое другое. Кроме того, бот пытался отвечать на произвольные вопросы и даже шутить. В этом смысле он был непосредственным предшественником Siri.
SmarterChild требовал знания английского и работал в сетях, которые не особенно известны в России, поэтому здесь о нем почти не знают, но у себя на родине он пользовался бешеной популярностью. «Когда я впервые услышал о разработке Siri, у SmarterChild было уже 10 миллионов пользователей, — вспоминал в одном из интервью инвестор Шоун Кэролан из компании Menlo Ventures. — Он обрабатывал миллиард запросов в сутки. Было ясно, куда дует ветер». Menlo Ventures вложила деньги в разработку Siri и не прогадала. Спустя несколько лет технологию приобрела Apple.
После появления современных смартфонов не заметить, куда дует ветер, стало еще труднее. Уведомления iOS и Android имеют много общего с чатом, причем участники этого чата зачастую не люди, а приложения. А в последних версиях этих мобильных платформ можно не только читать уведомления, но и взаимодействовать с ними. Отсюда — один шаг до диалоговых интерфейсов в стиле WeChat.
Современный разговор
Самый горячий стартап 2014 года называется Slack. За ним стоит один из основателей известного фотосервиса Flickr Стюарт Баттерфильд. Slack представляет собой чат для рабочих групп. Компании оплачивают его для того, чтобы сотрудники обсуждали рабочие вопросы, обменивались документами — словом, делали все то, для чего обычно используют электронную почту, но лучше, быстрее и удобнее.
Боты с самого начала были видной частью Slack. Каждая команда сразу же получает собственного слекбота, которого можно научить реагировать на ключевые слова. Это, впрочем, лишь начало. Slack можно интегрировать с уймой популярных онлайновых сервисов — от Github до Asana. Каждая интеграция — тоже своего рода бот. В простейшем случае они будут уведомлять о событиях, за которыми им поручили наблюдать. Например, Github сообщит в чате о случившихся коммитах в интересующем репозитории.
Существуют варианты и посложнее. У Slack есть программный интерфейс для разработки специализированных ботов, и пользователи вовсю эксплуатируют эту возможность. На сайте slackbotlist.com перечислены десятки ботов для Slack разного назначения. Некоторые из них по своей сложности вполне способны соперничать с более традиционными мобильными приложениями.
Вот характерный пример — Nikabot. После подключения этот бот регулярно выясняет у членов команды, чем каждый из них занимается в данный момент. Собранную информацию «Ника» переводит в наглядную форму, генерирует отчеты и предоставляет менеджеру. Создатели Nikabot явно надеются превратить свою разработку в бизнес — у сервиса есть платный тарифный план.
Другой бот для Slack с серьезными претензиями называется Ask Nestor. «Нестор» позволяет обращаться к нескольким популярным онлайновым сервисам при помощи текстовых запросов, сформулированных на относительно естественном английском языке — в стиле Siri. Бота, к примеру, можно попросить подогнать такси Uber по нужному адресу, подсчитать статистику платежей через Stripe, найти ближайший ресторан в Yelp или отправить жалобу на баг в Github (это не полный список).
Slack дает плодотворную среду для развития ботов, но можно обойтись и без него. Их можно приспособить к любому сервису сообщений, даже к простому СМС. В начале года немало шума наделал Magic — стартап, принимающий по СМС заказы любого рода (в разумных, конечно, пределах). Строго говоря, это не бот, а, скорее, «киборг» — запросы обрабатывают вполне живые операторы. Эффект, впрочем, тот же: на каждый запрос тут же приходит ответ. Вот пример такого диалога.
— Мне нужно слетать в Бостон в следующую пятницу.
— Самый дешевый перелет или минимум пересадок?
— Подешевле.
— ОK, можно за 351 доллар в 11 утра из аэропорта Сан-Хосе. Годится?
— Да.
— Билет забронирован, проверьте почту.
Другой пример:
— Мне нужны бананы, йогурт, туалетная бумага, бумажные полотенца, полкило мяса для гамбургеров и пива.
— Когда?
— Сегодня днем.
— Могу заказать в Instacart доставку из магазина Safeway до трех дня за 65 долларов.
— Окей.
— Будет исполнено.
Более технологичный пример — сервис-копилка Digit. Он подключается к банковскому счету и внимательно следит за выполняемыми операциями, пытаясь уловить закономерности. Поняв, сколько его пользователь обычно тратит, насколько быстро и зачем, он начинает время от времени перекладывать на отдельный счет небольшие суммы, которые, по его прикидкам, вряд ли понадобятся для текущих расходов.
После регистрации и настройки счета, для которых требуется браузер, взаимодействие с Digit происходит исключительно по СМС. Раз в сутки он сообщает пользователю, сколько денег на счете. В ответ можно попросить Digit прислать статистику по накопленным деньгам, список последних операций или извлечь деньги из копилки. Это необычно, но пока что сервис обходится без приложения и надеется, что СМС им хватит еще надолго.
Перспективы
Можно, конечно, сказать, что все это мы уже видели. Трудно поспорить, но тут вот какое дело: мы видели это на другом уровне развития. Интерфейсы Palm OS образца 2000 года и iOS 8 на самом базовом уровне тоже очень похожи, но только слепой скажет, что пятнадцать лет были потрачены впустую. То же и тут: за диалоговые интерфейсы впервые за пару десятилетий взялись по-настоящему.
В истории компьютерной техники немало развилок, глядя на которые задаешься вопросом: а что, если бы в свое время выбор был сделан в пользу другого пути? Обычно можно только гадать. Диалоговые интерфейсы — редкий случай, когда к оставленному позади решению удалось вернуться на новой стадии развития, с новыми технологиями и новыми возможностями. И скорее всего, не зря.