User:Unsane/MirLua/m database
Jump to navigation
Jump to search
Предоставляет доступ к данным и контактам в базе данных профиля пользователя.
Подключение модуля: local db = require('m_database')
Контакты
AllContacts
Итератор для списка контактов
- Параметры
- name
- Тип: string
- Имя протокола
- Результат
- Тип: number
- Возвращает номер контакта. Список оканчивается элементом со значением nil
- Пример
for hContact in db.AllContacts('JABBER_1') do
print(db.GetSetting(hContact, 'JABBER_1', 'Nick'))
end
События
GetEventCount
Количество событий
- Параметры
- hContact
- Тип: number
- Номер контакта
- Результат
- Тип: number
- Возвращает количество событий для контакта
- Пример
db.GetEventCount(hContact)
AllEvents
Итератор для списка событий контакта от первого к последнему
- Параметры
- hContact
- Тип: number
- Номер контакта
- Результат
- Тип: number
- Возвращает номер события. Список оканчивается элементом со значением nil
- Пример
for hEvent in db.AllEvents(hContact) do
local event = totable(hEvent, "DBEVENTINFO")
print(event.Blob)
end
AllEventsFromEnd
Итератор для списка событий контакта от последнего к первому
- Параметры
- hContact
- Тип: number
- Номер контакта
- Результат
- Тип: number
- Возвращает номер события. Список оканчивается элементом со значением nil
- Пример
for hEvent in db.AllEvents(hContact) do
local event = totable(hEvent, "DBEVENTINFO")
print(event.Blob)
end
Настройки
GetSetting
Возвращает значение настройки
- Параметры
- hContact
- Тип: number
- Номер контакта или nil
- module
- Тип: string
- Название модуля
- setting
- Тип: string
- Название настройки
- value
- Тип: number, string
- Значание по-умолчаниию
- Результат
- Тип: number
- Возвращает значение настройки или значание по-умолчаниию
- Пример
db.GetSetting(nil, 'test', 'some')
AllSettings
Итератор для списка настроек из секции контакта или из глобальной секции, если в качестве параметра передан nil
- Параметры
- hContact
- Тип: number
- Номер контакта или nil
- module
- Тип: string
- Название модуля
- Результат
- Тип: number
- Возвращает номер события. Список оканчивается элементом со значением nil
- Пример
for setting in db.AllSettings(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
- Название настройки
- Результат
- Тип: 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')