Emby Scripter-X Documentation

What Is Emby Scripter-X?

Emby Scripter-X is a plugin for Emby that executes external scripts or commands based on server events — such as playback start/stop, library updates, user logins, or scheduled tasks. It bridges Emby with your OS or other software so you can automate your media environment end-to-end.

Example uses

  • Dim lights or log activity when playback starts
  • Sync watched status between servers
  • Tag / rename / move media automatically
  • Send custom notifications or Discord webhooks
  • Run shell, PowerShell, Python, or batch files on events

Supported triggers (examples)

  • PlaybackStart, PlaybackStop
  • UserLogin
  • LibraryScanCompleted
  • ItemAdded
  • …and more, configurable per event
Back to Top

Installation

  1. Open Emby Server DashboardPlugins → Catalog → Community Plugins.
  2. Find and install “Scripter-X” (search for Scripter-X) and click Install.
  3. Restart Emby Server to load the plugin and create configuration files.
  4. Verify under Plugins → Scripter-X that it’s active.
Back to Top

First Steps

1) Open Scripter-X settings

From the Emby Dashboard: Plugins → Scripter-X → Configuration.

2) Choose a trigger

Select the event that should run your script (e.g. PlaybackStart or ItemAdded).

3) Create a script entry

  1. Click Add Script.
  2. Enter the full path to your script file
    e.g., C:\Scripts\notify_start.ps1 or /usr/local/bin/emby_notify.sh
  3. (Optional) Add arguments (placeholders) or a JSON payload.
  4. Save your settings.

4) Test it

Trigger the event (start a video, log in, finish a library scan) and check your script’s logs or output to confirm it ran.

Back to Top

Script Arguments

Scripter-X can pass dynamic placeholders to your scripts, such as:

  • %user% — username
  • %itemName% — media title
  • %itemPath% — file location
  • %eventName% — event name
  • %deviceName% — playback device
  • …and more depending on the event

Use these in your argument list to create context-aware automations.

Back to Top

Tips & Best Practices

  • Ensure scripts are executable by the account running Emby.
  • Test scripts manually before linking them to events.
  • Add logging inside scripts to capture results and errors.
  • Prefer simple, consistent paths (e.g. C:\Scripts\, /opt/scripts/).
  • Combine with the Emby API or webhooks for advanced integrations.
Back to Top

Example Script

notify_start.ps1

param($user, $itemName)
Write-Host "User $user started playing $itemName"

Arguments in Scripter-X:

%user% %itemName%
Back to Top

Support & Community

For help, examples, and community-shared scripts:

  • Emby Community Forum → Scripter-X thread
  • GitHub repositories with community script collections
  • Share your automations to inspire others
Back to Top