Categorygithub.com/FlowingSPDG/streamdeck
modulepackage
0.0.0-20230506011737-7eb85f091e90
Repository: https://github.com/flowingspdg/streamdeck.git
Documentation: pkg.go.dev

# README

StreamDeck Plugin API bindings for Go

Elgato allows developers to write plugins that can display information and respond to buttons pressed on their range of StreamDeck products. They officially offer API bindings for JavaScript, C++ and Objective-C. This repo is an unofficial library for writing plugins using Go.

Examples

Check out the examples directory to see some working StreamDeck plugins written using this library.

# Packages

No description provided by the author
No description provided by the author

# Functions

Image Generate new base64 image string from image.Image.
Log Get logger.
NewClient Get new client from specified context/params.
NewEvent Generate new event from specified name and payload.
ParseRegistrationParams Parse parameters.

# Constants

ApplicationDidLaunch When a monitored application is launched, the plugin will be notified and will receive the applicationDidLaunch event.
ApplicationDidTerminate When a monitored application is terminated, the plugin will be notified and will receive the applicationDidTerminate event.
CorsairGKeys kESDSDKDeviceType_CorsairGKeys (4).
CorsairVoyager kESDSDKDeviceType_CorsairVoyager (6).
DeviceDidConnect When a device is plugged to the computer, the plugin will receive a deviceDidConnect event.
DeviceDidDisconnect When a device is unplugged from the computer, the plugin will receive a deviceDidDisconnect event.
DialDown When the user presses the encoder down, the plugin will receive the dialDown event (SD+).
DialRotate When the user rotates the encoder, the plugin will receive the dialRotate event.
DialUp When the user releases a pressed encoder, the plugin will receive the dialUp event (SD+).
DidReceiveGlobalSettings Event received after calling the getGlobalSettings API to retrieve the global persistent data.
DidReceiveSettings Event received after calling the getSettings API to retrieve the persistent data stored for the action.
GetGlobalSettings Request the global persistent data.
GetSettings Request the persistent data for the action's instance.
HardwareAndSoftware hardware and software(0).
KeyDown When the user presses a key, the plugin will receive the keyDown event.
KeyUp When the user releases a key, the plugin will receive the keyUp event.
LogMessage Write a debug log to the logs file.
OnlyHardware only on the hardware (1).
OnlySoftware only on the software (2).
OpenURL Open an URL in the default browser.
PropertyInspectorDidAppear Event received when the Property Inspector appears in the Stream Deck software user interface, for example when selecting a new instance.
PropertyInspectorDidDisappear Event received when the Property Inspector for an instance is removed from the Stream Deck software user interface, for example when selecting a different instance.
SendToPlugin Event received by the plugin when the Property Inspector uses the sendToPlugin event.
SendToPropertyInspector Event received by the Property Inspector when the plugin uses the sendToPropertyInspector event.
SetFeedback.
SetGlobalSettings Save data securely and globally for the plugin.
SetImage Dynamically change the image displayed by an instance of an action.
SetSettings Save data persistently for the action's instance.
SetState Change the state of the action's instance supporting multiple states.
SetTitle Dynamically change the title of an instance of an action.
ShowAlert Temporarily show an alert icon on the image displayed by an instance of an action.
ShowOk Temporarily show an OK checkmark icon on the image displayed by an instance of an action.
StreamDeck kESDSDKDeviceType_StreamDeck (0).
StreamDeckMini kESDSDKDeviceType_StreamDeckMini (1).
StreamDeckMobile kESDSDKDeviceType_StreamDeckMobile (3).
StreamDeckPedal kESDSDKDeviceType_StreamDeckPedal (5).
StreamDeckPlus kESDSDKDeviceType_StreamDeckPlus (7).
StreamDeckXL kESDSDKDeviceType_StreamDeckXL (2).
SwitchToProfile Switch to one of the preconfigured read-only profiles.
SystemDidWakeUp When the computer is wake up, the plugin will be notified and will receive the systemDidWakeUp event.
TitleParametersDidChange When the user changes the title or title parameters, the plugin will receive a titleParametersDidChange event.
TouchTap When the user touches the display, the plugin will receive the touchTap event.
WillAppear When an instance of an action is displayed on the Stream Deck, for example when the hardware is first plugged in, or when a folder containing that action is entered, the plugin will receive a willAppear event.
WillDisappear When an instance of an action ceases to be displayed on Stream Deck, for example when switching profiles or folders, the plugin will receive a willDisappear event.

# Structs

Action action instance.
No description provided by the author
No description provided by the author
No description provided by the author
ApplicationDidLaunchPayload A json object.
ApplicationDidTerminatePayload A json object.
Client StreamDeck communicating client.
No description provided by the author
Coordinates The coordinates of the action triggered.
No description provided by the author
DeviceInfo A json object containing information about the device.
DeviceSize The number of columns and rows of keys that the device owns.
No description provided by the author
No description provided by the author
No description provided by the author
DidReceiveGlobalSettingsPayload This json object contains persistently stored data.
DidReceiveSettingsPayload This json object contains persistently stored data.
Event JSON struct.
No description provided by the author
KeyDownPayload A json object.
KeyUpPayload A json object.
LogMessagePayload A string to write to the logs file.
OpenURLPayload An URL to open in the default browser.
No description provided by the author
RegistrationParams Params for registering streamdeck plugin.
No description provided by the author
SetImagePayload The image to display encoded in base64 with the image format declared in the mime type (PNG, JPEG, BMP, ...).
SetStatePayload A 0-based integer value representing the state requested.
SetTitlePayload The title to display.
No description provided by the author
SwitchProfilePayload The name of the profile to switch to.
TitleParameters A json object.
TitleParametersDidChangePayload A json object.
TouchTapPayload A json object.
WillAppearPayload A json object.
WillDisappearPayload A json object.

# Type aliases

DeviceType Type of device.
EventHandler Event handler func.
Target Specify if you want to display the title on the hardware and software (0), only on the hardware (1) or only on the software (2).