Алиса на 1С

08.01.24

Интеграция - WEB-интеграция

В данной статье расскажу о том, как создать навык Алисы на базе 1С, через функцию Яндекс Облака. Обработка запросов навыка Алисы происходит в базе 1С. Тестировали и разрабатывали на платформе 1С:Предприятие 8.3 (8.3.23.1912).

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Алиса на 1с:
.cf 180,61Kb
13
13 Скачать (1 SM) Купить за 1 850 руб.

Немного предыстории по другим статьям.

//infostart.ru/1c/tools/1807166/ - тут представлена простая функция - запрос и один ответ с минимумом логики.

//infostart.ru/1c/tools/807585/ - 18 год, УЖАС! Алисе уже больше 6 лет ))) В данной статье описана сложность с https, для преодоления чего используется Scritp 1c. Очень сложно, как мне кажется - в настоящий момент https можно обойти, и нет проблем с ответом от Алисы.

 

Как подготовить новый навык

В настоящий момент это сделать очень просто. Сначала регистрируемся в яндекс облаке.

1. Создаем облачную функцию в яндекс облаке, зачем? Потому, что не хочется заморачиваться с https сертификатом.  

 

 

2. В функцию надо поместить такой код

Урл указываем тот, где находится наша опубликованный http сервис от базы 1С.

<?php
function handler($event, $context)
{
    
$myCurl = curl_init();
curl_setopt_array($myCurl, array(
    CURLOPT_URL => 'http://..........',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => array('Content-Type: application/json'),     
    CURLOPT_POSTFIELDS => json_encode($event)
));
$responsecrl = curl_exec($myCurl);
curl_close($myCurl);    
    
    $response = $responsecrl;

    return $response;

}

Вопрос знатокам php: что делает этот код? Если не знаете, то посмотрите спойлер ниже!

 

 

Теперь мы принимаем информацию, которая передается от Алисы в облачной функции, обрабатываем эту информацию в 1С и возвращаем результат. Для этого создаем и публикуем базу по удобному нам ресурсу.  

3. Далее в опубликованной базе мы принимаем данные и обрабатываем их. Можно сделать свой http сервер по аналогу в базе, а можно обработать со своими параметрами и условиями. 

Для примера я прикладываю конфигурацию, где есть http сервис, его публикуем. И далее обрабатываем ответ.

В конфигурации есть дополнительно 2 объекта:

Лог - записываются все входящие запросы, для анализа и отладки.

Сценарии Алисы - заготовка под другие сценарии, которые собирают информацию с нужными параметрами, и далее выдают определенный алгоритм действий. (Предполагалось выполнение кода 1С через Выполнить("")).

Информацию о том, какая информация передается, можно увидеть тут 

https://yandex.ru/dev/dialogs/alice/doc/response.html

4. Настраиваем навык Алисы 

https://dialogs.yandex.ru/developer/skills/, регистрируемся, создаем навык и тестируем.

 

 

5. Проверяем работу Алисы.

Заходим в свое мобильное устройство и запускаем навык.

 

Оставляю здесь все как есть, так как применение и использование навыка так и не востребовалось. Будет удобно использовать для предоставления информации (помощь институтам для предоставления информации для студентов, библиотекам информация о задолженности, о наличии книг, бронирования и т.д.) - то есть все, что нужно для общественного блага.

 

P.S. Тестировали и разрабатывали на платформе 1С:Предприятие 8.3 (8.3.23.1912).

код Алиса 1с и Алиса интеграция

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17800    19    22    

17

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19882    13    17    

17

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14436    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1203    1    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dmpas 418 08.01.24 10:35 Сейчас в теме
чтобы не публиковать базу наружу мы с функцией общались через очереди (сначала через Yandex Queue, потом на Rabbit перешли): функция отправляет запрос в очередь и подписывается на блокирующее прослушивание ответа с таймаутом, регламент в 1С прослушивает очередь, принимает запрос, обрабатывает, отправляет в очередь ответов.
aleksey2; JohnyDeath; +2 Ответить
4. JohnyDeath 302 08.01.24 22:50 Сейчас в теме
(1) А почему ушли с Yandex Queue? И как с ним работали из 1C? Через rest?
Сервер Rebbit где развернули? Публично в интернетах или же в локалке и делали какие-то настройки по связи локалки с функцией в ЯОблаке?
И что за задачу решали с навыком Алисы?
5. dmpas 418 08.01.24 22:57 Сейчас в теме
(4) да я не про алису совсем. Мы с яндекс-маркетом через эту штуку интегрировались и запрос-ответ по обеим сторонам в сумме часто не укладывался в требуемый лимит 5 секунд (прямо огонь скорость...). Работали через REST, другого варианта у них нет.
Rabbit развернули на клаудрэббите, на отечественных мощностях на тот момент не было ни у кого кролика-как-сервис. Обменивались через битовскую компоненту.
А на алису всё планируем повесить обновление базы чисто по приколу :-D но руки не доходят, как обычно...
JohnyDeath; +1 Ответить
6. JohnyDeath 302 08.01.24 23:02 Сейчас в теме
(5) Yandex Queue отвечает на запросы более чем за 5 секунд?? Жесть конечно.
Или у вас там огромные порции данных летали?
7. dmpas 418 08.01.24 23:05 Сейчас в теме
(6) нет, 5 секунд было в сумме: послать запрос, принять запрос в 1С, (прошебуршать в 1С - это по замерам до 2 секунд всего лишь), отправить ответ, принять ответ.
огромных порций там не было. Маркет нам присылает 3-5 позиций для проверки остатка, мы им в ответ отдаём остаток по этим позициям. Вроде везде всё быстро, но в сумме не быстро. А на кролике вообще нареканий не было по скорости.
JohnyDeath; +1 Ответить
10. uribur 165 08.01.24 23:32 Сейчас в теме
(1) ооооо, ничоси костыль вы придумали ))))
2. winapi 61 08.01.24 20:35 Сейчас в теме
8. uribur 165 08.01.24 23:30 Сейчас в теме
(2) можно сделать определенные тестовые запросы сторонним бухгалтерам )))
или просто сделать какой то свой сервис с вопросами и ответами.

В моем случае это была идея взаимодействия сотрудников с 1с, не через мобильное приложение, а через голос.
3. efin 08.01.24 20:57 Сейчас в теме
Очень удобно, голосовые запросы к базе, в режиме многозадачности очень не хватает такого. Но у нас везде Маруся, буду искать как провернуть такое, а так же голосовые уведомления об авариях
9. uribur 165 08.01.24 23:31 Сейчас в теме
(3) Хорошая идея. Можно накидать регистр с критическими ошибками, и спрашивать есть ли криты на проде )))
11. TerveRus 10.01.24 13:13 Сейчас в теме
Ничего не понятно, что за навык имелся ввиду и при чем тут чат с кнопками.

Для меня навыки Алисы - это общедоступные ВСЕМ пользователям Яндекс-Станций навыки типа игр или информации о погоде.
12. uribur 165 10.01.24 18:04 Сейчас в теме
(11) а можно сделать навык также публичный, и каждый студент после аутентификации может получить информацию о том какие у него пары, какие у него долги, какие бонусы, какие мероприятия ожидаются в ближайшее время в вузе.
Я думаю актуально транслировать информацию напрямую на устройство участника большого сообщества, при
этом цененапраленно и то что ему нужно без использования компьютера.
13. METAL 299 18.01.24 22:39 Сейчас в теме
(12) Соглашусь с (11), не хватает примеров для иллюстрации
14. UPKA 25.01.24 13:31 Сейчас в теме
Можно более подробно, для чего справочник "Сценарии алисы", как его заполнять и обрабатывать?
В HTTP сервисе не вижу, что бы он использовался. Подскажите, где именно он используется?
15. uribur 165 01.02.24 10:26 Сейчас в теме
(14) предполагалось искать сценарий по имени в запросе (например сценарий "Отметить посещение"). Далее через алису спросить все параметры (код сотрудника, время прихода), и далее через выполнить , происходил какой либо код, отправка в рабочую базу информации.
Оставьте свое сообщение