https://wiki.webcore.co/api.php?action=feedcontributions&user=Berg03191&feedformat=atomwebCoRE Wiki - Web-enabled Community's own Rule Engine - User contributions [en]2024-03-29T05:09:31ZUser contributionsMediaWiki 1.28.0https://wiki.webcore.co/index.php?title=webCoRE&diff=195webCoRE2017-04-30T13:13:01Z<p>Berg03191: </p>
<hr />
<div>{{warning|webCoRE is currently in the [https://en.wikipedia.org/wiki/Software_release_life_cycle#Beta Beta phase of the software release lifecycle] which means it might be unstable. Crashes, bugs, and potentially data loss are expected. Anyone is welcome to try it out, but it should not be used for production purposes.}}<br />
<br />
<br />
== General ==<br />
The ''web Community's own Rule Engine'' (or for short, webCoRE) is a general rule engine for SmartThings. It works by allowing users to create scripts that are interpreted and executed by the SmartThings SmartApp, allowing for complex decisions. webCoRE is currently a work in progress. webCoRE reached the first Beta milestone on April 29, 2017 (version v0.1.097.20170429) Please review the [[webCoRE todo]] list.<br />
<br />
== Getting started ==<br />
A few steps need to be completed before you can use webCoRE. First, webCoRE needs to be installed in your SmartThings account, then automations need to be configured. These are called [[Piston|pistons]] and will be detailed later. So let's start by installing webCoRE, please follow the 5 steps below.<br />
<br />
== Installing webCoRE ==<br />
You must complete all of these steps.<br />
<br />
# [[GitHub Install]] or [[Manual Install]] of webCoRE source code into the SmartThings Cloud<br />
# [[Enable webCoRE OAuth]] in the SmartThings cloud<br />
# [[Install webCoRE]] in the SmartThings mobile app<br />
# [[Enabling webCoRE dashboard]]<br />
# [[Enable webCoRE on Another Device]]<br />
<br />
== Understanding the basics ==<br />
webCoRE is comprised of the three main components listed below.<br />
<br />
=== The webCoRE child SmartApp (''webCoRE Piston'') ===<br />
The webCoRE child SmartApp is also known as a [[Piston|piston]]. It is responsible for executing the automation script that the user creates and does the heavy lifting in the whole webCoRE ecosystem. It is directly managed by the webCoRE parent SmartApp, which can create, maintain, and delete a Piston.<br />
<br />
=== The webCoRE parent SmartApp (''webCoRE'') ===<br />
The wabCoRE parent SmartApp is the component responsible for managing the child SmartApp instances and their relationship with the Dashboard. It is the middle man that allows adding new Pistons, maintaining them, or deleting them. It is also responsible with the security of the whole ecosystem, allowing password secured access from the Dashboard.<br />
<br />
=== The [[Dashboard|dashboard]] ===<br />
The Dashboard is an [https://en.wikipedia.org/wiki/HTML HTML] interface for webCoRE that allows users to manage their webCoRE installation. It is the central hub to controlling webCoRE, allowing the user to create, modify, test, and delete Pistons.<br />
<br />
==Anatomy of a webCoRE Piston==<br />
A piston is a script that contains a collection of elements, arranged so that the logic and flow of the piston perform tasks in a desired sequence. It is broken down into several sections, each having its own important role.<br />
<br />
===The ''settings'' section===<br />
This section allows configuration of how certain aspects of the piston function. These settings control low-level functionality and can alter the way a piston reacts to events. [todo: describe the settings]<br />
<br />
===The ''define'' section===<br />
A very powerful feature of webCoRE is the ability to use [[Variables|variables]]. Think of variables as temporary pockets where you can store information and are able to later retrieve and use this information for any purpose. Variables do just that, they store information that can be later used, either during the current piston run, or at a later time, when another event occurs.<br />
<br />
===The ''execute'' section===<br />
This section describes the piston's logic flow. This is the starting point of most executions. Whenever a device event happens, the piston starts its execution here.<br />
<br />
==Other Details==<br />
# [[webCore Logging]]<br />
# [[Functions]]<br />
<br />
== Creating your first piston ==<br />
<br />
Once you finished the installation steps above, let's go ahead and create the first piston, the famous [[Hello World!|Hello World]].<br />
<br />
==Sample Pistons==<br />
This section has some user contributed sample pistons. You can import any of these pistons using the import code displayed at the top of the piston.<br />
# [[Samples]]</div>Berg03191https://wiki.webcore.co/index.php?title=webCoRE&diff=194webCoRE2017-04-30T12:40:58Z<p>Berg03191: </p>
<hr />
<div>{{warning|webCoRE is currently in the [https://en.wikipedia.org/wiki/Software_release_life_cycle#Beta Beta phase of the software release lifecycle] which means it might be unstable. Crashes, bugs, and potentially data loss are expected. Anyone is welcome to try it out, but it should not be used for production purposes.}}<br />
<br />
<br />
== General ==<br />
The ''web Community's own Rule Engine'' (or for short, webCoRE) is a general rule engine for SmartThings. It works by allowing users to create scripts that are interpreted and executed by the SmartThings SmartApp, allowing for complex decisions. webCoRE is currently a work in progress. webCoRE reached the first Beta milestone on April 29, 2017 (version v0.1.097.20170429) Please review the [[webCoRE todo]] list.<br />
<br />
== Getting started ==<br />
A few steps need to be completed before you can use webCoRE. First, webCoRE needs to be installed in your SmartThings account, then automations need to be configured. These are called [[Piston|pistons]] and will be detailed later. So let's start by installing webCoRE, please follow the 5 steps below.<br />
<br />
== Installing webCoRE ==<br />
You must complete all of these steps.<br />
<br />
# [[GitHub Install]] or [[Manual Install]] of webCoRE source code into the SmartThings Cloud<br />
# [[Enable webCoRE OAuth]] in the SmartThings cloud<br />
# [[Install webCoRE]] in the SmartThings mobile app<br />
# [[Enabling webCoRE dashboard]]<br />
# [[Enable webCoRE on Another Device]]<br />
<br />
== Understanding the basics ==<br />
webCoRE is comprised of the three main components listed below.<br />
<br />
=== The webCoRE child SmartApp (''webCoRE Piston'') ===<br />
The webCoRE child SmartApp is also known as a [[Piston|piston]]. It is responsible for executing the automation script that the user creates and does the heavy lifting in the whole webCoRE ecosystem. It is directly managed by the webCoRE parent SmartApp, which can create, maintain, and delete a Piston.<br />
<br />
=== The webCoRE parent SmartApp (''webCoRE'') ===<br />
The wabCoRE parent SmartApp is the component responsible for managing the child SmartApp instances and their relationship with the Dashboard. It is the middle man that allows adding new Pistons, maintaining them, or deleting them. It is also responsible with the security of the whole ecosystem, allowing password secured access from the Dashboard.<br />
<br />
=== The [[Dashboard|dashboard]] ===<br />
The Dashboard is an [https://en.wikipedia.org/wiki/HTML HTML] interface for webCoRE that allows users to manage their webCoRE installation. It is the central hub to controlling webCoRE, allowing the user to create, modify, test, and delete Pistons.<br />
<br />
==Anatomy of a webCoRE Piston==<br />
A piston is a script that contains a collection of elements, arranged so that the logic and flow of the piston perform tasks in a desired sequence. It is broken down into several sections, each having its own important role.<br />
<br />
===The ''settings'' section===<br />
This section allows configuration of how certain aspects of the piston function. These settings control low-level functionality and can alter the way a piston reacts to events. [todo: describe the settings]<br />
<br />
===The ''define'' section===<br />
A very powerful feature of webCoRE is the ability to use [[Variables|variables]]. Think of variables as temporary pockets where you can store information and are able to later retrieve and use this information for any purpose. Variables do just that, they store information that can be later used, either during the current piston run, or at a later time, when another event occurs.<br />
<br />
===The ''execute'' section===<br />
This section describes the piston's logic flow. This is the starting point of most executions. Whenever a device event happens, the piston starts its execution here.<br />
<br />
==Other Details==<br />
# [[webCore Logging]]<br />
# [[Functions]]<br />
<br />
== Creating your first piston ==<br />
<br />
Once you finished the installation steps above, let's go ahead and create the first piston, the famous [[Hello World!|Hello World]].</div>Berg03191