obs_hotkey_trigger
Trigger any OBS hotkey by exact name to invoke plugin features without dedicated websocket requests, enabling custom actions like vertical canvas recording and Advanced Scene Switcher macros.
Instructions
Fire an OBS hotkey action by name - the way to invoke plugin features that have no obs-websocket request of their own. On the reference machine that means the vertical-canvas plugin's separate recording and streaming pipeline (VerticalCanvasDock*) and Advanced Scene Switcher's start/stop and macro segments (*SwitcherHotkey). Get names from obs_hotkey_list.
DANGEROUS NAMES ARE IN THE SAME NAMESPACE. OBSBasic.StopStreaming, OBSBasic.ForceStopStreaming and VerticalCanvasDockStopStreaming all sit in that list and all end a live broadcast instantly; OBSBasic.StartStreaming starts one. There is no undo and no confirmation. This tool refuses nothing, so read the name you are about to send.
DO NOT USE IT AS A SHORTCUT FOR A REAL REQUEST. Duplicated names - libobs.mute, MediaSource.Play, libobs.show_scene_item.N - are registered once per source or scene, and this request takes a bare name, so which one fires is not something you control. Mute with SetInputMute, hide with SetSceneItemEnabled, switch scenes with SetCurrentProgramScene. Hotkeys are for what those cannot reach.
OBS returns success for a name it accepted, not for an effect it produced; verify the thing you wanted actually changed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hotkeyName | Yes | Exact name from obs_hotkey_list, e.g. 'VerticalCanvasDockStartRecording'. Case-sensitive. | |
| contextName | No | Optional context for the hotkey, per the protocol. Note GetHotkeyList returns names only and never contexts, so there is no way to discover a valid value here from the API - omit it unless a plugin's own documentation gave you one. |