About This File
🧠 What AOQ (All-in-One QuickApp) Offers
- Multi-System Control: Seamlessly manages HC3, HC2, and HCL controllers using master/slave architecture.
- Unified Automation: Replaces scattered Lua and Block scenes with one centralized QA.
- Device Intelligence: Auto-detects Z-Wave, ZigBee, Nice, QA devices, and scenes.
- Alarm Zone Management: Identifies breached zones/sensors and triggers actions.
- Custom Events & Profiles: Supports dynamic profiles and custom rule-based automation.
🛠️ Core Configuration: Job Management - jM{} Hash Table
Each line in jM{} includes:
| Field |
Description |
|
|---|---|---|
| Time Span |
Duration in minutes for monitoring or action. |
|
| IDs List |
Devices/scenes/variables/keywords (e.g., `"137,630" |
|
| Criteria & Rules |
Optional conditions like |
|
| Action Tables |
Optional commands: |
🔄 Device Aliasing with jS2n{}
Avoid hardcoding device IDs:
jS2n = {mSensor=200, boiler=137, dryer=630, light=230, timeScene="_17"}
Use aliases in jM{}:
jM={
{15,"`mSensor`",{state="value=true", trueAct={"`light`", "turnOn"},falseAct={"`light`", "turnOff"}}}
}
🔍 Monitor Option
Detects inactivity or failure to report:
{8, "`timeScene` and _545", {timeSlot="10:00~22:00"}} -- scenes must be active every 8 min between 10am to 22pm
{10, "`boiler`and 145", {property="power"}} -- must report power every 10 min
{30, "`boiler`", {state="power>100"}} -- alert if power >100 for 30 min
⚙️ Control Option
Example: Turn on light when motion sensor is breached, turn off after 3 min when motion sensor back to safe:
jM={"`mSensor`",{state="value=true",trueAct={"`lightSw`","turnOn"},falseAct={"`lightSw`","turnOff", "180"}}}
To restrict to nighttime:
jM={"`mSensor`",{state="value=true",timeslot="18:00~07:00", trueAct={"`lightSw`","turnOn"},falseAct={"`lightSw`","turnOff", "180"}}}
Example: Turn on light when motion sensor is breached, turn off after 3 min (regardless of when motion sensor back to safe)
jM={"`mSensor`",{state="value=true", trueAct={{"`lightSw`","turnOn"},{"`lightSw`","turnOff", "180"}}}}
🧪 Debug & Table View
- Debugger Output: Shows executed commands with color-coded status.
- Table Header: Displays system info, sunrise/sunset, home/vacation mode, system traffic.
-
Columns:
- Device type, ID, name, battery status
- Criteria evaluation
- Alerts and elapsed time
- Action tables and active rules
📊 Top Active Monitor (New)
AOQ now includes an enhanced Top Active Devices monitor designed to identify devices that may destabilize HC3 performance.
It analyzes lifetime activity, current load per hour, and burst behavior to detect devices generating excessive or abnormal traffic.
The table highlights devices that may cause delays, radio congestion, disconnects, or even controller restarts.
A Peak/h column appears only when abnormal bursts are detected, helping users quickly locate problematic devices without cluttering the interface.
📘 Want to Go Deeper?
You can find the full documentation and guides on the Smart Home Forum by FIBARO, including:
- AOQ Advanced User’s Guide
- AOQ Quick Guide
- AOQ HC-WebEye Viewer
Edited by cag014
Updated
What's New in Version 13.1 See changelog
Released
New features
1. Added support for Zigbee devices.
2. Added dbgCmdFalse to display commands’ conditions when is false and command not executed. (same as for line or action tables conditions)
3. Added am option to define “pure” number for calculation in condition statements or in any other case. To define the number add $math prefix to requested value.
For example:
turn on boiler if power consumption of heater and dryer less than 1000
trueAct={"`boiler`","turnOn", if {$math1000<?@`heater`>power+@`dryer`>power?}"}
4. Added and option to skip geofence events for specific mobile device by defining in gpsDevice={["999"]="skip"}
See First Configuration section at GPS User Guide
5. Added properties to identify who activated the device/scene and to control who can or cannot executed specific actions on specific devices.
srcType source type of action (user or system)
srcId user ID (at Access panel) that activated the device
srcName username (at Access panel) that activated the device
actName action name executed (turnOn/turnOff/setValue…)
The gateway access rights are at device level, now you can control rights of every device based on action name or username/Id … next level of control
Turn off boiler if has been turned On not by admin, but any user can turn it off.
{"`boiler`",{state="true",trueAct({"`boiler`","turnOff","if {`boiler`:scrName<>admin}"}}},
See Access Control section at Advanced User’s Guide for more information
Note: Not applicable for HC2/HCL gateways.
6. Added $isFalse (=0) and $isTrue (=1) keywords in purpose to simplify conditions.
"if {$isFalse=?800:value + 900:power?}" -- means if value of device 800 plus power value of device 900 equal to zero
7. Added $timezoneOfset keyword for DST (daylight saving time) calculation/shift time slots
{0,"$blank",{timeSlot="$sunriseHour~?17:00+$timezoneOffset?",trueAct={"`wPlug`","turnOff","15"}}},
Note:
$timezoneOffset includes your time offset from GMT standard time
8. Added verification for enumerated global variables.
If value to set is not part of enumerated values an error displayed.
9. In conditions for global variables and keywords no need to define property
old condition format
"if {&globalVar:value=1 and $day:value=15}"
new condition format
"if {&globalVar=1 and $day=15}"
10. Improvements to catch syntax errors in jM line .
Bugs Fix
- refreshStates of slave events executed one by one
- Minor bugs fix
- Cosmetic changes and improvements
Update procedure
New users:
Download All-in-One-v13.1.fqa and add to the system as QA device
Exist users:
Download AOQ-main-v13.1.txt and copy to main file in your QA.
