Writing an Action

Action Configuration View » Writing an Action

Double-clicking on your Action in the Actions Overview will open your Action Editor. This is where you put your actions together. Actions consist of separate steps which you can string together, create “decision trees” and create inputs and outputs. The…

Writing Image Inferences

Advanced » Writing Image Inferences

One of the big new features of Gravio 4 is the way you can create inference files to use Artificial Intelligence and Machine Learning to detect objects in visual feeds, such as from CCTV security camera systems based on ONVIF. Please refer to the ONVIF section of this…

Action Components

Action Configuration View » Action Components

An action consists of one or more steps. Each step can be populated with action components and define inputs and outputs. This section describes the different components available and explains how to use them.

Action Component Behavior

Action Configuration View » Action Component Behavior

The action component has two component variables (cv.): the input payload (cv.Payload) and the output payload (cv.Payload). You can use it as the input payload (cv.Payload) when used in Pre-Mapping and as the output payload (cv.Payload) when used in…

Action Configuration View

Action Configuration View

The Gravio HubKits can trigger Actions. You can think of an Action like a small and simple computer program, that’s made up of Steps. Actions can be created in the Action Editor which can be opened by clicking on the Action Editor icon: You can find these…

Referring to the value of a Object variable in an Action

Action Configuration View » Referring to the value of a Object variable in an Action

If you like to refer to the value of a variable of type Object available in an action, you can access the element with a selector or square brackets connected to the variable with a dot. As an example of an Object type variable, if you use IVAR’s face…

Adding an EnOcean Sensors

Introduction » What is Gravio? » Hub Configuration View » Device Tab » Adding Physical Sensor Devices » Adding an EnOcean Sensors

We also rent out EnOcean energy harvesting sensors, that are getting powered by the energy surrounding them, such as solar panels, or by kinetic energy, e.g. when buttons are pushed. We have two types of sensors: The temperature sensors, identifiable by the small…

Trigger Tab

Introduction » What is Gravio? » Hub Configuration View » Trigger Tab

In order to have a trigger, it makes sense to have an action first, that you want to trigger with your trigger. You can see how to make actions here. Once you have an action, you can start triggering it using sensor data. There are three types of…

Trigger Variables and Properties

Introduction » What is Gravio? » Hub Configuration View » Trigger Tab » Trigger Variables and Properties

Device / timer triggers allow you to pass trigger properties and trigger variables as arguments when performing an action. Trigger variable The trigger variable is a variable in tv., which is passed to the action as tv. In an event-driven trigger by receiving sensor…

Time Based Triggers

Introduction » What is Gravio? » Hub Configuration View » Trigger Tab » Time Based Triggers

You can create triggers that are based on times on time-related parameters such as intervals, weekdays, day-of-month, etc. To create a time-based trigger, open the +-icon with the clock on the trigger tab: You will see the following dialogue box: Give your…

Google Analytics Send Event

Action Configuration View » Action Components » Google Analytics Send Event

The Google AnalyticsSendEvent component sends events using the Google Analytics Measurement Protocol. For details of Measurement Protocol and parameters, please refer to this link. Checking “Debug Mode” puts you in debug mode. In debug mode, if…

Available Variables in Actions

Action Configuration View » Available Variables in Actions

Think of the Action Steps as connectable parts that have an input and an output pipe. Each Step waits for incoming objects (in cv.Payload) it can then process and pass on through the output pipe to the next Step. Before processing the Step, you can Pre-Map and after…

Debug Log

Action Configuration View » Debug Log

Press the button at the top left of the component to output the debug log. By nature, components run independently and in parallel, but when executing an action while outputting debug logs, they are synchronized within the action engine. The debug log outputs the…

Join

Action Configuration View » Action Components » Join

The Join Action Component is to join multiple inputs into an array. Output Payload Description cv.Payload Combined array Component Properties Name Required Description Capacity False Specifies how…

Sensor Event Triggers

Introduction » What is Gravio? » Hub Configuration View » Trigger Tab » Sensor Event Triggers

Sensor Triggers Click on the icon on the top right with the plus in the square to create a sensor-based trigger: This will open the trigger popup: Give your trigger a sensible name, we recommend to name it after the condition that triggers the…

How to write expressions in Pre Mappings / Post Mappings

Action Configuration View » How to write expressions in Pre Mappings / Post Mappings

Each action component in the Action Editor has a pre Pre Mappings / Post Mappings area on the right side of the screen: Press the “+” button to add a new line to either the Pre-Mappings or the Post-Mappings. Pre Mappings are executed before the main…

Template

Action Configuration View » Action Components » Template

The Template component is a component that generates a string (text) from a specified template using placeholders. The template syntax is a GoLang standard described on https://golang.org/pkg/text/template/ . tp. / tv. / ap. / av. / cp. / cv. are all referable to…

GravioLight

Action Configuration View » Action Components » GravioLight

The Gravio Light Action Component is to control a Gravio Lights. For this component to work, you must have the Gravio Lights paired in advance. Output Payload Description cv.Payload Outputs the output payload of the previous component…

File Read

Action Configuration View » Action Components » File Read

The File Read Action Component is to read a file. Component Properties Name Required Description Filename False Filename of the file to be read. The file has to be inside these folders: On Windows:…

File List

Action Configuration View » Action Components » File List

The File List Action Component is to get a list of files that match the pattern. Component Properties Name Required Description Pattern True Pattern IncFILE False Include Files IncDIR False …

File Delete

Action Configuration View » Action Components » File Delete

The File Delete Action Component is to delete a file. Component Properties Name Required Description Filename False Filename All True All. The value of cp.All can be either “true” or “false…

AqaraSmartPlug

Action Configuration View » Action Components » AqaraSmartPlug

The Aqara Smart Plug Action Component is to control an Aqara smart plug device. To use this device, you must have the Aqara Smart Plugs paired in advance. Output Payload Description cv.Payload Outputs the output payload of the previous…

General Gravio Troubleshooting

Troubleshooting » General Gravio Troubleshooting

Symptom Explanation Remedy Comments Gravio Studio is not behaving as expected Gravio Server connection is unstable or Gravio Server is not running Ensure that there is a stable connection between Gravio Studio and the Server is…

File Write

Action Configuration View » Action Components » File Write

The File Write Action Component is to write data to a file. Component Properties Name Required Description Filename False Filename to be written. Append True Append new data instead of replacing the file.…

Exec

Action Configuration View » Action Components » Exec

The RunScript component allows you to run OS standard scripts. If Gravio Server is running on Windows it can run batch files, Linux, Raspbian and macOS can run shell scripts. If it is not Windows, you need to give execute rights to the uploaded file. The uploaded…

TwilioSMS

Action Configuration View » Action Components » TwilioSMS

The Twilio SMS Action Component is to send an SMS text message via Twilio. It is useful to notify people of information from sensors. Component Properties Name Required Description To True The number to send the message to,…

Sleep

Action Configuration View » Action Components » Sleep

The Sleep Action Component is to insert a pause between the two steps of the action. Output Payload Description cv.Payload Outputs the output payload of the previous component as is. (Pass-through) Component…

MSTeamsPostMessage

Action Configuration View » Action Components » MSTeamsPostMessage

The MSTeamsPostMessage action component can use the Microsoft Teams API to post a message to the channel specified in the component’s properties. How to get the Incoming Webhook URL: Select “Connector” from the “More Options” menu…

Mail Send

Action Configuration View » Action Components » Mail Send

The Mail Send Action Component is to send email via SMTP. The Mail Send component sends an input payload (cv.Payload) as the body of a mail. It converts the data received by the input payload into a string and sends it as the body of an email. After sending the…

Slack Post Message

Action Configuration View » Action Components » Slack Post Message

The Slack Post Message Action Component is to post a message to Slack using the Slack API. It can be useful to debug Actions or notifying people. It can be used for sending messages to #channels as well as @people . Component…

AWS S3 Download

Action Configuration View » Action Components » AWS S3 Download

The AWS S3 Download Action Component is to download content from Amazon AWS S3. Component Properties Name Required Description Output True Specify whether to keep the content in the Payload variable of the Action or as a file.…

Sound Effect

Action Configuration View » Action Components » Sound Effect

The Sound Effect Action Component is to play a sound effect. Output Payload Description cv.Payload Outputs the output payload of the previous component as is. (Pass-through) Component…

MQTT Publish

Action Configuration View » Action Components » MQTT Publish

The MQTT Publish Action Component allows you to publish messages to topics within an MQTT PubSub system. Output Payload Explanation cv.Payload Outputs the output payload of the previous component as is. (Pass through) Component…

LINE Notify

Action Configuration View » Action Components » LINE Notify

The LINE Notify Action Component is to send a notification via the LINENotify service (https://notify-bot.line.me/). It’s useful to notify people of information from sensors. Component Properties Name Required Description Message …

Sensor Data DB If Zero

Action Configuration View » Action Components » Sensor Data DB If Zero

The SensorDataDBIfZero component outputs the input payload as the output payload if no rows are retrieved; if any rows are found, it outputs nothing. With the content specified in the property, it searches the sensor DB and executes a filter expression for each matched…

JSONPath() Usage Examples

Action Configuration View » Functions » String Functions » JSONPath() Usage Examples

This section describes an example of using JSONPath(). If the sensor data (cv.Payload) or the argument of the action to be executed in the trigger condition (tv.Data) is in JSON format, you can use JSONPath() to refer to the value. Sample Data { "store": { …

SensorDataDB

Action Configuration View » Action Components » SensorDataDB

The Sensor Data DB Action Component is to read from the Sensor Data DB. Each recorded piece of data gets stored in the Sensor Data DB. With this component, you can query that database. The SensorDataDB component queries data from the SensorDataDB stored in HubKit and…

PhilipsHue

Action Configuration View » Action Components » PhilipsHue

The Philips Hue Action Component is to send commands to a Philips Hue light device. You need to specify the color and opacity and set the IP address, user ID, and light ID. The IP address can be found by going to https://discovery.meethue.com/. With this…

AWS S3 Upload

Action Configuration View » Action Components » AWS S3 Upload

The AWS S3 Upload Action Component is to upload content to amazon aws s3. Component Properties Name Required Description Input True Upload a payload or a file. To set the value of cp.Input, use either “Payload” or…

PATLITE

Action Configuration View » Action Components » PATLITE

The Patlite Action Component is to control a PATLITE network device including audio. The watchtower must support HTTP commands. For more information, please visit the Patlite website. https://www.patlite.co.jp/ PATLITEs are useful to control the display according to…

Service Architecture

Introduction » Service Architecture

Gravio consists of the following application modules: Gravio Studio, a Windows, macOS and iOS application to view, edit and configure the server infrastructure. Gravio HubKit, a server software installed on the edge device (Windows, macOS or Linux) to retrieve…

Amazon Polly Speech

Action Configuration View » Action Components » Amazon Polly Speech

The AWS Polly Speech Action Component is to read out text using AWS Polly text-to-speech. Amazon Polly converts input text into life-like speech. This functionality can also be useful for debugging purposes. Note that this functionality may not be available for…

Using the File Viewer

Action Configuration View » Using the File Viewer

Some action components in HubKit are able to read files in the actmgr/data directory and save files in that directory. Files stored in this directory can be retrieved by Gravio Studio, and local files can be uploaded to the directory by Gravio Studio. Use the…

Software Sensors

Introduction » What is Gravio? » Hub Configuration View » Device Tab » Software Sensors

Gravio also supports software sensors. An example for a software sensor could be a camera that detects how many people are in a room and triggers certain Actions if certain thresholds are reached. These sensors are created using software and artificial intelligence…

Statistics

Action Configuration View » Action Components » Statistics

The Statistics component stores the statistics (Min, Max, Mean/Average, Median, Standard Deviation, Sum, Mode) in the component variables with the specified values. If the value specified is an improper value for a number, that value will be excluded from the…

Gravio Apps Framework

Gravio Apps Framework

Gravio will also provide a framework, that allows third party companies to build native mobile applications that integrate seamlessly into the Gravio Edge infrastructure. APIs provided by Gravio’s edge servers can provide data or be triggered by an authenticated…

Hub Configuration View

Introduction » What is Gravio? » Hub Configuration View

If you double click on the upper half of the Server card, you will get to the Hub Configuration view: At the top you can find a number of buttons such as: A plus sign button to create new physical Areas to group your Layers An edit button to edit an Area or…

Regular Expression Functions

Action Configuration View » Functions » Regular Expression Functions

The following functions are available. Function Name Arguments Description Example RegExpMatch RegexMatch(re, s) Returns a Bool to see if the regular expressions re and s match RegexMatch(“G.*o”, “Gravio…

CSVRead

Action Configuration View » Action Components » CSVRead

The CSV Read component takes CSV data as input, parses it and creates an output payload in the format specified by the Output Format component property (cp.Output). CSVRead has an “Input” property (cp.Input), which allows you to select the data source.…

Setup on Windows 10

Introduction » Installation and Setup » Setup on Windows 10

Windows 10 Installation Install Gravio Studio from the Microsoft store: https://www.microsoft.com/store/apps/9N5ZLBCTTTH2 Launch Gravio Studio If you don’t have an account already, create an account here by filling out this form and agreeing to the terms and…

HTTP Request

Action Configuration View » Action Components » HTTP Request

Using the HTTP Request component, you can send an HTTP request to a specified URL. The HTTP Request component executes the HTTP request with the input payload as the Body content of the HTTP request, depending on its properties, and writes the HTTP response Body to…

CSVWrite

Action Configuration View » Action Components » CSVWrite

CSV Write generates a CSV with the input payload as input. The input payload can be an array of JSON arrays or an array of JSON objects. Otherwise, it will be converted to a string and output as a CSV with one line and one column. Input Payload Example…

Device Tab

Introduction » What is Gravio? » Hub Configuration View » Device Tab

In the Devices tab, you manage the devices connected to a HubKit by adding, removing and configuring them, including their physical location. In order to keep the data stores organised and efficient, Gravio features two dimensions how to place and assign…

MQTT Subscriptions

Introduction » What is Gravio? » Hub Configuration View » Device Tab » MQTT Subscriptions

You can subscribe to topics from an MQTT broker. These incoming messages would then be treated like sensor input data. To create an MQTT layer, click on the MQTT button on the top right of the screen: This will open the overview of your available MQTT Brokers. You…

String Functions

Action Configuration View » Functions » String Functions

The following functions are available. Function Name Arguments Description Example Len Len(s) Returns the length of a string (in bytes). s returns the number of elements if s is an array or an object. …

Setup on macOS

Introduction » Installation and Setup » Setup on macOS

Mac To use Gravio on Mac, you can install Gravio HubKit on your Mac. And you can install Gravio Studio for Mac for managing your Gravio HubKit. Run Gravio HubKit for Mac First, please download the Gravio HubKit dmg for Mac from this link. This is the Edge…

How to Side-Load Gravio Studio for Windows

Appendix » How to Side-Load Gravio Studio for Windows

Sideloading procedures for Gravio Studio for Windows Sideloading is the process of installing an application from an installer file rather than from the App Store. In some cases, for example in a corporate environment, the App store may not be available. Or a computer…

Functions available in the Pre Mappings / Post Mappings expressions

Action Configuration View » Functions available in the Pre Mappings / Post Mappings expressions

You can use the following functions on the right side of the expressions in Pre Mappings / Post Mappings. See Functions for a detailed explanation of each function. String Len Contains RuneCount HasPrefix HasSuffix Index Join LastIndex Repeat Replace Split ToLower…

WriteToExcel365

Action Configuration View » Action Components » WriteToExcel365

The WriteToExcel365 component can output data to a OneDrive in Excel format. The use of this component requires a contract and pre-configuration of Office365 for Business and OneDrive for Business. How to prepare your Microsoft account Prepare an Office365…

Gravio HubKits Overview

Gravio HubKits Overview

The Gravio’s HubKit Lists view in Gravio gives you an overview of all connected Edge HubKits available. These can be software servers from Linux, Windows or Macs where you have installed the Gravio HubKit, or they can be Gravio Hub devices. For information on how…

GravioDistance

Action Configuration View » Action Components » GravioDistance

The Gravio Distance component allows you to retrieve distance measurements from the Gravio Laser Distance sensors. To use this component you must have paired the Gravio Laser Distance sensor beforehand. If the Device ID property is empty, the command will be sent to…

GravioMatrix

Action Configuration View » Action Components » GravioMatrix

The Gravio Matrix component allows you to set text or an image to a Gravio Matrix. To use this component, the Gravio Matrix must be paired beforehand. If the Device ID property is empty, the command will be sent to all connected Gravio Matrices.   Output…

Getting Started with the Gravio Hub

Gravio Hub » Getting Started with the Gravio Hub

On this page, we will go through the process of setting up your Gravio Hub. We made it extremely simple to configure your new hub. The following two steps are needed to get started: Configure the Gravio Hub to connect to your WiFi network Set your password The…

Connecting your Gravio Hub to the Network

Gravio Hub » Connecting your Gravio Hub to the Network

The Network Setup Process The first time you plug the Gravio Hub into a power source, it will create a wireless network. Use any device with a browser to connect to that Wifi Network: Log in using the password graviohub Now open your browser and enter the URL…

Performance Tuning

Gravio Hub » Performance Tuning

When using the Gravio Hub for inference computer vision detection, please consider the following: Processing Performance When an inference is selected as a “layer as a soft sensor” on a Gravio Hub, only one model should be used per Gravio…

Adding Physical Sensor Devices

Introduction » What is Gravio? » Hub Configuration View » Device Tab » Adding Physical Sensor Devices

Gravio is built in a way that allows us to easily extend new sensor families. On the website https://www.gravio.com/product#Gravio-Rent you can see a range of hardware sensors Gravio supports off the shelf. If you require other sensors to be connected, please do not…