Giter VIP home page Giter VIP logo

jellyfin-plugin-webhook's Introduction

Jellyfin Webhook Plugin

Part of the Jellyfin Project

Plugin Banner

GitHub Workflow Status GPLv3 License Current Release

Debugging:

My webhook isn't working!

Change your logging.json file to output debug logs for Jellyfin.Plugin.Webhook. Make sure to add a comma to the end of "System": "Warning"

{
    "Serilog": {
        "MinimumLevel": {
            "Default": "Information",
            "Override": {
                "Microsoft": "Warning",
                "System": "Warning",
+               "Jellyfin.Plugin.Webhook": "Debug"
            }
        }

Documentation:

Use Handlebars templating engine to format notifications however you wish.

See Templates for sample templates.

Helpers:

  • if_equals
    • if first parameter equals second parameter case insensitive
  • if_exist
    • if the value of the parameter is not null or empty
  • link_to
    • wrap the $url and $text in an <a> tag

Variables:

  • Every Notifier

    • ServerId
    • ServerName
    • ServerVersion
      • $major.$minor.$build
    • ServerUrl
      • Server url
    • NotificationType
  • BaseItem:

    • Timestamp
      • Current server time local
    • UtcTimestamp
      • Current server time utc
    • Name
      • Item name
    • Overview
      • Item overview
    • Tagline
      • Item tagline
    • ItemId
      • Item id
    • ItemType
      • Item type
    • Year
      • Item production year
    • SeriesName
      • TV series name
    • SeasonNumber
      • Series number - direct format
    • SeasonNumber00
      • Series number - padded 00
    • SeasonNumber000
      • Series number - padded 000
    • EpisodeNumber
      • Episode number - direct format
    • EpisodeNumber00
      • Episode number - padded 00
    • EpisodeNumber000 -
      • Episode number - padded 000
    • Provider_{providerId_lowercase}
      • ProviderId is lowercase.
    • RunTimeTicks
      • The media runtime, in Ticks
    • RunTime
      • The media runtime, as hh:mm:ss
  • Playback

    • Includes everything from BaseItem
    • PlaybackPositionTicks
      • The current playback position, in Ticks
    • PlaybackPosition
      • The current playback position, as hh:mm:ss
    • MediaSourceId
      • The media source id
    • IsPaused
      • If playback is paused
    • IsAutomated
      • If notification is automated, or user triggered
    • DeviceId
      • Playback device id
    • DeviceName
      • Playback device name
    • ClientName
      • Playback client name
    • NotificationUsername
      • User playing item. Note: multiple notifications will be sent if there are multiple users in a session
    • UserId
      • The user Id
    • PlayedToCompletion
      • true/false, Only when NotificationType == PlaybackStop

Destination Specific:

  • Discord
    • MentionType
    • EmbedColor
    • AvatarUrl
    • BotUsername
  • Gotify
    • Priority
  • Pushbullet
  • Pushover
    • Token
    • UserToken
    • Device
    • Title
    • MessageUrl
    • MessageUrlTitle
    • MessagePriority
    • NotificationSound
  • SMTP
  • Slack
    • BotUsername
    • SlackIconUrl

Future events can be created from https://github.com/jellyfin/jellyfin/blob/master/Jellyfin.Server.Implementations/Events/EventingServiceCollectionExtensions.cs

jellyfin-plugin-webhook's People

Contributors

atakku avatar crobibero avatar danielztolnai avatar darickc avatar dependabot[bot] avatar dowster avatar fallenbagel avatar h1dden-da3m0n avatar jellyfin-bot avatar lucavb avatar manuel-rw avatar mark-monteiro avatar methbkts avatar oddstr13 avatar renovate-bot avatar renovate[bot] avatar seanmcbroom avatar vandolinhimself avatar zark247 avatar zeroquinc avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.