@jabrown93/homebridge-onkyo
Version:
Homebridge plugin for Onkyo Receivers
482 lines (481 loc) • 16.6 kB
JSON
{
"pluginAlias": "OnkyoReceiverPlatform",
"pluginType": "platform",
"singular": true,
"headerDisplay": "Onkyo-like receiver as a HomeKit TV.",
"footerDisplay": "https://github.com/solowalker27/homebridge-onkyo",
"schema": {
"type": "object",
"required": ["receivers"],
"properties": {
"receivers": {
"type": "array",
"title": "Receivers",
"description": "List of receivers and/or receiver Zones to add to HomeKit.",
"items": {
"type": "object",
"title": "Receiver or Receiver Zone",
"description": "Receiver or receiver Zone to add to HomeKit.",
"required": ["name", "ip_address", "model"],
"properties": {
"name": {
"type": "string",
"title": "Device Name",
"default": "Receiver",
"description": "Name of the receiver as it will appear in HomeKit."
},
"model": {
"type": "string",
"title": "Receiver Model Number",
"default": "TX-NR515",
"description": "Receiver model number (or closest to it).",
"oneOf": [
{
"title": "Model",
"enum": [
"/515AE(Ether)",
"/515AE",
"/616AE(Ether)",
"/616AE",
"/818AE",
"DHC-40.1",
"DHC-40.2",
"DHC-60.5",
"DHC-60.7",
"DHC-80.1",
"DHC-80.2",
"DHC-80.3",
"DHC-80.6",
"DHC-9.9",
"DRC-R1",
"DRX-2",
"DRX-2.1",
"DRX-3",
"DRX-3.1",
"DRX-4",
"DRX-4.1",
"DRX-5",
"DRX-5.1",
"DRX-7",
"DRX-R1",
"DTC-7",
"DTC-9.1",
"DTC-9.4",
"DTC-9.8",
"DTM-7",
"DTR-10.5",
"DTR-20.1",
"DTR-20.2",
"DTR-20.3",
"DTR-20.4",
"DTR-20.7",
"DTR-30.1",
"DTR-30.2",
"DTR-30.3",
"DTR-30.4",
"DTR-30.5",
"DTR-30.6",
"DTR-30.7",
"DTR-4.5",
"DTR-4.6",
"DTR-4.9",
"DTR-40.1",
"DTR-40.2",
"DTR-40.3",
"DTR-40.4",
"DTR-40.5",
"DTR-40.6",
"DTR-40.7",
"DTR-5.2",
"DTR-5.3",
"DTR-5.4",
"DTR-5.5",
"DTR-5.6",
"DTR-5.8",
"DTR-5.9",
"DTR-50.1",
"DTR-50.2",
"DTR-50.3",
"DTR-50.4",
"DTR-50.5",
"DTR-50.6",
"DTR-50.7",
"DTR-6.2",
"DTR-6.3",
"DTR-6.4",
"DTR-6.5",
"DTR-6.6",
"DTR-6.8",
"DTR-6.9",
"DTR-60.5",
"DTR-60.6",
"DTR-60.7",
"DTR-7.1",
"DTR-7.2",
"DTR-7.3",
"DTR-7.4",
"DTR-7.6",
"DTR-7.7",
"DTR-7.8",
"DTR-7.9",
"DTR-70.1",
"DTR-70.2",
"DTR-70.3",
"DTR-70.4",
"DTR-70.6",
"DTR-8.2",
"DTR-8.3",
"DTR-8.4",
"DTR-8.8",
"DTR-8.9",
"DTR-80.1",
"DTR-80.2",
"DTR-80.3",
"DTR-9.1",
"DTR-9.9",
"DTX-5.8",
"DTX-5.9",
"DTX-7",
"DTX-7.7",
"DTX-7.8",
"DTX-8.8",
"DTX-8.9",
"DTX-9.9",
"ETX-NA1000",
"HT-R693(Ether)",
"HT-R993(Ether)",
"HT-RC550(Ether)",
"HT-RC560(Ether)",
"HT-R693",
"HT-R993",
"HT-RC550",
"HT-RC560",
"HT-RC660",
"NR-365(Ether)",
"NR-365",
"PR-RZ5100",
"PR-SC5507",
"PR-SC5508",
"PR-SC5509",
"PR-SC5530",
"PR-SC885",
"PR-SC886",
"RDC-7",
"RDC-7(Ver2.0)",
"RDC-7.1",
"TX-8270(Ether)",
"TX-8270",
"TX-DS787",
"TX-DS797",
"TX-DS898",
"TX-DS989",
"TX-NA900",
"TX-NA905",
"TX-NA906",
"TX-NA906X",
"TX-NR1000",
"TX-NR1007",
"TX-NR1008",
"TX-NR1009",
"TX-NR1010",
"TX-NR1030",
"TX-NR3007",
"TX-NR3008",
"TX-NR3009",
"TX-NR3010",
"TX-NR3030",
"TX-NR414(Ether)",
"TX-NR474(Ether)",
"TX-NR414",
"TX-NR474",
"TX-NR5000",
"TX-NR5007",
"TX-NR5008",
"TX-NR5009",
"TX-NR5010",
"TX-NR509(Ether)",
"TX-NR509",
"TX-NR515",
"TX-NR525",
"TX-NR535(Ether)",
"TX-NR545(Ether)",
"TX-NR555(Ether)",
"TX-NR575(Ether)",
"TX-NR575DAB(Ether)",
"TX-NR575E(Ether)",
"TX-NR579(Ether)",
"TX-NR609(Ether)",
"TX-NR535",
"TX-NR545",
"TX-NR555",
"TX-NR575",
"TX-NR575DAB",
"TX-NR575E",
"TX-NR579",
"TX-NR609",
"TX-NR616",
"TX-NR626",
"TX-NR636",
"TX-NR646(Ether)",
"TX-NR656(Ether)",
"TX-NR676(Ether)",
"TX-NR676E(Ether)",
"TX-NR646",
"TX-NR656",
"TX-NR676",
"TX-NR676E",
"TX-NR708",
"TX-NR709",
"TX-NR717(Ether)",
"TX-NR727(Ether)",
"TX-NR737(Ether)",
"TX-NR747(Ether)",
"TX-NR717",
"TX-NR727",
"TX-NR737",
"TX-NR747",
"TX-NR757",
"TX-NR777",
"TX-NR807",
"TX-NR808",
"TX-NR809",
"TX-NR818",
"TX-NR828(Ether)",
"TX-NR838(Ether)",
"TX-NR828",
"TX-NR838",
"TX-NR900",
"TX-NR901",
"TX-NR905",
"TX-NR906",
"TX-NR929",
"TX-RZ1100",
"TX-RZ3100",
"TX-RZ610",
"TX-RZ620",
"TX-RZ710",
"TX-RZ720",
"TX-RZ800",
"TX-RZ810",
"TX-RZ820",
"TX-RZ900",
"TX-SA706",
"TX-SA706X",
"TX-SA805",
"TX-SA806",
"TX-SA806X",
"TX-SA875",
"TX-SA876",
"TX-SR702",
"TX-SR703",
"TX-SR705",
"TX-SR706",
"TX-SR707",
"TX-SR803",
"TX-SR804",
"TX-SR805",
"TX-SR806",
"TX-SR875",
"TX-SR876"
]
}
]
},
"ip_address": {
"type": "string",
"title": "IP Address of Receiver",
"default": "10.0.0.46",
"description": "IP address of receiver. NOTE: Reserved address strongly recommended."
},
"inputs": {
"type": "array",
"title": "Inputs",
"description": "List of inputs to expose in HomeKit and what they should be called.",
"items": {
"type": "object",
"title": "Inputs",
"description": "'input_name' and 'display_name' pair where 'input_name' is the input according to the receiver and 'display_name' is how it will be listed in HomeKit.",
"required": ["input_name", "display_name"],
"properties": {
"input_name": {
"type": "string",
"title": "Receiver Input",
"description": "Input according to the receiver.",
"oneOf": [
{
"enum": [
"07",
"08",
"09",
"am",
"aux1",
"aux2",
"bd",
"cbl",
"cd",
"dlna",
"dvd",
"dvr",
"fm",
"game",
"hidden1",
"hidden2",
"hidden3",
"internet-radio",
"iradio-favorite",
"multi-ch",
"music-server",
"net",
"network",
"off",
"p4s",
"pc",
"phono",
"sat",
"strm-box",
"sirius",
"source",
"tape",
"tape-1",
"tape2",
"tuner",
"tv",
"universal-port",
"usb",
"vcr",
"video1",
"video2",
"video3",
"video4",
"video5",
"video6",
"video7",
"xm"
]
}
]
},
"display_name": {
"type": "string",
"title": "Display name for HomeKit",
"description": "How the input will appear in HomeKit."
}
}
}
},
"default_input": {
"type": "string",
"title": "Default Input",
"description": "Always set to this input when powering on receiver.",
"oneOf": [
{
"enum": [
"07",
"08",
"09",
"am",
"aux1",
"aux2",
"bd",
"cbl",
"cd",
"dlna",
"dvd",
"dvr",
"fm",
"game",
"hidden1",
"hidden2",
"hidden3",
"internet-radio",
"iradio-favorite",
"multi-ch",
"music-server",
"net",
"network",
"off",
"p4s",
"pc",
"phono",
"sat",
"sirius",
"source",
"strm-box",
"tape",
"tape-1",
"tape2",
"tuner",
"tv",
"universal-port",
"usb",
"vcr",
"video1",
"video2",
"video3",
"video4",
"video5",
"video6",
"video7",
"xm"
]
}
]
},
"filter_inputs": {
"type": "boolean",
"title": "Filter Inputs",
"description": "Whether or not to limit exposed inputs to the provided mapping. If true, no other inputs will be exposed.",
"default": true
},
"default_volume": {
"type": "integer",
"title": "Default Volume",
"description": "Always set volume to this number when powering on receiver."
},
"max_volume": {
"type": "integer",
"title": "Max Volume",
"description": "Limit volume of receiver to this number when controlling in HomeKit.",
"default": 30
},
"volume_type": {
"type": "string",
"default": "none",
"title": "Show Volume as a Light Dimmer or as a Fan Speed",
"description": "Whether or not to show receiver volume as a linked light dimmer or as a fan speed. Convenient for quick volume changes but Siri thinks it's a light or fan source.",
"oneOf": [
{ "title": "Light Dimmer", "enum": ["dimmer"] },
{ "title": "Fan Speed", "enum": ["speed"] },
{ "title": "None", "enum": ["none"] }
],
"required": true
},
"map_volume_100": {
"type": "boolean",
"title": "Map Max Volume to 100%",
"description": "Maps volume level to the given max volume value as a percentage with 100% being max volume. Useful in conjunction with the volume dimmer. Example: Max Volume is set to 60 with Map Max Volume to 100% enabled. At 100% 'brightness', volume will be 60, 50% 'brightness' will be 30, etc."
},
"poll_status_interval": {
"type": "string",
"title": "Poll Status Interval",
"description": "Interval in milliseconds at which to poll for status of receiver."
},
"zone": {
"type": "string",
"title": "Zone",
"description": "Which receier Zone to control.",
"oneOf": [
{
"enum": ["main", "zone2", "zone3", "zone4"]
}
],
"default": "main"
},
"additionalProperties": false
}
}
}
},
"additionalProperties": false
}
}