* luci/libs/uvl: move most schemes to their corresponding packages
[project/luci.git] / applications / luci-ddns / root / lib / uci / schema / default / ddns
diff --git a/applications/luci-ddns/root/lib/uci/schema/default/ddns b/applications/luci-ddns/root/lib/uci/schema/default/ddns
new file mode 100644 (file)
index 0000000..f947aff
--- /dev/null
@@ -0,0 +1,147 @@
+package ddns
+
+config package
+       option title 'Dynamic DNS configuration'
+
+config section
+       option name     'service'
+       option title    'DynDNS service entry'
+       option package  'ddns'
+       option named    true
+       option required true
+
+config variable
+       option name     'enabled'
+       option title    'Enable this service entry'
+       option section  'ddns.service'
+       option datatype 'boolean'
+
+config variable
+       option name     'service_name'
+       option title    'Name of the DynDNS provider'
+       option section  'ddns.service'
+       option datatype 'string'
+
+config variable
+       option name     'domain'
+       option title    'Own DynDNS domain'
+       option section  'ddns.service'
+       option required true
+
+config variable
+       option name     'username'
+       option title    'Account username'
+       option section  'ddns.service'
+       option required true
+
+config variable
+       option name     'password'
+       option title    'Account password'
+       option section  'ddns.service'
+       option required true
+
+config variable
+       option name     'ip_source'
+       option title    'Method to determine current IP address'
+       option section  'ddns.service'
+       option type             'enum'
+       option required true
+
+config enum
+       option variable 'ddns.service.ip_source'
+       option value    'network'
+       option title    'Read ip address from /etc/config/network'
+
+config enum
+       option variable 'ddns.service.ip_source'
+       option value    'interface'
+       option title    'Determine ip address from given hardware interface'
+
+config enum
+       option variable 'ddns.service.ip_source'
+       option value    'web'
+       option title    'Determine own IP using a remote web page'
+
+config variable
+       option name     'ip_network'
+       option title    'Configured network to use IP from'
+       option section  'ddns.service'
+       option depends  'ip_source=network'
+       option valueof  'network.interface'
+
+config variable
+       option name     'ip_interface'
+       option title    'Physical network interface to read IP from'
+       option section  'ddns.service'
+       option depends  'ip_source=interface'
+
+config variable
+       option name     'ip_url'
+       option title    'Web page used to determine IP address'
+       option section  'ddns.service'
+       option depends  'ip_source=web'
+
+config variable
+       option name     'update_url'
+       option title    'URL format to use for updating DNS information (for yet-unknown providers)'
+       option section  'ddns.service'
+
+config variable
+       option name     'check_interval'
+       option title    'Update check interval'
+       option section  'ddns.service'
+       option datatype 'integer'
+       option required true
+
+config variable
+       option name     'check_unit'
+       option title    'Unit for update check interval'
+       option section  'ddns.service'
+       option type     'enum'
+       option required true
+
+config enum
+       option  variable        'ddns.service.check_unit'
+       option  value   'seconds'
+
+config enum
+       option  variable        'ddns.service.check_unit'
+       option  value   'minutes'
+
+config enum
+       option  variable        'ddns.service.check_unit'
+       option  value   'hours'
+
+config enum
+       option  variable        'ddns.service.check_unit'
+       option  value   'days'
+
+config variable
+       option name     'force_interval'
+       option title    'Forced update interval'
+       option section  'ddns.service'
+       option datatype 'integer'
+       option required true
+
+config variable
+       option name     'force_unit'
+       option title    'Unit of forced update interval'
+       option section  'ddns.service'
+       option type     'enum'
+       option required true
+
+config enum
+       option  variable        'ddns.service.force_unit'
+       option  value   'seconds'
+
+config enum
+       option  variable        'ddns.service.force_unit'
+       option  value   'minutes'
+
+config enum
+       option  variable        'ddns.service.force_unit'
+       option  value   'hours'
+
+config enum
+       option  variable        'ddns.service.force_unit'
+       option  value   'days'