Skip to content

App Monitoring

Fresh

Overview

Plugins can receive notifications when registered applications launch or terminate, enabling integration with local apps via IPC.

SOP: Register Apps for Monitoring

Step 1: Add to Manifest

json
{
  "ApplicationsToMonitor": {
    "mac": ["com.elgato.WaveLink"],
    "windows": ["Elgato Wave Link.exe"]
  }
}
PlatformIdentifier Format
WindowsExecutable filename (e.g., "Elgato Wave Link.exe")
macOSCFBundleIdentifier (e.g., "com.elgato.WaveLink")

Finding macOS Bundle IDs

bash
osascript -e 'id of app "Application Name"'

Step 2: Handle Events

typescript
import streamDeck, { ApplicationDidLaunchEvent } from "@elgato/streamdeck";

// App started
streamDeck.system.onApplicationDidLaunch((ev: ApplicationDidLaunchEvent) => {
  streamDeck.logger.info(`Launched: ${ev.application}`);
});

// App stopped
streamDeck.system.onApplicationDidTerminate((ev) => {
  streamDeck.logger.info(`Terminated: ${ev.application}`);
});

streamDeck.connect();