Difference between revisions of "LavishScript:Tasks"

From Lavish Software Wiki
Jump to navigation Jump to search
(Created page with "A Task system is built into LavishScript as of Inner Space build 6374 (currently the development build of Inner Space) Tasks are managed by LavishScript:Task Managers, a...")
 
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
A Task system is built into LavishScript as of Inner Space build 6374 (currently the development build of Inner Space)
+
A Task system is built into LavishScript as of Inner Space build 6374 (currently within the development build of Inner Space)
  
Tasks are managed by [[LavishScript:Task Managers|Task Managers]], and a Task Manager can restrict the types of Tasks it will accept. [[LavishScript:Task Types|Task Types]] can be defined by [[LavishScript:Scripts|Scripts]].
+
Active Tasks are managed by [[LavishScript:Task Managers|Task Managers]], and a Task Manager can restrict the types of Tasks it will accept. [[LavishScript:Task Types|Task Types]] can be defined by [[LavishScript:Scripts|Scripts]]. Tasks can be instant, or can occur over time.
 +
 
 +
A [[LavishScript:Task Library|Task Library]] contains a list of pre-defined Tasks, for later activation through a Task Manager.
 +
 
 +
A [[LavishMachine:Package|LavishMachine Package]] contains lists of [[LavishScript:Task Libraries|Task Libraries]] and [[LavishScript:Task Types|Task Types]].
 +
 
 +
== Hello World! ==
 +
; This brief example will output "Hello World!" via a "ls1.echo" Task
 +
variable taskmanager TaskManager=${LMAC.NewTaskManager["mytest"]}
 +
TaskManager:BeginTask["{\"type\":\"ls1.echo\",\"output\":\"Hello World!\"}"]
 +
 
 +
This will perform the equivalent of
 +
echo "Hello World!"
  
Tasks can be instant, or can occur over time.
 
  
 
== Object Types for Tasks ==
 
== Object Types for Tasks ==
 
* [[ObjectType:lavishmachine|lavishmachine]] - Accessed via the Top-Level Object [[TLO:LMAC|LMAC]]
 
* [[ObjectType:lavishmachine|lavishmachine]] - Accessed via the Top-Level Object [[TLO:LMAC|LMAC]]
 
* [[ObjectType:task|task]]
 
* [[ObjectType:task|task]]
 +
* [[ObjectType:tasklibrary|tasklibrary]]
 
* [[ObjectType:taskmanager|taskmanager]]
 
* [[ObjectType:taskmanager|taskmanager]]
 
* [[ObjectType:tasktype|tasktype]]
 
* [[ObjectType:tasktype|tasktype]]
 
* [[ObjectType:taskpulseargs|taskpulseargs]]
 
* [[ObjectType:taskpulseargs|taskpulseargs]]
 
* [[ObjectType:elmactaskstate|elmactaskstate]]
 
* [[ObjectType:elmactaskstate|elmactaskstate]]
 +
 +
 +
== See Also ==
 +
 +
{{LavishScript:TaskTypes}}
 +
  
 
[[Category:LavishScript]]
 
[[Category:LavishScript]]
 
[[Category:Tasks]]
 
[[Category:Tasks]]

Latest revision as of 01:31, 11 March 2019

A Task system is built into LavishScript as of Inner Space build 6374 (currently within the development build of Inner Space)

Active Tasks are managed by Task Managers, and a Task Manager can restrict the types of Tasks it will accept. Task Types can be defined by Scripts. Tasks can be instant, or can occur over time.

A Task Library contains a list of pre-defined Tasks, for later activation through a Task Manager.

A LavishMachine Package contains lists of Task Libraries and Task Types.

Hello World!

This brief example will output "Hello World!" via a "ls1.echo" Task
variable taskmanager TaskManager=${LMAC.NewTaskManager["mytest"]}
TaskManager:BeginTask["{\"type\":\"ls1.echo\",\"output\":\"Hello World!\"}"]

This will perform the equivalent of

echo "Hello World!"


Object Types for Tasks


See Also

LavishScript Task Types

All Task Types inherit from the base Task Type (which cannot itself be explicitly used)

Primitives provided by LavishMachine

chain - delay - parallel - random - repeat - step

LavishScript

ls1.echo - ls1.runscript

Inner Space Uplink or Session

multicast - unicast - webrequest