38 lines
1.2 KiB
Lua
38 lines
1.2 KiB
Lua
|
|
-- "Запиши настроение 7" / "сегодня мне грустно" / "настроение восемь, продуктивно"
|
|||
|
|
local phrase = (jarvis.context.phrase or "")
|
|||
|
|
|
|||
|
|
local body = jarvis.text.strip_trigger(phrase:lower(), {
|
|||
|
|
"запиши настроение на",
|
|||
|
|
"запиши настроение",
|
|||
|
|
"недельный отчет",
|
|||
|
|
"настроение",
|
|||
|
|
"сегодня мне",
|
|||
|
|
"мой день был",
|
|||
|
|
"мне сейчас",
|
|||
|
|
"log mood",
|
|||
|
|
"my mood is",
|
|||
|
|
"i feel",
|
|||
|
|
"запиши настрій",
|
|||
|
|
})
|
|||
|
|
body = body:gsub("^[%s,:%.]+", ""):gsub("%s+$", "")
|
|||
|
|
|
|||
|
|
if body == "" then
|
|||
|
|
return jarvis.cmd.error("Что записать про настроение?")
|
|||
|
|
end
|
|||
|
|
|
|||
|
|
local t = jarvis.context.time
|
|||
|
|
local stamp = string.format("%04d-%02d-%02d %02d:%02d",
|
|||
|
|
t.year, t.month, t.day, t.hour, t.minute)
|
|||
|
|
local key = "mood_" .. (t.timestamp or os.time())
|
|||
|
|
local value = stamp .. " — " .. body
|
|||
|
|
|
|||
|
|
local ok, err = pcall(function()
|
|||
|
|
jarvis.memory.remember(key, value)
|
|||
|
|
end)
|
|||
|
|
if not ok then
|
|||
|
|
jarvis.log("warn", "mood.record: " .. tostring(err))
|
|||
|
|
return jarvis.cmd.error("Не получилось записать.")
|
|||
|
|
end
|
|||
|
|
|
|||
|
|
return jarvis.cmd.ok("Записал.")
|