User:Unsane/MirLua/m schedule: Difference between revisions

From Miranda NG
Jump to navigation Jump to search
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 6: Line 6:
: '''''time'''''
: '''''time'''''
:: Тип: '''string'''/'''number'''
:: Тип: '''string'''/'''number'''
:: Дата или время выполнения задачи
:: Время в формате "hh:mm:ss" / дата в формате [[wikipedia:ru:Unix time|Unix time]]
;Результат
;Результат
: Тип: '''table'''
: Тип: '''table'''
: Возвращает таблицу [[#ScheduleItem|ScheduleItem]]
: Возвращает таблицу [[#ScheduleTask|ScheduleTask]] с методами:
::* [[#To|To]]
::* [[#Do|Do]]
;Пример
;Пример
{{Content:MirLua/Example|code=
{{Content:MirLua/Example|code=
Line 15: Line 17:
   print('Wake up!')
   print('Wake up!')
end)
end)
schedule.At(os.time({year = 2016, month = 4, day = 7, hour = 0, min = 0, sec = 0}):Do(function()
schedule.At(os.time({year = 2016, month = 4, day = 7, hour = 0, min = 0, sec = 0}).Do(function()
   print('Jack's birthday!')
   print('Jack's birthday!')
end)
end)
Line 29: Line 31:
;Результат
;Результат
: Тип: '''table'''
: Тип: '''table'''
: Возвращает таблицу [[#ScheduleItem|ScheduleItem]]
: Возвращает таблицу [[#ScheduleTask|ScheduleTask]] с методами:
::* [[#Second|Second]]
::* [[#Seconds|Seconds]]
::* [[#Minute|Minute]]
::* [[#Minutes|Minutes]]
::* [[#Hour|Hour]]
::* [[#Hours|Hours]]
::* [[#Day|Day]]
::* [[#Days|Days]]
::* [[#Week|Week]]
::* [[#Monday|Monday]]
::* [[#Tuesday|Tuesday]]
::* [[#Wednesday|Wednesday]]
::* [[#Thursday|Thursday]]
::* [[#Friday|Friday]]
::* [[#Saturday|Saturday]]
::* [[#Sunday|Sunday]]
::* [[#From|From]]
::* [[#To|To]]
::* [[#Do|Do]]
;Пример
;Пример
{{Content:MirLua/Example|code=
{{Content:MirLua/Example|code=
schedule.Every(45):Minutes():From("9:00"):Until("18:00"):Do(function()
schedule.Every(45).Minutes().From("9:00").To("18:00").Do(function()
   print('Time to relax!')
   print('Time to relax!')
end)
end)
}}
}}


===Do===
==ScheduleTask==
Отправляет задание на исполнение
 
;Параметры
: '''''params'''''
:: Тип: '''table'''
:: [[#ScheduleItem|ScheduleItem]]
: '''''task'''''
:: Тип: '''function'''
:: Задание
;Пример
{{Content:MirLua/Example|code=
Do({ StartTime = '00:00', Interval = 3600 }, function()
  print('Ding-dong!')
end)
}}
 
==Структуры==
===ScheduleItem===
Таблица, позволяющая настроить параметры задачи
Таблица, позволяющая настроить параметры задачи
===Поля===
====Interval====
====Interval====
:: Тип: '''number'''
:: Тип: '''number'''
Line 66: Line 70:
:: Тип: '''number'''
:: Тип: '''number'''
:: Окончание выполнения задачи
:: Окончание выполнения задачи
;Методы
===Методы===
====Second====
====Second====
:: Устанавливает [[#Interval|период]] в одну секунду
:: Устанавливает [[#Interval|период]] в одну секунду

Latest revision as of 17:43, 8 January 2016

Функции

At

Инициирует создание задания на определенное время или дату

Параметры
time
Тип: string/number
Время в формате "hh:mm:ss" / дата в формате Unix time
Результат
Тип: table
Возвращает таблицу ScheduleTask с методами:
Пример
schedule.At("8:30"):Do(function()
  print('Wake up!')
end)
schedule.At(os.time({year = 2016, month = 4, day = 7, hour = 0, min = 0, sec = 0}).Do(function()
  print('Jack's birthday!')
end)

Every

Инициирует создание периодически выполняемого задания

Параметры
interval
Тип: number
Период выполнения задачи
Результат
Тип: table
Возвращает таблицу ScheduleTask с методами:
Пример
schedule.Every(45).Minutes().From("9:00").To("18:00").Do(function()
  print('Time to relax!')
end)

ScheduleTask

Таблица, позволяющая настроить параметры задачи

Поля

Interval

Тип: number
Период выполнения задачи в секундах

StartTime

Тип: number
Начало выполнения задачи

EndTime

Тип: number
Окончание выполнения задачи

Методы

Second

Устанавливает период в одну секунду

Seconds

Устанавливает период в n секунд

Minute

Устанавливает период в одну минуту

Minutes

Устанавливает период в n минут

Hour

Устанавливает период в один час

Hours

Устанавливает период в n часов

Day

Устанавливает период в один день

Days

Устанавливает период в n дней

Week

Устанавливает период в одну неделю

Monday

Устанавливает период в одну неделю, #StartTime в ближайший понедельник

Tuesday

Устанавливает период в одну неделю, #StartTime в ближайший вторник

Wednesday

Устанавливает период в одну неделю, #StartTime в ближайшую среду

Thursday

Устанавливает период в одну неделю, #StartTime в ближайший четверг

Friday

Устанавливает период в одну неделю, #StartTime в ближайшую пятницу

Saturday

Устанавливает период в одну неделю, #StartTime в ближайшую субботу

Sunday

Устанавливает период в одну неделю, #StartTime в ближайшее воскресенье

From

Устанавливает значение StartTime

To

Устанавливает значение EndTime

Do