Tangent Control Surface Extension
API Version: TUBE Version 3.2 - TIPC Rev 4 (22nd February 2017)
This plugin allows Hammerspoon to communicate with Tangent's range of panels, such as their Element, Virtual Element Apps, Wave, Ripple and any future panels.
The Tangent Unified Bridge Engine (TUBE) is made up of two software elements, the Mapper and the Hub. The Hub communicates with your application via the TUBE Inter Process Communications (TIPC). TIPC is a standardised protocol to allow any application that supports it to communicate with any current and future panels produced by Tangent via the TUBE Hub.
You can download the Tangent Developer Support Pack & Tangent Hub Installer for Mac here.
This extension was thrown together by Chris Hocking, then dramatically improved by David Peterson for CommandPost.
Signature | hs.tangent.reserved.action -> table |
---|---|
Type | Constant |
Description | Definitions for reserved action IDs. |
Notes |
|
Source | extensions/tangent/tangent.lua line 109 |
Signature | hs.tangent.fromHub -> table |
---|---|
Type | Constant |
Description | Definitions for IPC Commands from the HUB to Hammerspoon. |
Notes |
|
Source | extensions/tangent/tangent.lua line 37 |
Signature | hs.tangent.panelType -> table |
---|---|
Type | Constant |
Description | Tangent Panel Types. |
Source | extensions/tangent/tangent.lua line 169 |
Signature | hs.tangent.reserved.parameter -> table |
---|---|
Type | Constant |
Description | A table of reserved parameter IDs. |
Notes |
|
Source | extensions/tangent/tangent.lua line 152 |
Signature | hs.tangent.toHub -> table |
---|---|
Type | Constant |
Description | Definitions for IPC Commands from Hammerspoon to the HUB. |
Source | extensions/tangent/tangent.lua line 90 |
Signature | hs.tangent.automaticallySendApplicationDefinition -> boolean |
---|---|
Type | Variable |
Description | Automatically send the "Application Definition" response. Defaults to |
Source | extensions/tangent/tangent.lua line 1008 |
Signature | hs.tangent.ipAddress -> number |
---|---|
Type | Variable |
Description | IP Address that the Tangent Hub is located at. Defaults to 127.0.0.1. |
Source | extensions/tangent/tangent.lua line 998 |
Signature | hs.tangent.port -> number |
---|---|
Type | Variable |
Description | The port that Tangent Hub monitors. Defaults to 64246. |
Source | extensions/tangent/tangent.lua line 1003 |
Signature | hs.tangent.callback() -> boolean |
---|---|
Type | Function |
Description | Sets a callback when new messages are received. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1044 |
Signature | hs.tangent.connect(applicationName, systemPath[, userPath]) -> boolean, errorMessage |
---|---|
Type | Function |
Description | Connects to the Tangent Hub. |
Parameters |
|
Returns |
|
Source | extensions/tangent/tangent.lua line 1726 |
Signature | hs.tangent.connected() -> boolean |
---|---|
Type | Function |
Description | Checks to see whether or not you're successfully connected to the Tangent Hub. |
Parameters |
|
Returns |
|
Source | extensions/tangent/tangent.lua line 1128 |
Signature | hs.tangent.disconnect() -> none |
---|---|
Type | Function |
Description | Disconnects from the Tangent Hub. |
Parameters |
|
Returns |
|
Source | extensions/tangent/tangent.lua line 1657 |
Signature | hs.tangent.isTangentHubInstalled() -> boolean |
---|---|
Type | Function |
Description | Checks to see whether or not the Tangent Hub software is installed. |
Parameters |
|
Returns |
|
Source | extensions/tangent/tangent.lua line 1027 |
Signature | hs.tangent.send(byteString) -> boolean, string |
---|---|
Type | Function |
Description | Sends a "bytestring" message to the Tangent Hub. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1141 |
Signature | hs.tangent.sendAllChange() -> boolean, string |
---|---|
Type | Function |
Description | Tells the Hub that a large number of software-controls have changed. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1295 |
Signature | hs.tangent.sendApplicationDefinition([appName, systemPath, userPath]) -> boolean, string |
---|---|
Type | Function |
Description | Sends the application details to the Tangent Hub. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1168 |
Signature | hs.tangent.sendDisplayText(messages[, doubleHeight]) -> boolean, string |
---|---|
Type | Function |
Description | Updates the Hub with a number of character strings that will be displayed on connected panels if there is space. |
Parameters |
|
Returns |
|
Notes |
|
Examples | |
Source | extensions/tangent/tangent.lua line 1342 |
Signature | hs.tangent.sendHighlightControl(targetID, active) -> boolean, string |
---|---|
Type | Function |
Description | Highlights the control on any panel where this feature is available. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1544 |
Signature | hs.tangent.sendIndicateControl(targetID, indicated) -> boolean, string |
---|---|
Type | Function |
Description | Sets the Indicator of the control on any panel where this feature is available. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1574 |
Signature | hs.tangent.sendMenuString(menuID, value[, atDefault]) -> boolean, string |
---|---|
Type | Function |
Description | Updates the Hub with a menu value. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1256 |
Signature | hs.tangent.sendModeValue(modeID) -> boolean, string |
---|---|
Type | Function |
Description | Updates the Hub with a mode value. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1315 |
Signature | hs.tangent.sendPanelConnectionStatesRequest()) |
---|---|
Type | Function |
Description | Requests the Hub to respond with a sequence of PanelConnectionState (0x35) commands to report the connected/disconnected status of each configured panel |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1607 |
Signature | hs.tangent.sendParameterValue(paramID, value[, atDefault]) -> boolean, string |
---|---|
Type | Function |
Description | Updates the Hub with a parameter value. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1218 |
Signature | hs.tangent.sendRenameControl(targetID, newName) -> boolean, string |
---|---|
Type | Function |
Description | Renames a control dynamically. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1507 |
Signature | hs.tangent.sendUnmanagedDisplayWrite(panelID, displayID, lineNum, pos, message) -> boolean, string |
---|---|
Type | Function |
Description | Updates the Hub with text that will be displayed on a specific panel at the given line and starting position where supported by the panel capabilities. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1452 |
Signature | hs.tangent.sendUnmanagedPanelCapabilitiesRequest(panelID) -> boolean, string |
---|---|
Type | Function |
Description | Requests the Hub to respond with an UnmanagedPanelCapabilities (0x30) command. |
Parameters |
|
Returns |
|
Notes |
|
Source | extensions/tangent/tangent.lua line 1425 |
Signature | hs.tangent.setLogLevel(loglevel) -> none |
---|---|
Type | Function |
Description | Sets the Log Level. |
Parameters |
|
Returns |
|
Source | extensions/tangent/tangent.lua line 1013 |