Plugin:MirLua/ru/m protocols
Jump to navigation
Jump to search
Предоставляет функциональность для работы с протоколами.
Подключение модуля: local protos = require('m_protocols')
<translate> Note</translate>
Параметры, выделенные жирным курсивом, являются обязательными.
Параметры, выделенные жирным курсивом, являются обязательными.
Протоколы
GetProtocol
Получает протокол
- Параметры
- mixed
Тип | number | string |
---|---|---|
Описание | номер контакта | название протокола |
- Результат
- Тип: userdata
- Возвращает мета-таблицу PROTOCOLDESCRIPTOR
- Пример
local proto = protos.GetProtocol({ Name = 'JABBER' })
Protocols
Итератор для протоколов
- Параметры
- Результат
- Тип: function
- Возвращает функцию-итератор для перебора протоколов. Список оканчивается элементом со значением nil
- Пример
for proto in protos.Protocols() do
print(proto.Name)
end
CallSendChain
Вызывает цепочку обработки для исходящего события (фильтрация, шифрование и т.п.)
- Параметры
- name
- Тип: string
- Имя сервиса
- wParam
- lParam
protos.CallSendChain(hContact, '/SendMsg', 0, a'Hello!')
CallReceiveChain
Вызывает цепочку обработки для входящего события (игнорирование, запись в бд и т.п.)
- Параметры
- name
- Тип: string
- Имя сервиса
- wParam
- lParam
Аккаунты
GetAccount
Получает аккаунт протокола
- Параметры
- mixed
Тип | number | string |
---|---|---|
Описание | номер контакта | название аккаунта (внутреннее) |
- Результат
- Тип: userdata
- Возвращает мета-таблицу PROTOACCOUNT
- Пример
local proto = protos.GetProtocol({ Name = 'JABBER' })
Accounts
Итератор для аккаунтов
- Параметры
- mixed
Тип | none | string | userdata |
---|---|---|---|
Описание | без параметра | название аккаунта (внутреннее) | протокол |
- Результат
- Тип: function
- Возвращает функцию-итератор для перебора аккаунтов. Список оканчивается элементом со значением nil
- Пример
for proto in protos.Protocols() do
print(proto.Name)
end
Структуры
PROTOCOLDESCRIPTOR
Таблица, описывающая протокол
- Поля
- Name
- Тип: string
- Название протокола
- Type
- Тип: number
- Тип протокола
- Значения:
- PROTOTYPE_IGNORE = 50
- PROTOTYPE_PROTOCOL = 1000
- PROTOTYPE_VIRTUAL = 1001
- PROTOTYPE_ENCRYPTION = 2000
- PROTOTYPE_FILTER = 3000
- PROTOTYPE_TRANSLATION = 4000
- PROTOTYPE_OTHER = 10000
- Методы
- Accounts
- Параметры
- Результат
- Тип: function
- Возвращает функцию-итератор для перебора списка аккаунтов. Список оканчивается элементом со значением nil
PROTOACCOUNT
Таблица, описывающая аккаунт протокола
- Поля
- ProtoName
- Тип: string
- Название протокола
- ModuleName
- Тип: string
- Название аккаунта (внутреннее)
- AccountName
- Тип: string
- Название аккаунта (пользовательское)
- IsEnabled
- Тип: boolean
- Аккаунт включен?
- IsVisible
- Тип: boolean
- Аккаунт отображается?
- IsVirtual
- Тип: boolean
- Аккаунт виртуальный?
- IsOldProto
- Тип: boolean
- Протокол поддерживает аккаунты?
- Методы
- CallService
- Параметры
- name
- Тип: string
- Имя сервиса
- wParam
- lParam
- name
- Результат
- Тип: number
- Возвращает результат выполнения сервиса или CALLSERVICE_NOTFOUND
- Параметры