Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Интеграция 1С и api.intellectdialog.com

Интеграция 1С и api.intellectdialog.com
Я
   ChMikle
 
25.03.21 - 15:25
Кто-нибудь сталкивался ?
   Garykom
 
1 - 25.03.21 - 15:43
(0) И в чем проблема с таким замечательным апи интегрировать?

Или все же реклама?
   ChMikle
 
2 - 25.03.21 - 15:51
(1) проблема есть не уходит сообщение , вроде по писанию все делаю . подскажите ?
   Fragster
 
3 - 25.03.21 - 16:06
то, ято ты отправляешь и то, чо тебе возвращает сервис мы должны угадать? как и твой код?
   ChMikle
 
4 - 25.03.21 - 16:12
(3) с удовольствием выложу , дяденьки :)
   ChMikle
 
5 - 25.03.21 - 16:17
Функция ВыслатьСообщение (KeyApiToken,provider_id)
    
    ПараметрыЗапроса = Новый Структура;
    
    ПараметрыЗапроса.Вставить("phone","7900*******");
    ПараметрыЗапроса.Вставить("text","Тестовое сообщение");
    ПараметрыЗапроса.Вставить("provider_id",provider_id);
    
    ТекстЗапроса = СобратьJson(ПараметрыЗапроса);

    ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL();
    
    HTTPСоединение = Новый HTTPСоединение("api.intellectdialog.com",443,,,,, ЗащищенноеСоединение); 
    ЗаголовкиHTTP = Новый Соответствие;
    ЗаголовкиHTTP.Вставить("Authorization",KeyApiToken);        
    ЗаголовкиHTTP.Вставить("Content-Type" , "application/json");
    ИмяМетода = "/v2/messages";
    
    
    HTTPЗапрос = Новый HTTPЗапрос(ИмяМетода,ЗаголовкиHTTP);
    
    HTTPЗапрос.УстановитьТелоИзСтроки(ТекстЗапроса);
    
    РезультатЗапроса = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
    
    Возврат РазобратьJson(РезультатЗапроса);
    
КонецФункции
   ChMikle
 
6 - 25.03.21 - 16:19
ответ ошибка структура в ней Phone тип [массив] одна строка со значением "Phone is empty", аналогично с text и provider_id.
   ChMikle
 
7 - 25.03.21 - 16:20
Тело запроса
Наименование    Тип    Обязательный    Описание
phone    string    true    Телефон получателя
text    string    true    Текст сообщения
provider_id    string    true    Идентификатор провайдера
template    string        Наименование согласованного шаблона сообщения Whatsapp (обязательный при отсутствии параметра text)
vars    array        Переменные шаблона сообщения для template, если их нет то параметр педается пустым (обязательный при отправке параметра template)
mark    string        Маркировка сообщения рассылки, максимальная длина 36 символов
employee_id    string        Идентификатор сотрудника
attachment    string        Ссылка на вложение
Тело ответа
Наименование    Тип    Описание
date    string    Дата и время сервера в формате YYYY-mm-dd HH:ii:ss
status    string    Статус выполнения: success или error
data    object    Объект сообщения
https://api.intellectdialog.com/#post_message описание метода
   ChMikle
 
8 - 25.03.21 - 16:29
400 Bad Request - возвращется, если параметры не прошли валидацию, с указанием параметра и текста ошибки .
400 код ошибки , а что не так с запросом не пойму никак
   BeerHelpsMeWin
 
9 - 25.03.21 - 16:35
А если разные форматы у phone попробовать? +7xxxyyyyyyy, +7(xxx)yyyyyyy?
   ChMikle
 
10 - 25.03.21 - 16:39
(9) в примере от разработчика номер начинается с 7
   Kassern
 
11 - 25.03.21 - 16:45
(10) provider_id надеюсь стока, а не число?
   Kassern
 
12 - 25.03.21 - 16:47
(0) попробуй через какой-нить внешний сервис сделать пост запрос, например через постман или fidler =
   Fragster
 
13 - 25.03.21 - 16:47
то, что ты отправляешь и то, чо тебе возвращает сервис мы должны угадать?
   ChMikle
 
14 - 25.03.21 - 16:52
тело запроса {"phone":"7900*******","text":"Тестовое сообщение","provider_id":"39822b16-cda4-4286-8433-cffd291c3d99"}
   ChMikle
 
15 - 25.03.21 - 16:54
response    Структура    
date    "2021-03-25 16:53:29"    
errors    Структура    
validation    Структура    
phone    Массив    
provider_id    
text    Массив    
status    "error"    
ответ
   Fragster
 
16 - 25.03.21 - 17:01
(15) это не то, что ты отправляешгь
   Fragster
 
17 - 25.03.21 - 17:03
кстати, а почему ты решил, что там json, а не form data?
   Fragster
 
18 - 25.03.21 - 17:04
сдается мне, проще у них примеры попросить
   ChMikle
 
19 - 25.03.21 - 17:04
(16) это ответ
   ChMikle
 
20 - 25.03.21 - 17:04
(17) написано в требованиях
   ChMikle
 
21 - 25.03.21 - 17:06
(18) так я их пример и посылаю, по образу и подобию
   Fragster
 
22 - 25.03.21 - 17:06
ну тогда прямая дорога в постман/соапуи и прочие
   Fragster
 
23 - 25.03.21 - 17:06
отправить напрямую, посмотреть, что получится
   Fragster
 
24 - 25.03.21 - 17:07
а потом сравнивать с 1с
   Fragster
 
25 - 25.03.21 - 17:07
"Для авторизации необходимо получить ключ: API_Key_v1 - эту версию ключа можно найти в интерфейсе управления на странице редактирования организации. Ключ необходимо отправлять при каждом запросе методов, в котором он указан, в заголовке Authorization.
Также необходимо отправлять параметры тела запроса только в формате, который указан в методах как Content-Type, с отправкой соответствующего заголовка. "
   ChMikle
 
26 - 25.03.21 - 17:09
(25) я ключ указываю 
HTTPСоединение = Новый HTTPСоединение("api.intellectdialog.com",443,,,,, ЗащищенноеСоединение); 
    ЗаголовкиHTTP = Новый Соответствие;
    ЗаголовкиHTTP.Вставить("Authorization",KeyApiToken);        
    ЗаголовкиHTTP.Вставить("Content-Type" , "application/json");
    ИмяМетода = "/v2/messages";
   ChMikle
 
27 - 25.03.21 - 17:26
с платформы сообщения в ватсапп доходит , а через апи нет
   ChMikle
 
28 - 26.03.21 - 09:43
разработчки api.intellectdialog.com говорят что файл приходит не формата JSON и распарсить не могут , хотя для заполнения строки использую стандартную функцию ЗаписатьJSON(); кто-нибудь сталкивался, может какие-то дополнительные параметры надо заполнять ?
   МимохожийОднако
 
29 - 26.03.21 - 09:55
(28) У этой стандартного метода есть некая кучка параметров. Поиграйся с ними. Посмотри файл, который получаешь после этого метода.
   ChMikle
 
30 - 26.03.21 - 09:56
(29) там все-то 3 параметра типа строка ...
 
 
   МимохожийОднако
 
31 - 26.03.21 - 09:57
3 параметра , не менее 6 вариантов
   ChMikle
 
32 - 26.03.21 - 10:13
разобрался , HTTPЗапрос.УстановитьТелоИзСтроки(СобратьJson(ПараметрыЗапроса1),"UTF-8",использованиеByteOrderMark.НеИспользовать);
помогло , дяденька спасибо вам душевное :))


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.