Поставили расширение 1С для Алисы AI, а плагин базу не видит
Расширение из комплекта Яндекса само по себе ничего не открывает. Разбираем, чего не хватает в штатной схеме, сколько там на самом деле шагов и как подключить Алису к базе, не публикуя ее в интернет.
Задача
В Яндекс 360 для бизнеса появился плагин "1С:Предприятие" для Алисы AI. Инструкция обещает: скачайте архив, установите расширение в базу, укажите адрес, и помощник начнет отвечать по данным учета.
На практике первая попытка почти всегда заканчивается одинаково. Расширение установлено, в плагине вписан адрес, а Алиса отвечает, что база не подключена или возвращает "Not Found". Причина не в кривых руках. Расширение в этой схеме только половина работы, и не самая сложная.
Что на самом деле требует штатная схема
Внутри архива Яндекса лежат расширение API_Яндекс.cfe, обработка подготовки публикации и файл default.vrd. Расширение добавляет в конфигурацию HTTP-сервис. Но HTTP-сервис в 1С не доступен сам по себе: к нему нужно прийти снаружи через веб-сервер.
Полный список того, что придется сделать:
- Веб-сервер. IIS на Windows или Apache. Установить, настроить модуль расширения веб-сервера 1С той же версии, что и платформа.
- Публикация базы. Через конфигуратор, с включенными HTTP-сервисами. Файл default.vrd из архива надо подложить вместо созданного, иначе не будет блока с токенами Яндекса.
- Белый адрес и домен. Яндекс обращается к базе из интернета. Нужен статический IP или туннель, доменное имя и сертификат: адрес должен быть https.
- Права. Учетная запись веб-сервера должна иметь доступ к каталогу базы или к серверу 1С. Файловая база на общем диске в этом месте регулярно ломается.
- Служебный пользователь. Отдельный пользователь 1С, имя которого совпадает с тем, что вписано в плагине. Пароль не нужен: вход подтверждается токеном Яндекса.
- Свежая платформа. Проверка токенов в публикации появилась в поздних выпусках 8.3. На старой платформе блок из default.vrd просто игнорируется, и публикация просит обычный пароль.
Каждый пункт по отдельности решаем. Вместе это день работы администратора, и половина пунктов не относится к 1С вообще: сеть, сертификаты, права на каталоги.
Есть и вторая сторона. Опубликованная база смотрит в интернет. Защищает ее только знание адреса и имени служебного пользователя, потому что пароль в этой схеме не проверяется. Для базы, где лежат зарплаты и договоры, это тяжелое решение.
Как быстрее
Поле "URL вашей базы" в плагине принимает любой адрес. Сервис "Жёлтый мост" отдает по этому адресу ровно то, что плагин ждет от опубликованной базы: список объектов, структуру, документы, план счетов, ведомости, произвольные запросы.
К самой базе при этом никто снаружи не обращается. В базу ставится внешняя обработка, она по исходящему соединению спрашивает у шлюза, есть ли задание, выполняет его внутри базы и отдает результат. Веб-сервер, публикация, белый адрес, сертификат и служебный пользователь из списка выше выпадают целиком. Расширение Яндекса тоже не нужно.
Что остается от штатной схемы: сам плагин в Яндекс 360 и поле с адресом. Все.
| Код | Наименование | Единица | Вид номенклатуры |
|---|---|---|---|
| 00-00000002 | Ассорти | шт | Продукция |
| 00-00000003 | Барбарис | шт | Продукция |
| 00-00000004 | Белочка | шт | Продукция |
Есть и приятное отличие в поведении. Штатное расширение при ошибке запроса отвечает Алисе пустым результатом без причины, и она вслепую повторяет попытку по несколько раз. Шлюз отдает причину текстом: нет такого реквизита, база не на связи, в конфигурации нет бухгалтерского учета. Помощник читает и меняет запрос, а не долбится в закрытую дверь.
Как это сделать
1. Зарегистрируйтесь в кабинете onecdatalink.ru, создайте ключ базы и скачайте обработку под свою платформу.
2. Откройте обработку в базе, вставьте ключ, нажмите "Старт". Для постоянной работы добавьте ее в дополнительные обработки с расписанием.
3. В карточке ключа на вкладке "Ключи приложений" выдайте ключ для приложения "Алиса AI для бизнеса". Под ним появится адрес вида https://api.onecdatalink.ru/alice/<ключ>.
4. В Яндекс 360 откройте Алису, раздел Плагины, карточку "1С:Предприятие". В поле "URL вашей базы" вставьте адрес из кабинета, пользователя укажите любого.
5. Задайте вопрос по базе.
Расширение, если уже поставили, можно оставить или удалить: на работу через шлюз оно не влияет. Публикацию базы, если успели сделать, лучше снять: держать базу открытой в интернет без необходимости незачем.
Не уверены, как подключается именно ваша база - в 1С:Фреш, в аренде, своя серверная или файловая? Выберите свой случай на главной: покажем, что мешает и что меняет мост.