{ "Player.OnPlay": { "type": "notification", "description": "Playback of a media item has been started or the playback speed has changed. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "$ref": "Player.Notifications.Data", "required": true } ], "returns": null }, "Player.OnResume": { "type": "notification", "description": "Playback of a media item has been resumed. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "$ref": "Player.Notifications.Data", "required": true } ], "returns": null }, "Player.OnAVStart": { "type": "notification", "description": "Playback of a media item has been started and first frame is available. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "$ref": "Player.Notifications.Data", "required": true } ], "returns": null }, "Player.OnAVChange": { "type": "notification", "description": "Audio- or videostream has changed. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "$ref": "Player.Notifications.Data", "required": true } ], "returns": null }, "Player.OnPause": { "type": "notification", "description": "Playback of a media item has been paused. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "$ref": "Player.Notifications.Data", "required": true } ], "returns": null }, "Player.OnStop": { "type": "notification", "description": "Playback of a media item has been stopped. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "item": { "$ref": "Notifications.Item" }, "end": { "type": "boolean", "required": true, "description": "Whether the player has reached the end of the playable item(s) or not" } } } ], "returns": null }, "Player.OnSpeedChanged": { "type": "notification", "description": "Speed of the playback of a media item has been changed. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "$ref": "Player.Notifications.Data", "required": true } ], "returns": null }, "Player.OnSeek": { "type": "notification", "description": "The playback position has been changed. If there is no ID available extra information will be provided.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "item": { "$ref": "Notifications.Item" }, "player": { "$ref": "Player.Notifications.Player.Seek", "required": true } } } ], "returns": null }, "Player.OnPropertyChanged": { "type": "notification", "description": "A property of the playing items has changed.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "property": { "$ref": "Player.Property.Value" }, "player": { "$ref": "Player.Notifications.Player", "required": true } } } ], "returns": null }, "Playlist.OnAdd": { "type": "notification", "description": "A playlist item has been added.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "playlistid": { "$ref": "Playlist.Id", "required": true }, "item": { "$ref": "Notifications.Item" }, "position": { "$ref": "Playlist.Position" } } } ], "returns": null }, "Playlist.OnRemove": { "type": "notification", "description": "A playlist item has been removed.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "playlistid": { "$ref": "Playlist.Id", "required": true }, "position": { "$ref": "Playlist.Position" } } } ], "returns": null }, "Playlist.OnClear": { "type": "notification", "description": "A playlist item has been cleared.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "playlistid": { "$ref": "Playlist.Id", "required": true } } } ], "returns": null }, "AudioLibrary.OnUpdate": { "type": "notification", "description": "An audio item has been updated.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "id": { "$ref": "Library.Id", "required": true }, "type": { "type": "string", "id": "Notifications.Library.Audio.Type", "enum": [ "song" ], "required": true }, "transaction": { "$ref": "Optional.Boolean", "description": "True if the update is being performed within a transaction." }, "added": { "$ref": "Optional.Boolean", "description": "True if the update is for a newly added item." } } } ], "returns": null }, "AudioLibrary.OnRemove": { "type": "notification", "description": "An audio item has been removed.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "id": { "$ref": "Library.Id", "required": true }, "type": { "$ref": "Notifications.Library.Audio.Type", "required": true }, "transaction": { "$ref": "Optional.Boolean", "description": "True if the removal is being performed within a transaction." } } } ], "returns": null }, "AudioLibrary.OnScanStarted": { "type": "notification", "description": "An audio library scan has started.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "AudioLibrary.OnScanFinished": { "type": "notification", "description": "Scanning the audio library has been finished.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "AudioLibrary.OnCleanStarted": { "type": "notification", "description": "An audio library clean operation has started.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "AudioLibrary.OnCleanFinished": { "type": "notification", "description": "The audio library has been cleaned.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "AudioLibrary.OnExport": { "type": "notification", "description": "An audio library export has finished.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": false, "properties": { "file": { "type": "string", "required": false, "default": "" }, "failcount": { "type": "integer", "minimum": 0, "required": false, "default": 0 } } } ], "returns": null }, "VideoLibrary.OnUpdate": { "type": "notification", "description": "A video item has been updated.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "id": { "$ref": "Library.Id", "required": true }, "type": { "type": "string", "id": "Notifications.Library.Video.Type", "enum": [ "movie", "tvshow", "episode", "musicvideo" ], "required": true }, "playcount": { "type": "integer", "minimum": 0, "default": -1 }, "transaction": { "$ref": "Optional.Boolean", "description": "True if the update is being performed within a transaction." }, "added": { "$ref": "Optional.Boolean", "description": "True if the update is for a newly added item." } } } ], "returns": null }, "VideoLibrary.OnExport": { "type": "notification", "description": "A video library export has finished.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": false, "properties": { "file": { "type": "string", "required": false, "default": "" }, "root": { "type": "string", "required": false, "default": "" }, "failcount": { "type": "integer", "minimum": 0, "required": false, "default": 0 } } } ], "returns": null }, "VideoLibrary.OnRemove": { "type": "notification", "description": "A video item has been removed.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "id": { "$ref": "Library.Id", "required": true }, "type": { "$ref": "Notifications.Library.Video.Type", "required": true }, "transaction": { "$ref": "Optional.Boolean", "description": "True if the removal is being performed within a transaction." } } } ], "returns": null }, "VideoLibrary.OnScanStarted": { "type": "notification", "description": "A video library scan has started.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "VideoLibrary.OnScanFinished": { "type": "notification", "description": "Scanning the video library has been finished.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "VideoLibrary.OnCleanStarted": { "type": "notification", "description": "A video library clean operation has started.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "VideoLibrary.OnCleanFinished": { "type": "notification", "description": "The video library has been cleaned.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "VideoLibrary.OnRefresh": { "type": "notification", "description": "The video library has been refreshed and a home screen reload might be necessary.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "System.OnQuit": { "type": "notification", "description": "Kodi will be closed.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "exitcode": { "type": "integer", "minimum": 0, "required": true } } } ], "returns": null }, "System.OnRestart": { "type": "notification", "description": "The system will be restarted.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "System.OnSleep": { "type": "notification", "description": "The system will be suspended.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "System.OnWake": { "type": "notification", "description": "The system woke up from suspension.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "System.OnLowBattery": { "type": "notification", "description": "The system is on low battery.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "Application.OnVolumeChanged": { "type": "notification", "description": "The volume of the application has changed.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "volume": { "type": "integer", "minimum": 0, "maximum": 100, "required": true }, "muted": { "type": "boolean", "required": true } } } ], "returns": null }, "Input.OnInputRequested": { "type": "notification", "description": "The user is requested to provide some information.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "type": { "type": "string", "enum": [ "keyboard", "time", "date", "ip", "password", "numericpassword", "number", "seconds" ], "required": true }, "value": { "type": "string", "required": true }, "title": { "type": "string" } } } ], "returns": null }, "Input.OnInputFinished": { "type": "notification", "description": "The user has provided the requested input.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "GUI.OnScreensaverActivated": { "type": "notification", "description": "The screensaver has been activated.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "GUI.OnScreensaverDeactivated": { "type": "notification", "description": "The screensaver has been deactivated.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "object", "required": true, "properties": { "shuttingdown": { "type": "boolean", "required": true } } } ], "returns": null }, "GUI.OnDPMSActivated": { "type": "notification", "description": "Energy saving/DPMS has been activated.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null }, "GUI.OnDPMSDeactivated": { "type": "notification", "description": "Energy saving/DPMS has been deactivated.", "params": [ { "name": "sender", "type": "string", "required": true }, { "name": "data", "type": "null", "required": true } ], "returns": null } }