Plugin:MirLua/ru/m database

From Miranda NG
< MirLua‎ | MirLua
Revision as of 00:53, 12 September 2017 by Unsane (talk | contribs) (→‎GetContactInfo)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Предоставляет доступ к данным и контактам в базе данных профиля пользователя.

Подключение модуля: 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
Флаги