Plugin:MirLua/ru/m database: Difference between revisions
Jump to navigation
Jump to search
(double pipes) |
m (→GetContactInfo) |
||
(14 intermediate revisions by the same user not shown) | |||
Line 10: | Line 10: | ||
== Контакты == | == Контакты == | ||
=== | === Contacts === | ||
Итератор для списка контактов | Итератор для списка контактов | ||
;Параметры | ;Параметры | ||
Line 17: | Line 17: | ||
:: Имя протокола | :: Имя протокола | ||
;Результат | ;Результат | ||
: Тип: ''' | : Тип: '''function''' | ||
: Возвращает | : Возвращает функцию-итератор для перебора номеров контактов. Список оканчивается элементом со значением '''nil''' | ||
;Пример | ;Пример | ||
{{Content:MirLua/Example|code= | {{Content:MirLua/Example|code= | ||
for hContact in db. | for hContact in db.Contacts('JABBER_1') do | ||
print(db.GetSetting(hContact, 'JABBER_1', 'Nick')) | print(db.GetSetting(hContact, 'JABBER_1', 'Nick')) | ||
end | end | ||
}} | }} | ||
=== GetContactInfo === | |||
Контактная информация | |||
;Параметры | |||
: '''''hContact''''' | |||
:: Тип: '''number''' | |||
:: Номер контакта | |||
:'''''field''''' | |||
:: | |||
{| class="wikitable" | |||
!Тип | |||
|'''number''' | |||
|'''string''' | |||
|- | |||
!Описание | |||
|тип поля | |||
|название поля | |||
|- | |||
!Значения | |||
|1-16 | |||
|FirstName, LastName, Nick, CustomNick, Email, City, State, Country, Phone, Homepage, About, Gender, Age, FullName, Uid, DisplayName | |||
|} | |||
;Результат | |||
: Тип: '''string''' | |||
: Значение поля или '''nil''' | |||
;Пример | |||
{{Content:MirLua/Example|code=local email = db.GetContactInfo(hContact, 'Email') | |||
}} | |||
== События == | == События == | ||
Line 40: | Line 67: | ||
{{Content:MirLua/Example|code=db.GetEventCount(hContact)}} | {{Content:MirLua/Example|code=db.GetEventCount(hContact)}} | ||
=== | === Events === | ||
Итератор для списка событий контакта от первого к последнему | Итератор для списка событий контакта от первого к последнему | ||
;Параметры | ;Параметры | ||
Line 50: | Line 77: | ||
: Возвращает номер события. Список оканчивается элементом со значением '''nil''' | : Возвращает номер события. Список оканчивается элементом со значением '''nil''' | ||
;Пример | ;Пример | ||
{{Content:MirLua/Example|code=for hEvent in db. | {{Content:MirLua/Example|code= | ||
local event = | for hEvent in db.Events(hContact) do | ||
local event = DBEVENTINFO.new(hEvent) | |||
print(event.Timestamp, event.Blob) | print(event.Timestamp, event.Blob) | ||
end | end | ||
}} | }} | ||
=== | === EventsFromEnd === | ||
Итератор для списка событий контакта от последнего к первому | Итератор для списка событий контакта от последнего к первому | ||
;Параметры | ;Параметры | ||
Line 67: | Line 95: | ||
;Пример | ;Пример | ||
{{Content:MirLua/Example|code= | {{Content:MirLua/Example|code= | ||
for hEvent in db. | for hEvent in db.EventsFromEnd(hContact) do | ||
local event = | local event = DBEVENTINFO.new(hEvent) | ||
print(event.Timestamp, event.Blob) | print(event.Timestamp, event.Blob) | ||
end | end | ||
}} | }} | ||
== Настройки == | == Настройки == | ||
Line 88: | Line 115: | ||
:: Название настройки | :: Название настройки | ||
: ''value'' | : ''value'' | ||
:: Тип: '' | :: Тип: ''any'' | ||
:: Значание по умолчаниию | :: Значание по умолчаниию | ||
;Результат | ;Результат | ||
Line 96: | Line 123: | ||
{{Content:MirLua/Example|code=db.GetSetting(nil, 'test', 'some')}} | {{Content:MirLua/Example|code=db.GetSetting(nil, 'test', 'some')}} | ||
=== | === Settings === | ||
Итератор для секции настроек | Итератор для секции настроек | ||
;Параметры | ;Параметры | ||
Line 110: | Line 137: | ||
;Пример | ;Пример | ||
{{Content:MirLua/Example|code= | {{Content:MirLua/Example|code= | ||
for setting in db. | for setting in db.Settings(nil, 'CList') do | ||
local message = string.format("%s/%s = ", 'CList', setting, ...) | local message = string.format("%s/%s = ", 'CList', setting, ...) | ||
.. db.GetSetting(nil, 'CList', setting) | .. db.GetSetting(nil, 'CList', setting) | ||
Line 129: | Line 156: | ||
:: Тип: '''string''' | :: Тип: '''string''' | ||
:: Название настройки | :: Название настройки | ||
: '''''value''''' | |||
:: Тип: '''boolean''', '''number''', '''string''', '''table''' (массив байт) | |||
:: Значение настройки | |||
: ''type'' | |||
:: Тип: '''number''' | |||
:: Тип настройки | |||
;Результат | ;Результат | ||
: Тип: '''boolean''' | : Тип: '''boolean''' | ||
Line 167: | Line 200: | ||
;Пример | ;Пример | ||
{{Content:MirLua/Example|code=db.DeleteModule(nil, 'test')}} | {{Content:MirLua/Example|code=db.DeleteModule(nil, 'test')}} | ||
== Структуры == | |||
=== DBEVENTINFO === | |||
Таблица, описывающая событие в БД | |||
;Поля | |||
: '''''Module''''' | |||
:: Тип: '''string''' | |||
:: Название аккаунта | |||
: '''''Timestamp''''' | |||
:: Тип: '''number''' | |||
:: Отметка времени | |||
: '''''Type''''' | |||
:: Тип: '''number''' | |||
:: Тип события | |||
: '''''Flags''''' | |||
:: Тип: '''number''' | |||
:: Флаги | |||
[[Category:Руководства]] | [[Category:Руководства]] |
Latest revision as of 00:53, 12 September 2017
Предоставляет доступ к данным и контактам в базе данных профиля пользователя.
Подключение модуля: local db = require('m_database')
<translate> Note</translate>
Параметры, выделенные жирным курсивом, являются обязательными.
Параметры, выделенные жирным курсивом, являются обязательными.
Контакты
Contacts
Итератор для списка контактов
- Параметры
- name
- Тип: string
- Имя протокола
- Результат
- Тип: function
- Возвращает функцию-итератор для перебора номеров контактов. Список оканчивается элементом со значением nil
- Пример
for hContact in db.Contacts('JABBER_1') do
print(db.GetSetting(hContact, 'JABBER_1', 'Nick'))
end
GetContactInfo
Контактная информация
- Параметры
- hContact
- Тип: number
- Номер контакта
- field
Тип | number | string |
---|---|---|
Описание | тип поля | название поля |
Значения | 1-16 | FirstName, LastName, Nick, CustomNick, Email, City, State, Country, Phone, Homepage, About, Gender, Age, FullName, Uid, DisplayName |
- Результат
- Тип: string
- Значение поля или nil
- Пример
local email = db.GetContactInfo(hContact, 'Email')
События
GetEventCount
Количество событий для контакта
- Параметры
- hContact
- Тип: number
- Номер контакта
- Результат
- Тип: number
- Возвращает количество событий
- Пример
db.GetEventCount(hContact)
Events
Итератор для списка событий контакта от первого к последнему
- Параметры
- hContact
- Тип: number
- Номер контакта
- Результат
- Тип: number
- Возвращает номер события. Список оканчивается элементом со значением nil
- Пример
for hEvent in db.Events(hContact) do
local event = DBEVENTINFO.new(hEvent)
print(event.Timestamp, event.Blob)
end
EventsFromEnd
Итератор для списка событий контакта от последнего к первому
- Параметры
- hContact
- Тип: number
- Номер контакта
- Результат
- Тип: number
- Возвращает номер события. Список оканчивается элементом со значением nil
- Пример
for hEvent in db.EventsFromEnd(hContact) do
local event = DBEVENTINFO.new(hEvent)
print(event.Timestamp, event.Blob)
end
Настройки
GetSetting
Возвращает значение настройки
- Параметры
- hContact
- Тип: number
- Номер контакта или nil
- module
- Тип: string
- Название модуля
- setting
- Тип: string
- Название настройки
- value
- Тип: any
- Значание по умолчаниию
- Результат
- Тип: number
- Возвращает значение настройки или значание по умолчаниию или nil
- Пример
db.GetSetting(nil, 'test', 'some')
Settings
Итератор для секции настроек
- Параметры
- hContact
- Тип: number
- Номер контакта или nil
- module
- Тип: string
- Название секции
- Результат
- Тип: number
- Возвращает имя секции. Список оканчивается элементом со значением nil
- Пример
for setting in db.Settings(nil, 'CList') do
local message = string.format("%s/%s = ", 'CList', setting, ...)
.. db.GetSetting(nil, 'CList', setting)
print(message)
end
WriteSetting
Сохраняет значение в БД
- Параметры
- hContact
- Тип: number
- Номер контакта или nil
- module
- Тип: string
- Название секции
- setting
- Тип: string
- Название настройки
- value
- Тип: boolean, number, string, table (массив байт)
- Значение настройки
- type
- Тип: number
- Тип настройки
- Результат
- Тип: boolean
- Возвращает true в случае успеха, иначе false
- Пример
db.WriteSetting(nil, 'test', 'some', true)
DeleteSetting
Удаляет настройку
- Параметры
- hContact
- Тип: number
- Номер контакта или nil
- module
- Тип: string
- Название секции
- setting
- Тип: string
- Название настройки
- Результат
- Тип: boolean
- Возвращает true в случае успеха, иначе false
- Пример
db.DeleteSetting(nil, 'test', 'some')
DeleteModule
Удаляет секцию
- Параметры
- hContact
- Тип: number
- Номер контакта или nil
- module
- Тип: string
- Название секции
- Результат
- Тип: boolean
- Возвращает true в случае успеха, иначе false
- Пример
db.DeleteModule(nil, 'test')
Структуры
DBEVENTINFO
Таблица, описывающая событие в БД
- Поля
- Module
- Тип: string
- Название аккаунта
- Timestamp
- Тип: number
- Отметка времени
- Type
- Тип: number
- Тип события
- Flags
- Тип: number
- Флаги