Простая интеграция Яндекс.Алисы и 1С в 2022 - еще проще!

12.07.22

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

Если когда-то у вас или вашего босса было желание получить данные из базы голосом, прямо в Яндекс.Алисе, эта статья для вас! Работает в приложении Яндекса на смартфоне и на Яндекс.Станции.

Скачать исходный код

Наименование Файл Версия Размер
Простая интеграция Яндекс.Алисы и 1С в 2022 - еще проще! код C#
.cs 28,26Kb
4
.cs 28,26Kb 4 Скачать

Введение. 4 года назад я уже писал похожую статью

Насколько все проще стало сейчас в 2022! Достаточно сказать, что дольше всего в прошлый раз я потратил времени на oScript обертку которая принимала запросы от Яндекс.Диалогов и разворачивание сервера под нее. Теперь я всё сделал за 1 день!

Яндекс.Диалоги

Для того, чтобы команду можно было активировать голосом, нужно для нее создать навык на платформе Яндекс.Диалоги.

Ну начнем с того, что сделаем диалог. Дадим ему имя и установим переключатель Backend в раздел "функция в яндекс.облаке". Саму функцию напишем чуть позже.

 

 

Далее обязательно заполнить какой фразой будет запускаться ваш диалог. Если использовать его будете только вы, можно сделать его Приватным. Опубликовать и использовать у себя на смартфоне в приложении Яндекса, если вы там авторизованы.

 

 

Заполним небольшое описание, если вы все-таки будете создавать публичный навык.

И конечно выберем симпатичную иконку Доброго Робота.

 

И конечно выберем симпатичную иконку Доброго Робота.

Яндекс.Облако

Теперь сделаем облачную функцию-прослойку на C#. Она будет принимать команды от Яндекса и делать запросы к 1С базе.

Для этого идём в Яндекс.Облако, регистрируемся и заводим Биллинг. Без рабочего биллинга у вас ничего не получится, но волноваться не надо - функции для Яндекс.Диалогов бесплатны

 

 

Итак изучаем меню Яндекс.Облака. М, сколько всего вкусного! Но нам пока нужна только одна вещь - "Cloud Functions", выбираем её.

 

 

Ой, сюрприз! Никакого oScript и тем более языка 1С тут нет. Говорила мне мама кушать много каши и учить Питон, но я не слушал!

Будем писать на .net core! Вполне мощный инструмент для наших задач.

 

 

Теперь скачиваем приложенный к статье файл, заходим в редактор и копируем его туда!

 

 

Самая сложная часть - в том месте кода, где есть комментарий "//web request to 1C base" написать свой запрос к HTTP интерфейсу вашей базы 1С. Рекомендую тут для отладки запросов использовать Postman и изучить статьи раз и два

То что написал я приведено ниже:

Код обработки запроса:

string originalU = request.Request.OriginalUtterance;
            
            if (originalU == "команда001")
            {
                reqC = reqC + " можно обработать команду как-то ";
            }
            else if (originalU.ToLower().Contains("продажи базы"))
            {
                //web request to 1C base
                var client = new HttpClient();

                var requestH = new HttpRequestMessage();
                requestH.Method = HttpMethod.Post;
                requestH.RequestUri = new Uri(@"https://your1Cip.ru/httpmethod");
                //requestH.Headers.Accept
                var responseH = client.Send(requestH);
                string resStr = responseH.Content.ReadAsStringAsync().Result;
                AliceResponse al = new AliceResponse();
                al.Response.Text = resStr;
                
            }

Проверяем. IT WORKS! IT WORKS!

 

 

Как сделать торчащий публично наружу из 1С HTTP сервис, который будет принимать HTTP запросы от Яндекс.Диалогов и возвращать продажи?

Эту задачу я оставлю вам на самостоятельное изучение. Порекомендую почитать статьи раз и два и три

Послесловие

если до прочтения этой статьи вы еще не слышали про Postman, Яндекс Облако, или даже про REST HTTP сервисы, у меня для вас плохие новости...пора учиться как 1С интегрируется и общается с другими системами!

См. также

Интеграция Альфа Авто 5 / Альфа Авто 6 и AUTOCRM / Инфотек

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

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

36000 руб.

03.08.2020    15955    13    18    

13

Заполнение описания номенклатуры с помощью ChatGPT

Мастера заполнения Нейросети Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

Расширение для заполнения описания номенклатуры с помощью модели ИИ ChatGPT. Расширение формирует продающее описание товара по его наименованию с помощью модели искусственного интеллекта. Будет полезно для владельцев интернет магазинов, каталогов товаров и продающих через маркетплейсы. Адаптировано для основных конфигураций: УТ, ЕРП, КА, УНФ. Прошло аудит на 1cfresh.com. Версия для автоматического заполнения

5000 руб.

13.03.2023    16237    43    49    

74

Потоковая предметная фотосъемка c удалением фона (Canon & Nikon)

Нейросети 8.3.6 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Обработка подключения фотокамер Canon и Nikon к Управление торговлей 11.4 для потоковой загрузки фотографий в карточки товаров с автоматическим удалением фона

22800 руб.

24.06.2021    9289    2    3    

11

Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС

Обмен с ГосИС WEB-интеграция Платформа 1С v8.3 Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:Документооборот 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Обработка является альтернативой механизму, разработанному фирмой 1С и заполняющему реквизиты контрагента по ИНН или наименованию. Не требуется действующей подписки ИТС. Вызывается как внешняя дополнительная обработка, т.е. используется, непосредственно, из карточки контрагента. Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС (egrul.nalog.ru) для БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0, УТ 10.3, УТ 11.x, КА 1.1, КА 2.x, УПП 1.x, ERP 2.x, УНФ 1.5, УНФ 1.6, УНФ 3.0, ДО 2.1

2400 руб.

28.04.2016    89033    163    216    

318

[Расширение] БОР-Навигатор.Культура

Зарплата Бюджетный учет WEB-интеграция Обмен с ГосИС Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бюджетный учет Платные (руб)

Расширение конфигурации, включающее в себя объекты, необходимые для подготовки и сдачи отчета "Штатная численность" системы "БОР-Навигатор.Культура" в программе "1С:Зарплата и кадры государственного учреждения", редакция 3.1.

8400 руб.

01.02.2019    25893    9    0    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. capitan 2472 15.07.22 09:52 Сейчас в теме
История как известно циклична
Десять (!) лет назад на спор с гендиром, делал проговаривание текста голосом из 1С офисным виджетом Мерлин (для тех кто знает)
Perfolenta; sapervodichka; +2 Ответить
3. Perfolenta 204 19.07.22 15:46 Сейчас в теме
(1) Мерлин был классным, я его очень широко использовал в своих программах, в том числе и в 1С 7.7... очень жалел, когда его выпилили из Винды... конечно, его до сих пор можно прикрутить, если постараться, но когда он по умолчанию в Винде был было очень удобно...
2. papami 55 17.07.22 17:17 Сейчас в теме
Там на все дела отводится 3 секунды. Не всё можно по такой схеме успеть получить. Ну это к слову.
Посмотрите у меня в профиле запуск OneScript в Serverless Container YC. Вызовы Алисы не бесплатные, но "фритир" хороший. Для приватных навыков хватит вполне.
Да, еще ответ Алисы был не совсем корректный. Она вернула вместо денег в кассе - скорость COM-порта на сканере ШК. Шутка.

Плюсанул!
user980578; +1 Ответить
4. пользователь 26.11.22 18:31
Сообщение было скрыто модератором.
...
5. UPKA 25.01.24 14:26 Сейчас в теме
Подскажите, в коде обработке Вы пишите указать ссылку на HTTP сервис, но не вижу, где вы указываете логин и пароль. Подскажите, как указать?
Оставьте свое сообщение