UNPKG

homebridge-noip

Version:

The No-IP plugin allows you to update your No-IP hostname(s) for your homebridge instance.

165 lines (164 loc) 5.06 kB
{ "pluginAlias": "NoIP", "pluginType": "platform", "singular": true, "customUi": true, "customUiPath": "./dist/homebridge-ui", "headerDisplay": "<p align='center'><img width='250px' src='https://raw.githubusercontent.com/homebridge-plugins/homebridge-noip/latest/branding/Homebridge_x_No-IP.svg'></p>\n\nThe **Homebridge No-IP** plugin allows you to update your No-IP hostnames. \n\nTo get started link your No-IP account using the button below.", "footerDisplay": "Your No-IP account has been linked. Please raise any issues on our [project page](https://github.com/homebridge-plugins/homebridge-noip/issues).\n\nIf you would like to have other features, fill out [Feature Request Form](https://github.com/homebridge-plugins/homebridge-noip/issues/new?assignees=&labels=&template=feature_request.md).", "schema": { "type": "object", "properties": { "name": { "type": "string", "title": "Name", "default": "NoIP", "required": true }, "devices": { "type": "array", "items": { "title": "Devices", "type": "object", "properties": { "configDeviceName": { "title": "Device Name", "type": "string", "pattern": "^[a-zA-Z0-9]+([a-zA-Z0-9 ]*[a-zA-Z0-9]+)?$", "placeholder": "My Device", "condition": { "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].hostname);" } }, "username": { "title": "NoIP Username/Email", "type": "string", "required": true, "x-schema-form": { "type": "email" } }, "password": { "title": "NoIP Password", "type": "string", "x-schema-form": { "type": "password" } }, "hostname": { "title": "Hostname", "type": "string" }, "firmware": { "title": "Firmware Override", "type": "string", "placeholder": "1.2.8" }, "refreshRate": { "title": "Device Refresh Rate", "type": "number", "minimum": 1800, "placeholder": 1800, "description": "Indicates the number of seconds between polls of the No-IP service." }, "logging": { "title": "Device Logging Override Setting", "type": "string", "required": true, "default": "", "oneOf": [ { "title": "Default Logging", "enum": [""] }, { "title": "Standard Logging", "enum": ["standard"] }, { "title": "No Logging", "enum": ["none"] }, { "title": "Debug Logging", "enum": ["debug"] } ] }, "delete": { "title": "Delete Device", "type": "boolean" } } } }, "refreshRate": { "title": "Refresh Rate", "type": "number", "minimum": 1800, "placeholder": 1800, "description": "Indicates the number of seconds between polls of the No-IP service." }, "logging": { "title": "Plugin Logging Setting", "type": "string", "required": true, "default": "", "oneOf": [ { "title": "Default Logging", "enum": [""] }, { "title": "Standard Logging", "enum": ["standard"] }, { "title": "No Logging", "enum": ["none"] }, { "title": "Debug Logging", "enum": ["debug"] } ] } } }, "layout": [ { "key": "devices", "notitle": false, "type": "tabarray", "title": "{{ value.hostname || 'New Hostname' }}", "expandable": true, "expanded": false, "orderable": false, "items": [ "devices[].hostname", "devices[].username", "devices[].password", "devices[].firmware", "devices[].refreshRate", "devices[].logging" ] }, { "type": "fieldset", "title": "Advanced Settings", "expandable": true, "expanded": false, "items": [ { "type": "help", "helpvalue": "<h5>Refresh Rate</h5><em class='primary-text'>Refresh Rate indicates the number of seconds between polls of the No-IP service.</em>" }, { "key": "refreshRate", "notitle": true }, "logging" ] } ] }