MyChat Integration API: MCIAPI_CS_RegisterNewUser регистрация нового пользователя
Зарегистрировать на сервере нового пользователя.
Синтаксис
{
"cmd" : "0010",
"ServerKey" : "iddqd",
"APIStype" : "php",
"context" : "myfunc",
"Nick" : "JohnSnow",
"AuthType" : 1,
"Password" : "mysecretword",
"Email" : "johnsnow@winterfell.com",
"Domain" : "circle1.fbi.com",
"FirstName" : "John",
"LastName" : "Snow",
"Sex" : 1
}
Параметр "Nick" (логин пользователя) обязателен, регистр букв не важен. Все остальные параметры — опциональны (Password, Email, Domain, FirstName, LastName, MiddleName, Sex и AuthType).
Параметры
Параметр |
Тип |
Значение |
cmd |
string |
"0010", номер команды MCIAPI_CS_RegisterNewUser; |
ServerKey |
string |
ключ Integration API, задаётся в настройках сервера; |
APIStype |
string |
тип интеграции. Можно задавать произвольную строку; |
context |
string |
необязательный параметр, любой текст, который вернётся в ответной команде; |
Nick |
string |
ник пользователя, обязательное уникальное поле; |
Password |
string |
пароль пользователя. Игнорируется, если используется беспарольная либо прозрачная аутентификация в Active Directory; |
|
string |
адрес электронной почты пользователя. Необязательный параметр; |
Domain |
string |
имя домена пользователя. Необязательный параметр; |
FirstName |
string |
имя пользователя. Необязательный параметр; |
LastName |
string |
фамилия пользователя. Необязательный параметр; |
MiddleName |
string |
отчество пользователя. Необязательный параметр; |
Sex |
integer |
пол пользователя. Необязательный параметр. По умолчанию устанавливается в "не указан"; |
AuthType |
integer |
тип аутентификации пользователя, цифра. Если параметр не будет указан, то считается, что аутентификация стандартная (логин + пароль). |
Результат работы
{
"cmd" : "0010",
"context" : "myfunc",
"UIN" : 39,
"Nick" : "JohnSnow"
}
Поле |
Тип |
Значение |
cmd |
string |
HEX-номер команды, которая была успешно выполнена; |
context |
string |
произвольный текст, который был передан серверу в команде запроса; |
UIN |
integer |
уникальный идентификатор созданного пользователя (UIN); |
Nick |
string |
ник пользователя. |
Пример использования на языке PHP
<?php
$postData = (array // заполнение полей для запроса
(
'cmd' => '0010',
'Nick' => 'JohnSnow',
'Password' => 'mysecretword',
'Email' => 'johnsnow@winterfell.com',
'FirstName' => 'John',
'LastName' => 'Snow',
'Sex' => 1,
'AuthType' => 0,
'APIStype' => 'php',
'ServerKey' => 'iddqd'
)
);
$myCurl = curl_init();
curl_setopt_array($myCurl, array(
CURLOPT_URL => 'https://192.168.10.133/API/', // указываем путь входа
CURLOPT_RETURNTRANSFER => true, // возврат результата передачи в качестве строки
CURLOPT_SSL_VERIFYHOST => false, // отключение проверки SSL
CURLOPT_SSL_VERIFYPEER => false, // отключение проверки SSL
CURLOPT_POST => true, // включение POST режима
CURLOPT_HEADER => true, // включение заголовков
CURLOPT_HTTPHEADER => array('integrationapi: mychat'), // добавление !обязательного! заголовка — integration api: mychat
CURLOPT_POSTFIELDS => json_encode($postData) // перечисление данных запроса в формате JSON
));
$response = curl_exec($myCurl); // отправка запроса
if($response === FALSE){ // проверка ошибок
die(curl_error($myCurl));
}
curl_close($myCurl); // закрытие соединения
echo $response; // вывод ответа
?>
Возможные ошибки
#5, MCIAPI_Error_WrongIntegrationKey
#10, MCIAPI_Error_ParameterAbsent
#14, MCIAPI_Error_NickAlreadyExists
#18, MCIAPI_Error_NickCannotBeEmpty
#44, MCIAPI_Error_ReservedNickName
#45, MCIAPI_Error_PasswordCannotBeEmpty
#46, MCIAPI_Error_DomainNickAlreadyExists
#47, MCIAPI_Error_ParameterIsEmpty