Универсальный и минималистичный модуль для временного хранения небольших данных.
Изначально был сделан в качестве кэша для телеграмм бота. В последствии расширился дополнительным функционалом.
Запись и получение временных данных
local ttm = require('ttm')
-- Создает спейс temp_data для хранения временных записей
ttm.init()
-- Запускает фоновый обработчик очистки истекших записей
ttm.run()
local SEEN_TTM = 'seen_new_user'
local user_id = 1234567890
-- Если запись есть ...
if ttm.get(SEEN_TTM, user_id) then
-- ...
end
-- Добавление или обновление данных в кэше
-- ttl по умолчанию 60 сек
ttm.add(SEEN_TTM, user_id)
-- Добавление с заданны значением ttl
-- ttm.add(SEEN_TTM, user_id, true, 3600)