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
Ещё посмотреть
Created with the Personal Edition of HelpNDoc: Easy CHM and documentation editor