From: Michael Tremer Date: Tue, 17 Jun 2014 17:57:50 +0000 (+0200) Subject: Merge remote-tracking branch 'stevee/dynu.com' X-Git-Tag: 001~39 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1231e159b10c5ae7874453e8a21e40208266a18b;p=ddns.git Merge remote-tracking branch 'stevee/dynu.com' Conflicts: ddns.conf.sample src/ddns/__init__.py src/ddns/providers.py --- 1231e159b10c5ae7874453e8a21e40208266a18b diff --cc ddns.conf.sample index 1665cb9,fae8ba0..1fb2071 --- a/ddns.conf.sample +++ b/ddns.conf.sample @@@ -34,11 -34,11 +34,16 @@@ # username = user # password = pass + # [test.dynu.com] + # provider = dynu.com + # username = user + # password = pass + +# [test.easydns.com] +# provider = easydns.com +# username = user +# password = pass + # [test.freedns.afraid.org] # provider = freedns.afraid.org # token = token diff --cc src/ddns/__init__.py index df85bf7,83e337c..bb9c748 --- a/src/ddns/__init__.py +++ b/src/ddns/__init__.py @@@ -95,7 -95,7 +95,8 @@@ class DDNSCore(object) DDNSProviderDNSpark, DDNSProviderDtDNS, DDNSProviderDynDNS, + DDNSProviderDynU, + DDNSProviderEasyDNS, DDNSProviderFreeDNSAfraidOrg, DDNSProviderNOIP, DDNSProviderLightningWireLabs, diff --cc src/ddns/providers.py index f79890d,ab05f77..f2e4700 --- a/src/ddns/providers.py +++ b/src/ddns/providers.py @@@ -361,21 -361,29 +361,44 @@@ class DDNSProviderDynDNS(DDNSProvider) raise DDNSUpdateError + class DDNSProviderDynU(DDNSProviderDynDNS): + INFO = { + "handle" : "dynu.com", + "name" : "Dynu", + "website" : "http://dynu.com/", + "protocols" : ["ipv6", "ipv4",] + } + + + # Detailed information about the request and response codes + # are available on the providers webpage. + # http://dynu.com/Default.aspx?page=dnsapi + + url = "https://api.dynu.com/nic/update" + + def _prepare_request_data(self): + data = { + "hostname" : self.hostname, + "myip" : self.get_address("ipv4"), + "myipv6" : self.get_address("ipv6"), + } + + +class DDNSProviderEasyDNS(DDNSProviderDynDNS): + INFO = { + "handle" : "easydns.com", + "name" : "EasyDNS", + "website" : "http://www.easydns.com/", + "protocols" : ["ipv4",] + } + + # There is only some basic documentation provided by the vendor, + # also searching the web gain very poor results. + # http://mediawiki.easydns.com/index.php/Dynamic_DNS + + url = "http://api.cp.easydns.com/dyn/tomato.php" + + class DDNSProviderFreeDNSAfraidOrg(DDNSProvider): INFO = { "handle" : "freedns.afraid.org",