Пример интеграции MyChat и "1С: Предприятие" через REST

Отправка сообщений из "1С: Предприятие" MyChat через REST

В примере отправляется приватное сообщение от имени встроенного робота (Elisa) пользователю с UIN = 3. Никаких DLL библиотек или внешних компонент не требуется.


  Сервер = "192.168.10.1";
  Порт = 80;
  Ресурс = "/API/?data=";
  Ключ = "iddqd";
  UINПолучателя = "3";
    
  ТекстСообщения = "Тестовое сообщение от " + ТекущаяДата() + Символы.ВК + Символы.ПС + "строка 2";
   
  РазделительСтрок = "\r\n";
  ТекстСообщения = СтрЗаменить(ТекстСообщения, "\", "/"); // замена обратного слэша на прямой
  ТекстСообщения = СтрЗаменить(ТекстСообщения, Символы.ПС, РазделительСтрок);
  ТекстСообщения = СтрЗаменить(ТекстСообщения, """", "'"); // замена двойной кавычки на одинарную

  СтруктураДанных = Новый Структура;
  СтруктураДанных.Вставить("cmd", "0002");
  СтруктураДанных.Вставить("UserFrom", "0");
  СтруктураДанных.Вставить("UserTo", UINПолучателя);
  СтруктураДанных.Вставить("Msg", ТекстСообщения);
  СтруктураДанных.Вставить("APIStype", "mcrest");
  СтруктураДанных.Вставить("ServerKey", Ключ);
    
  ЗаписьJSON = Новый ЗаписьJSON;
  ЗаписьJSON.УстановитьСтроку(); 
  ЗаписатьJSON(ЗаписьJSON, СтруктураДанных);
  СтрокаJSON = ЗаписьJSON.Закрыть();  
    
    Попытка
        HTTP = Новый HTTPСоединение(Сервер,Порт,,,,30);
        HTTPЗапрос = Новый HTTPЗапрос(Ресурс);
        HTTPЗапрос.Заголовки.Вставить("Content-type", "application/x-www-form-urlencoded");
        HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать);
        Результат  = HTTP.ОтправитьДляОбработки(HTTPЗапрос);
        Если Результат.КодСостояния <> 200 Тогда
            Сообщить("Ошибка при отправке запроса: " + Результат.КодСостояния);
        КонецЕсли;
    Исключение
        Сообщить("Ошибка при отправке запроса: " + ОписаниеОшибки());
    КонецПопытки;

Ещё посмотреть

Команды MyChat Integration API

Список ошибок MyChat Integration API

C#

Delphi XE3

Java

Python

REST

Работа через сокеты