Emby Plugin  

Developer: Glenn's Plugins     Like this plugin? Show your appreciation!
Category: A/V and IR Equipment
Github: Github Repo
Assistance: Get help!    Check the online documentation
Plugin ID: com.GlennNZ.indigoplugin.EmbyPlugin
Latest release: v0.1.5 released on March 4, 2024
Release downloaded: 0 times
Requires: Indigo v2022.1.0 or higher
(Check the Releases tab below for older releases that may have different requirements)
  Download latest release

Hi all,

Announcing the release of an Emby Plugin for Indigo.

  • Enables monitoring of a Emby Client from within Indigo (with rapid response)
  • Enables Remote Control of Emby Client from within Indigo with ActionGroup Commands
  • Local copies of Fanart and Thumbnail Artwork to use within refreshingURL Control Page

Download/Uptodate version: [url]https://github.com/Ghawken/EmbyPlugin.indigoPlugin/releases/latest[/url] or from within the plugin - Update/Force Update

For those that are unaware Emby is a Media Server solution (essentially open source) competing against Kodi (completely open source) and Plex.
([url]https://emby.media/[/url]) Emby arguably has the best image quality through use of MadVR ([url]http://forum.doom9.org/showthread.php?t=146228[/url] - for some interesting reading/2000 page thread about image quality!)

This Indigo Plugin needs a Emby Server Plugin installed (which is available in the Emby Plugin Catalog - called FrontView+ API)

See install post for instructions.

Many thanks to community - and particularly DaveL for GhostXML - which I have gutted and reused as a base here after recently getting familiar with it and also for getting me off backside into plugin packaging rather than scripts etc.

Details/Rationale of Implementation

This plugin utilises a Emby Server Plugin I have written for another C# app for Emby Server. (FrontView+API)

The downside of the approach I have taken is that we get information from a single Emby Client only set at the Server level by this Emby Server Plugin. (but this Indigo Plugin doesn't have to authenticate & then regularly grab all session data to get info for a single client)

The upside is because the server has to do and send very little - only one little clients info - the communication is very quick and lightweight. (my Emby Server request average 1-2ms only to complete)

For my personal use - I typically interested in monitoring one Emby Client only - but I want it quick - and this Plugin is the solution to speed.

So currently these scenarios all happen within 1/2 second or so [i]eg[/i]. doorbell rings - lights on/Emby pauses; I pause Emby playback - Pause lightening scene runs Playback restarts --> lights off etc.

Having even 5-20 second delay for those actions for me is a deal-breaker - hence this solution (which did require getting to grips with Emby-Server API/Plugins)

Happy to hear other thoughts - and wouldn't be too much work to enable multiple clients - but it would slow, slow, slow down the response times.. (although I could change the Emby-Server Plugin to server multiple clients as an additional solution)

Anyhow - hopefully of some value - and consider it a work in progress.

Glenn

[size=150]Installation:[/size]

Step 1: From within Emby Server - install FrontView+API from Catalog

* Step 2:* Once FrontView+API Plugin is installed on Emby Server: Go to it Settings - *Plugin - FrontView+API Settings * to select your Emby Playback client that we will be monitoring in Indigo: (Yes we monitor a single Emby Client only - see announcement thread about details and reason why)

Step 3: Then or before - doesn't matter - install EmbyPlugin via download instructions - double click the indigoplugin File.

Step 4 Then Create a new Emby-Plugin Device

Enter the URL for your Emby Server and the port in the format as shown above.

Usage:

The Plugin then creates a number of custom states relating to the current status of that monitored client. (as you can see above)

The Plugin also enables Action Groups for Remote Control:

It also creates a local copy of Fanart and Thumb artwork for use in Control Pages via Refreshing URL.

[i]/Library/Application Support/Perceptive Automation/images/EmbyPlugin/Fanart_art.png /Library/Application Support/Perceptive Automation/images/EmbyPlugin/Thumbnail_art.png [/i]

Also updating them to blank artwork if no file is playing.

This enables you to very easily add the artwork to ControlPages - which update with time/artwork playback/and have functional remote control buttons. Like these two examples - I whipped together it less than 2 minutes

The speed of the connection and the updates - enables very responsive lights on Pause, Lights off Playback started, Movie Scene setting etc - essentially there is no delay.

Consider this very much a work in progress - but though would post as I continue to update.

Glenn

Release details
Released on: March 4, 2024
Requires: Indigo v2022.1.0+
Downloaded: 0 times 
Changes in this release

0.1.5

Update debugLevel force to int.

0.1.4

Add API Key field to device config Somewhere Emby added need for all to use apikey to update (even plugins)

Release details
Released on: May 16, 2022
Requires: Indigo v2022.1.0+
Changes in this release

0.1.3

Python 3 update for Indigo 2022.1

Release details
Released on: July 8, 2017
Requires: Indigo v5.0.0 thru v2022.2
Downloaded: 1 times 
Changes in this release

0.1.0 Fixs for emby server 3.2.2 changes (update FrontView EmbyServer Plugin to version 1.0.40) Less debug logging unless specifically enabled (was saving a verbose debug log) 0.1.1 Add Logo as possible artwork Saved with Thumbnail and Fanart

Release details
Released on: Dec. 18, 2016
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

0.0.7

Release details
Released on: Dec. 17, 2016
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

0.0.6

Release details
Released on: Dec. 16, 2016
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

0.0.5

Release details
Released on: Dec. 16, 2016
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

First Release