MyChat Integration API через REST
MyChat REST API представляет собой возможность общения с сервером мессенджера MyChat посредством GET или POST запросов.
Структура запроса
- Адрес хоста или IP сервера
- Путь входа /API/?data=
- JSON-обьект, в котором хранятся поля и их значения
Как это выглядит?
Например, отправляем GET запрос на IP 192.168.10.100, WEB-сервер MyChat работает на стандартном 80 TCP порту (возможен и https, 443 порт, это настраивается дополнительно):
http://192.168.10.100/API/?data={"cmd":"0011","UserName":"Glubber","Message":"Hello","LinkToPost":"\/viewtopic.php?f=&t=&p=#p","LinkToTopic":"\/viewtopic.php?f=&t=","LinkToProfile":"\/memberlist.php?mode=viewprofile&u=","Subject":"Hello","APIStype":"phpbb","ServerKey":"iddqd"}
Для корректной работы URL кодируется:
http://192.168.10.100/API/?data=%7B%22cmd%22%3A%220011%22%2C%22UserName%22%3Anull%2C%22Message%22%3Anull%2C%22LinkToPost%22%3A%22%5C%2Fviewtopic.php%3Ff%3D%26t%3D%26p%3D%23p%22%2C%22LinkToTopic%22%3A%22%5C%2Fviewtopic.php%3Ff%3D%26t%3D%22%2C%22LinkToProfile%22%3A%22%5C%2Fmemberlist.php%3Fmode%3Dviewprofile%26u%3D%22%2C%22Subject%22%3Anull%2C%22APIStype%22%3A%22phpbb%22%2C%22ServerKey%22%3A%22iddqd%22%7D
Пример отправки сообщения в чат на языке php
Отправляется приватное сообщение от имени встроенного бота (UIN 0) для пользователя с UIN = 1. Можно для удобства вместо UIN использовать ники или email.
$host = '192.168.10.100';
$portWEB = '80';
$typeOfConnection = 'http';
$integrationAPIKey = 'iddqd';
$cmd = '0002';
$userTo = '1';
$userFrom = '0';
$msg = 'hello';
$toolName = 'php';
$json = json_encode(array('cmd'=>$cmd, 'UserTo' =>$userTo, 'UserFrom' =>$userFrom, 'Msg'=>$msg, 'APIStype'=>$toolName, 'ServerKey'=>$integrationAPIKey));
$json = urlencode($json);
$URL = $typeOfConnection.'://'.$host.':'.$portWEB.'/API/?data=' . $json;
file_get_contents($URL);
Если ваш сервер использует шифрование, настоятельно рекомендуем использовать cURL, настроив его на игнорирование шифрования при запросе при помощи curl_setopt().
Ещё посмотреть
1C 8.xx / 1С через REST