Пример двусторонней интеграции 1С и Slack

Публикация № 1656540 10.05.22

Интеграция и обмен данными - WEB-интеграция

slack

Пример демонстрирует двустороннюю интеграцию 1С и Slack с передачей пользовательских данных между двумя системами Есть разные варианты реализации, учитывая, что Slack отправляет запросы на стороне сервере, это решение предполагает, что путь к 1C API будет доступен публично. Один из вариантов реализации с минимальными рисками, это использование AWS Lambda в качестве прокси запросов. Это предполагает, что база 1С доступа из AWS, или находится там. Данный пример ни в коем роде не является работающим решением и не содержит никаких настроек/конфигураций для обеспечения адекватной безопасности.

Конфигурация

  • Slack приложение, которое инициирует API вызовы
  • AWS Lambda функция с публичным URL
  • Веб-сервер 1C с опубликованным HTTP сервисом
  • 1С база данных как процессор и хранитель данных - подойдет любая из версий платформы 8.3 за последние годы т.к. используются только HTTP-сервис. Тестировалось на 8.3.21.

 

AWS Lambda конфигурация:

  • создайте новую Lambda функцию в том же регионе, где находится 1C веб-сервер
  • используйте Python 3.x
  • создайте новый Function URL (страница Configuration) - этот URL будет использован Slack в качестве цели API запросов
  • добавите Python код для проксирования запросов (замените целевой адрес 1С веб-сервера)
import json
import urllib3
import os


def lambda_handler(event, context):
    
    http = urllib3.PoolManager()

    r = http.request('POST', 'http://<1C:Enterprise Web Server>/slack/hs/slack/customer-form',
                 headers={'Content-Type': 'application/json'},
                 body=json.dumps(event))
                 
    result = r.data
    
    return {
        'statusCode': 200,
        'headers': {'Content-Type': 'application/json'},
        'body': result
    }

 

Создайте новое Slack приложение

Наиболее простой вариант это использовать Slack App Manifest - измените URL на адрес AWS Lambda публичный URL.

Опубликуйте приложение в своем workplace и добавите к тому каналу, куда нужно будет отправлять результаты.

display_information:
  name: Slack-1C
features:
  bot_user:
    display_name: Slack-1C
    always_online: false
  slash_commands:
    - command: /create-new-customer
      url: https://your-lambda-id.lambda-url.us-west-2.on.aws/
      description: Create new customer directly from Slack
      should_escape: false
oauth_config:
  scopes:
    bot:
      - commands
      - chat:write
      - incoming-webhook
settings:
  interactivity:
    is_enabled: true
    request_url: https://your-lambda-id.lambda-url.us-west-2.on.aws/
  org_deploy_enabled: false
  socket_mode_enabled: false
  token_rotation_enabled: false

 

Создайте и опубликуйте 1С приложение

Используйте slack в качестве имени веб-приложения.

Заполните две константы:

  • AccessToken - Bot User OAuth Token токен со страницы  OAuth & Permissions
  • ChannelId - ИД целевого канала куда отправлять результаты

Все должно быть готово для использования. Журнал логов в 1C содержит некоторую информацию для помощи в разборе ошибок.

 

Вызвать только что созданную slash-комманду

 

Slash command

 

Появится форма для создания нового клиента - структура полностью формируется в 1С

 

Autogenerated new customer form

 

Заполнить все поля

 

Completed form 

 

НажатьSave to 1C

 

Ответ от 1С возвращается в виде отдельного сообщения

 

Response from 1C

 

Созданные элементы справочника в 1С

 

New entries in 1C

 

Лицензия - MIT

Оригинальная публикация на GitHub.

Скачать файлы

Наименование Файл Версия Размер
Пример двусторонней интеграции 1С и Slack:

.cf 80,10Kb
0
.cf 80,10Kb Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. anton.fly7 170 11.05.22 15:18 Сейчас в теме
а зачем проксировать запросы через AWS ?
2. Aleksey.Bochkov 3557 11.05.22 15:44 Сейчас в теме
(1) чтобы избежать публикации открытого 1С API в интернете - насколько я понял, добавить аутентицикацию в вызовы со стороны Slack нельзя. Поправите меня, если я ошибся.
Вариант с открытым HTTP-сервисом 1С в интернете также подойдет, но я не хотел давать примера небезопасной конфигурации.
Оставьте свое сообщение

См. также

Конвертация любых адресов, написанных в свободной форме, к ФИАС Промо

WEB v8 1cv8.cf Россия Абонемент ($m)

Допустим у нас есть база с адресами клиентов, и написаны они могут быть как душе угодно. С опечатками, без индексов, без разделителей, в совершенно любом формате. Вот было бы здорово иметь функцию, которая одним нажатием кнопки преобразует любую белиберду к строгому представлению адреса по ФИАС? Восстановит индекс, исправит опечатки и вернёт на 100% валидный адрес. Для всех, кто мечтательно сказал "ДА!", выкладываю данную обработку.

2 стартмани

30.06.2020    11373    100    XilDen    15    

Сервис push-уведомлений для 1С (Push Notification Service For 1C - PNS4OneS)

WEB v8 Абонемент ($m)

Сервис предназначен для передачи сообщений от сервера 1С клиентским сеансам. В простом случае полученное сообщение отображается у клиента в виде всплывающего окна (процедура 1С ПоказатьОповещениеПользователя). С использованием данного сервиса можно оповещать пользователей о новых задачах, полученных электронных письмах, менеджеров о новых заказах, загруженных с сайта и т. п. Дополнительно имеется возможность передавать произвольные данные и обрабатывать самостоятельно полученные сообщения на клиенте, что позволяет реализовать более сложные сценарии (чаты, отображение прогресса длительной операции на сервере и т. п.).

1 стартмани

02.02.2022    4757    20    ltfriend    5    

Создание интерактивных обучающих курсов с помощью Vanessa Interactive

Инструментарий разработчика WEB Идеи и тренды в разработке v8 1cv8.cf Россия Абонемент ($m)

Приветствую Вас, коллеги. Сегодня Вам предлагается рассмотреть технологию создания интерактивных обучающих курсов, системы Onboarding, интерактивной справки для любых конфигураций разработанных на базе платформы 1С при работе в web клиенте. Прошу посмотреть ролик, кому неинтересно, как это работает, можно дальше не читать. Тестировалось на 1С:Предприятие 8.3 (8.3.20.1646).

1 стартмани

02.02.2022    3381    0    Viktor_Ermakov    2    

Создание простых сайтов на основе http сервисов - tips and tricks

WEB v8 Абонемент ($m)

Универсальный метод, html шаблоны, страницы с авторизацией и без, многоязычность, страница авторизации, etc.

1 стартмани

22.01.2022    4543    7    vl-sher1    29    

Модуль обмена с QIWI Промо

Банковские операции WEB v8 1cv8.cf УУ Абонемент ($m)

Компании, которые используют систему моментальных платежей QIWI, ценят ее за удобство по скорости выплат и для платежей по запросу. Но такие переводы сложны для учета, а при большом объеме проводимых операций отнимают много времени и превращаются в дополнительную головную боль. Мы сотрудничали с компаниями, которые отправляют большое количество платеже на QIWI, и часто слышали боль бухгалтеров о том, как им сложно работать с такими переводами. Поэтому мы автоматизировали выплаты через QIWI в 1С и создали модуль интеграции 1С c API QIWI Wallet и QIWI TopUp.

5 стартмани

25.05.2020    10770    1    Neti    10    

Расширение конфигурации для Web-доступа к 1С (1С в роли back-end)

WEB v8 1cv8.cf Россия Абонемент ($m)

Для реализации того, чтобы 1С формировала и отдавала страницу, которую можно было бы открыть через браузер было написано расширение, которое позволяет публиковать из 1С произвольные ресурсы, будь то API, сайт или изображения / прочие файлы.

1 стартмани

01.04.2021    12000    13    SaschaG    4    

Работа с картами в 1С на примере бесплатной библиотеки Leaflet

WEB Работа с интерфейсом Языки и среды v8 1cv8.cf Абонемент ($m)

Разработка функционала отображения и выбора пунктов доставки на карте прямо в 1С с помощью бесплатной библиотеки Leaflet. Тестирование производилось на платформе 8.3.15.1534 на тонком клиенте.

1 стартмани

31.03.2021    15197    49    Parsec1C    18    

Отправка Push-уведомлений через сервис Firebase Cloud Messaging по протоколу FCM HTTP v1 API

WEB v8 Абонемент ($m)

При разработке нативного приложения Android для ТСД, в котором присутствует функционал отображения задач кладовщикам, созданных в 1С, возникла необходимость отправлять push-уведомления о появлении новых задач. Для отправки таких уведомлений было решено использовать сервис Firebase Cloud Messaging (FCM). Так как для 1С, в отличии от других языков программирования, не существует готовых библиотек, что вполне логично, то очевидным способом отправки является использование протокола HTTP. Однако, существующая информация в интернете в части 1С содержит только сведений об отправке push-уведомлений через этот сервис с использованием устаревшего протокола HTTP Firebase Cloud Messaging. Сам Google не рекомендует использовать данный протокол и настоятельно склоняет к переходу на новый протокол FCM HTTP v1 API. Что ж, пришлось разбираться самостоятельно.

1 стартмани

24.03.2021    10842    17    ltfriend    12    

BIM: взаимодействие с платформой Autodesk Forge Промо

WEB v8 1cv8.cf Строительство Абонемент ($m)

Предлагаемый пример демонстрирует широкие возможности для взаимодействия «1С:Предприятие» с платформой Autodesk Forge и позволяет вам получить базовые представления о применения технологий информационного моделирования в строительстве. Поддерживаются все версии платформы от 8.3.12 и выше до 8.3.18.

1 стартмани

25.11.2020    58737    13    kandr    3    

Генератор маршрута по "документам отгрузки" в Google.Maps

Оптовая торговля Розничная торговля WEB v8 v8::ОУ УТ11 Россия УУ Абонемент ($m)

Данная обработка будет полезна для построения маршрута по документам реализаций за выбранный период.

7 стартмани

08.11.2020    13220    17    quazare    21    

Продажи со склада поставщика WildBerries. Взаимодействие с АПИ из 1С

WEB Розничная торговля v8 УТ11 УУ Абонемент ($m)

Взялся я тут делать интеграцию с АПИ нового проекта Диких Ягод - Продажи со склада поставщика (ПССП). Это было нелегко. Никто же не читает инструкцию (уже аж 7 версии!), а зря! Для начала сделал получение списка товаров и обмен остатками.

5 стартмани

06.11.2020    37640    200    kiv1c    141    

1С + react native

WEB v8 1cv8.cf Абонемент ($m)

Пример реализации клиента для 1С на react native.

1 стартмани

09.10.2020    12850    8    van_za    9    

Односторонний файловый обмен с сайтом по ftp (1C 2 Web) Промо

Файловые протоколы обмена (TXT, XML, DBF), FTP WEB v8 Розница УНФ ERP2 БП3.0 УТ11 КА2 ЗУП3.x Абонемент ($m)

Подходит под любую конфигурацию на управляемом интерфейсе на базе БСП 2.4.4 и выше. Позволяет гибко настроить выгрузку, практически любых, данных по расписанию на сервер ftp вашего ресурса. Ведение лога процесса выгрузки также предусмотрено.

3 стартмани

09.12.2019    15775    20    LamerSoft    0    

Учимся создавать http сервис (часть третья). Передача нескольких параметров в http сервис

WEB v8 1cv8.cf Абонемент ($m)

Пошаговое руководство по созданию http сервиса (часть третья). Передача нескольких параметров в http сервис, a также формирование сложных JSON строк.

1 стартмани

02.10.2020    20735    7    hpi    17    

Взаимодействие 1С со сторонними продуктами посредством REST и Golang (middleware). Часть 1 - RabbitMQ

WEB v8 1cv8.cf Абонемент ($m)

Часто 1С не может взаимодействовать со сторонними продуктами, например для шины предприятия RabbitMQ создают внешние компоненты. В статье предлагается новомодный подход REST API реализованный на приложении прокладке Middleware, язык тоже трендовый Golang. В статье немного познакомлю Вас с языком Golang, опишу интеграцию на стороне 1С (8.3.16.1502). Если статья зайдет, напишу как выгружать журнал регистрации по этой схеме в ElasticSearch

1 стартмани

31.08.2020    12321    12    dmitry-irk38    15    

Обмен через API с Честный знак (Система маркировки товаров)

Оптовая торговля WEB v8 1cv8.cf Оптовая торговля, дистрибуция, логистика Россия Абонемент ($m)

Рассмотрен пример обмена через API с Честным знаком с использованием электронной подписи.

1 стартмани

10.08.2020    30406    114    vasilievil    25    

"Учет штрафов ГИБДД" с возможной загрузкой из открытых источников в интернет Расширение конфигурации 1С: Предприятие 8.3 Промо

Обработка документов WEB v8 v8::УФ 1cv8.cf Россия БУ УУ Абонемент ($m)

Расширение конфигурации Бухгалтерия предприятия, редакция 3.0 (при минимальных изменениях любой типовой конфигурации), позволяющее вести историю данных по штрафам ГИБДД для справочника транспортных средств компании. Бонусом поставляется внешняя обработка, способная загружать эти данные из открытых источников в интернет.

4 стартмани

30.12.2019    24330    33    capitan    26    

HTTP сервисы по OpenAPI спецификациям

WEB v8 1cv8.cf Абонемент ($m)

Начинаем путь разработки HTTP сервисов с создания спецификаций OpenAPI. Автодокументация сервисов формата Swagger UI без зависимостей. Настройка сервисов в режиме предприятия.

1 стартмани

29.06.2020    19744    20    shmalevoz    22    

Конструктор HTTP-соединений в 1С (обычные и управляемые формы)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Иногда возникают мысли о том, чтобы прикрутить сервисы, связанные с HTTP-соединениями, в 1С. Необходимо писать обработку и анализировать результат.

1 стартмани

02.06.2020    10948    34    Denr83    0    

DaJet QL - расширяемый язык запросов

WEB v8 Абонемент ($m)

DaJet QL поддерживает практический полный синтаксис SQL Server 2005-2016. Кроме этого это расширяемый язык запросов. Обращение к объектам СУБД выполняется в терминах метаданных 1С. Доступ к возможностям этого языка запросов реализован в виде web api сервиса. Результаты запросов возвращаются в виде JSON.

1 стартмани

20.04.2020    15797    12    zhichkin    19    

Внешняя компонента для работы по Web-socket протоколу x32 x64 Промо

Разработка внешних компонент WEB v8 Абонемент ($m)

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

2 стартмани

30.03.2018    41977    100    Ditron    115    

Обмен данными между OZON и 1С

Оптовая торговля WEB v8 v8::ОУ УТ11 УУ Абонемент ($m)

Данная подсистема позволяет загружать отправления «с моего склада» из OZON (в статусе «Ожидают сборки») в 1с Управление торговлей 11 по API. Так же есть возможность выгружать статусы отправлений «awaiting_deliver, т.е. Ожидает отгрузки» и «cancelled, т.е. Отменен» из 1с в OZON по API.

10 стартмани

09.04.2020    38909    238    vex2865    152    

Пример работы с Trello из 1С

WEB v8 1cv8.cf Россия УУ Абонемент ($m)

Небольшая конфигурация содержит примеры обмена с онлайн-сервисом Trello.

1 стартмани

15.02.2020    21103    58    terrorion    18    

Взаимодействие HTML (COM объект, WebKit) с 1С (обычные и управляемые формы)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Показан пример использования HTML (COM объект, WebKit) в 1С (8.3).

2 стартмани

18.01.2020    15514    33    Deniskinr83    0    

Работа с релизами 1С и договорами ИТС Промо

WEB БСП (Библиотека стандартных подсистем) v8 1cv8.cf Абонемент ($m)

Работа с релизами 1С и партнерским кабинетом.

2 стартмани

15.08.2019    24364    65    RocKeR_13    38    

Google drive - менеджер файлов

WEB Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Синхронизация с гугл диском легко и просто!

10 стартмани

05.12.2019    28361    44    zykov_vitaliy    28    

Автозаполнение адреса по КЛАДР в УПП при выгрузке контрагента с портала компании (API dadata)

WEB v8 1cv8.cf Абонемент ($m)

Заведение, согласование контрагентов организовано на портале компании. Далее по web-сервису контрагенты выгружаются в УПП (юр.адрес и факт.адрес выгружаются строкой). Задача автоматизировать заполнение адреса в УПП по КЛАДР.

1 стартмани

03.12.2019    12831    3    John_d    10    

Работа с Яндекс-картами в 1С (вывод меток, прокладка маршрута, отображение балуна, вывод меток в кластеры) (обычное и управляемое приложение)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Работа с Яндекс-картами в 1С (управляемое приложение). Обработка показывает, как можно найти адреса на карте Яндекс, проложить маршрут.

2 стартмани

20.11.2019    25292    167    Denr83    0    

Проверка VAT номеров Промо

WEB v8 1cv8.cf Абонемент ($m)

Обработка для вызова сервиса проверка VAT номера.

1 стартмани

26.11.2018    21684    3    wtlz    1    

Пример взаимодействия HTML (COM объект, WebKit) с 1С (динамический отбор) (обычные и управляемые формы)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Показан пример использования WebKit в 1С (8.3).

2 стартмани

18.11.2019    16682    19    Denr83    0    

Яндекс сервисы [Расширение]

Универсальные обработки WEB v8 1cv8.cf Абонемент ($m)

Расширение для работы с Яндекс-сервисами (предиктор,переводчик,проверка орфографии)

1 стартмани

24.10.2019    18079    11    noprogrammer    12    

Выгрузка номенклатуры в социальную сеть Вконтакте

WEB Оптовая торговля Розничная торговля v8 1cv8.cf Абонемент ($m)

Обработка для быстрой и легкой выгрузки товаров Вконтакт. Так просто еще не было)))

2 стартмани

14.08.2019    27197    67    kaliuzhnyi    48    

Конфигурация Парсер Сайтов Объявлений (Авито avito.ru) Промо

WEB v8 Россия Абонемент ($m)

Вкратце: Например, вы можете автоматически несколько раз в день (любое заданное время) загружать свежие объявления в категории Телефоны (любой категории или произвольный запрос) и отправлять сообщения тем, которые содержат слово «iphone 6S» и цена ниже 50 000 руб. Затем отправлять себе на почту отчеты о загруженных объявлениях и результатах рассылки. А можете загружать данные в основную учетную систему.

21.03.2016    41862    0    capitan    21    

Путеводитель по истории релизов

WEB v8 1cv8.cf Абонемент ($m)

Отчет по истории выпуска релизов и анализа информации по обновлениям.

5 стартмани

13.08.2019    22331    13    YPermitin    18    

Подключение к сайту и отправка или получение данных по API (POST, GET...) (с описанием кода)

WEB v8 1cv8.cf Абонемент ($m)

Простая обработка по отправке или получение данных с любого сервера главное знать ресурс (выполняемую функцию) и тело запроса.

1 стартмани

12.08.2019    34429    69    MaxPowerr    5    

Конфигурация для обмена данными (интеграционная шина)

Внешние источники данных WEB v8 1cv8.cf Абонемент ($m)

Система позволяет организовать обмен данными, как с базами 1С, так и любыми другими приложениями. Система представляет собой отдельную конфигурацию. Система позволяет организовать гибкие возможности по настройке обмена. В качестве брокера сообщений, для передачи данных, используется отдельная самостоятельная конфигурация на 1С. Комплект поставки содержит файл расширения для "клиентской" части шины, данное расширение позволяет без снятия "ключа" организовать гибкий механизм обмена данными.

4 стартмани

08.07.2019    24634    40    miha-28    17    

Работа с картой. Кадастровый учет (Росреестр). Тематические карты Промо

WEB Рабочее место v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка для работы с картами в 1С. Получения изображения с публичной кадастровой карты России, построения тематических карт

10 стартмани

31.08.2017    28909    23    vipchep    3    

Почта России - отправка и отслеживание, интеграция с Документооборот 8; УНФ

Документооборот и делопроизводство WEB v8 ДО Россия УУ Абонемент ($m)

Выгрузка почтовых отравлений в личный кабинет отправки Почты России; отслеживание почтовых отправлений через Почту России; расширение для интеграции Документооборот 8, УНФ с Почтой России

10 стартмани

04.06.2019    21530    151    wtlz    79    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    29997    101    MarkoSokolov    48    

1С и WebKit. Вариант взаимодействия

WEB v8 1cv8.cf Абонемент ($m)

В результате перехода на WebKit тип свойства Документ у поля, имеющего вид ПолеHTMLДокумента, изменился с COMОбъект на ВнешнийОбъект. Также изменилась DOM модель документа, доступная через это свойство.

2 стартмани

23.02.2019    46095    93    mi1man    68    

Пример использования REST API Яндекс Диска Промо

WEB v8 1cv8.cf Абонемент ($m)

Пример использования REST API Яндекс Диска: чтение диска, добавление каталога, загрузка файла, скачивание файлов или каталогов, удаление файлов или каталогов.

1 стартмани

26.06.2018    38443    67    MKFreeUser    16    

Строим маршруты на картах в 1С с помощью OpenStreetMap, OSRM и Leaflet

WEB v8 1cv8.cf Транспорт, автопарки, такси Абонемент ($m)

Краткая статья о том как вывести на карту (в 1С) маршруты с помощью OpenStreetMap, OSRM и Leaflet. По данной системе очень мало примеров, но так как OpenStreetMap является бесплатным сервисом и не требует никаких ключей и регистраций, и является довольно мощным механизмом, решил написать небольшую статью "как это сделать?". В первую очередь скажу, все намного проще, если вы используете последнюю версию платформы (8.3.14), где есть поддержка практически всех браузеров (IE 11, EDGE, Mozilla), но что делать если у нас не самая свежая платформа, где поддержка только IE 9?

2 стартмани

12.02.2019    42364    141    Ditron    134    

Яндекс карта в документе "Заказ клиента" на закладке "Доставка". (Расширение) УТ 11.4

Обработка документов WEB Оптовая торговля v8 УТ11 Россия УУ Абонемент ($m)

Показ яндекс карты в документе "Заказ клиента" на закладке "Доставка" и печать карты для курьера с контактными данными. (Расширение)

3 стартмани

05.02.2019    17373    15    ret    9    

Яндекс карты 2.1. Построение маршрута. Передача длины маршрута в реквизит формы

WEB v8 1cv8.cf Абонемент ($m)

Пригодится как пример использования Яндекс карты 2.1 для построения маршрута.

1 стартмани

24.01.2019    23892    99    John_d    33    

Работа с публикациями "Инфостарт" Промо

Инфостарт WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    31986    16    RocKeR_13    16    

Обмен файловыми базами данных через Yandex диск Промо

WEB v8 Россия Абонемент ($m)

Выполнение операций обмена с Yandex диском для файловых БД, по протоколу WebDav, в автоматическом или ручном режимах.

1 стартмани

11.06.2018    24130    7    slimper    1