MyChat Scripts: функция mGetUserDataAsJSON, получить любые данные пользователя по UIN

MyChat Scripts: функция mGetUserDataAsJSON, получить любые данные пользователя по UIN

"Для разработчиков", "Серверные скрипты", "Описание функций", "Пользователи", "mGetUserDataAsJSON".

 

Получение списка любых полей пользователя по его UIN в формате JSON.

 

Синтаксис

function mGetUserDataAsJSON(iUIN: integer; sParams: string): string;

 

Параметры и возвращаемые значения

Параметр

Тип

Значение

iUIN

integer

уникальный идентификатор пользователя, информацию о котором нам нужно получить;

sParams

string

список полей, которые нас интересуют, через запятую. Регистр не важен. Если указать слово "all", будут выбраны все доступные поля.

 

Список доступных полей пользователя

Название

Тип

Описание

Avatar

integer

CRC32 фотографии пользователя;

Tag

string

текстовый тег, специальное поле, можно изменять и читать через MSL;

DomainName

string

имя домена пользователя;

Nick

string

ник пользователя. Если пользователь доменный — это его доменное имя;

DisplayName

string

отображаемое имя пользователя. Стиль настраивается на сервере;

Active

boolean

активна или заблокирована учётная запись пользователя;

FirstName

string

реальное имя пользователя;

MiddleName

string

отчество пользователя;

LastName

string

фамилия пользователя;

Registered

double

дата и время создания учётной записи;

Role

integer

роль пользователя (номер группы прав);

RoleName

string

название группы прав пользователя;

MaritalStatus

integer

семейное положение:

-1 — не указано;

0 — в серьёзных отношениях;

1 — вдовец/вдова;

2 — женат/замужем;

3 — помолвлен(а)/обручен(а);

4 — разведен(а);

5 — разошлись;

6 — холост/не замужем;

HomePhone

string

домашний телефон;

HomeFax

string

домашний факс;

Birthday

double

дата рождения;

Email

string

основной адрес электронной почты;

HomeCellular

string

личный мобильный;

HomeStreetAddress

string

домашний адрес;

HomeCity

string

город проживания;

HomeState

string

штат/провинция/область/край проживания;

HomeZIP

string

домашний почтовый индекс;

HomeCountry

integer

страна проживания;

HomeWWW

string

личная WEB-страница;

WorkDept

string

рабочее подразделение;

WorkDeptIdx

integer

внутренний индекс рабочего подразделения (число);

WorkPosition

string

должность;

WorkPositionIdx

integer

внутренний индекс должности (число);

WorkCompanyName

string

название компании;

WorkOffice

string

рабочий офис;

WorkPhone

string

рабочий телефон;

WorkFax

string

рабочий факс;

WorkPager

string

рабочий пейджер или номер мессенджера;

WorkStreetAddress

string

рабочий адрес;

WorkCity

string

рабочий город;

WorkState

string

рабочий штат/провинция/область/край;

WorkZIP

string

рабочий почтовый индекс;

WorkCountry

integer

рабочая страна;

WorkWWW

string

рабочая WEB-страница;

SpokenLang1

integer

владение языками, номер 1;

SpokenLang2

integer

владение языками, номер 2;

SpokenLang3

integer

владение языками, номер 3;

Interests1

integer

область интересов, номер 1;

InterestsWords1

string

область интересов, ключевые слова, номер 1;

Interests2

integer

область интересов, номер 2;

InterestsWords2

string

область интересов, ключевые слова, номер 2;

Interests3

integer

область интересов, номер 3;

InterestsWords3

string

область интересов, ключевые слова, номер 3;

Interests4

integer

область интересов, номер 4;

InterestsWords4

string

область интересов, ключевые слова, номер 4;

Past1

integer

тип прошлого места работы или учёбы, номер 1;

PastWords1

string

тип прошлого места работы или учёбы, ключевые слова номер 1;

Past2

integer

тип прошлого места работы или учёбы, номер 2;

PastWords2

string

тип прошлого места работы или учёбы, ключевые слова номер 2;

Past3

integer

тип прошлого места работы или учёбы, номер 3;

PastWords3

string

тип прошлого места работы или учёбы, ключевые слова номер 3;

PastOrg1

integer

тип организации, прошлого места работы, номер 1;

PastOrgWords1

string

тип организации, прошлого места работы, ключевые слова номер 1;

PastOrg2

integer

тип организации, прошлого места работы, номер 2;

PastOrgWords2

string

тип организации, прошлого места работы, ключевые слова номер 2;

PastOrg3

integer

тип организации, прошлого места работы, номер 3;

PastOrgWords3

string

тип организации, прошлого места работы, ключевые слова номер 3;

Sex

integer

пол пользователя: 0 — не определён, 1 — мужской, 2 — женский;

AuthType

integer

тип аутентификации клиента: 0 — стандартный, 1 — Active Directory, 2 — без пароля, 3 — Transparent AD;

LastAccess

double

дата и время последнего доступа к серверу;

LastSpeakTime

double

дата и время последнего отправленного сообщения;

OfflineFilesExists

boolean

есть ли офлайн-файлы для пользователя;

State

integer

текущий сетевой статус пользователя;

FavoriteChannelsExists

boolean

есть ли у пользователя список "любимых" текстовых конференций;

UnreadedBroadcastsExists

boolean

наличие непрочитанных оповещений;

HelloMessage

string

сообщение-приветствие, если есть. Показывается всем пользователям, открывшим приват с этим человеком;

AutoreplayMessage

string

сообщение-автоответчик;

Autoreplay

boolean

включен или выключен автоответчик;

Reputation

integer

репутация пользователя, число;

About

string

информационное поле "О пользователе";

SessionID

string

custom-поле, уникальная строка для авторизации с внешних сервисов;

AuthService

string

custom-поле, название внешнего сервиса, с которого происходит авторизация пользователя.

 

 

Результат функции

Текстовая строка, JSON объект.

 

Пример

var
  sJSON: string;
begin
  sJSON := mGetUserDataAsJSON(6, 'Nick');
  mLogScript(sJSON, 'result');
end.

Результат работы скрипта

[21:25:43] (Log "mGetUserDataAsJSON"): [result] {"UIN":6,"What":"Nick","Nick":"(Hobit)"}

 

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

Работа с JSON

mLogScript