skin = """
<screen position="100,100" size="550,400" title="DynDNS Setup" >
<widget name="config" position="0,0" size="550,300" scrollbarMode="showOnDemand" />
- <widget name="buttonred" position="10,360" size="100,40" backgroundColor="red" valign="center" halign="center" zPosition="2" foregroundColor="white" font="Regular;18"/>
- <widget name="buttongreen" position="120,360" size="100,40" backgroundColor="green" valign="center" halign="center" zPosition="2" foregroundColor="white" font="Regular;18"/>
+ <widget name="buttonred" position="10,360" size="100,40" backgroundColor="red" valign="center" halign="center" zPosition="2" foregroundColor="white" font="Regular;18"/>
+ <widget name="buttongreen" position="120,360" size="100,40" backgroundColor="green" valign="center" halign="center" zPosition="2" foregroundColor="white" font="Regular;18"/>
</screen>"""
def __init__(self, session, args = 0):
self.session = session
def __init__(self):
self.timer = eTimer()
self.timer.timeout.get().append(self.checkCurrentIP)
-
+
def enable(self):
if config.plugins.DynDNS.enable.value:
self.enabled = True
if self.enabled:
self.timer.stop()
self.enabled = False
-
+
def addSession(self,session):
self.sessions.append(session)
-
+
def checkCurrentIP(self):
print "[DynDNS] checking IP"
try:
str = str.split("</body>")[0]
str = str.split(":")[1]
str = str.lstrip().rstrip()
-
- if self.lastip is not str:
+
+ if self.lastip != str:
self.lastip=str
reactor.callLater(1, self.onIPchanged)
self.timer.start(int(config.plugins.DynDNS.interval.value)*60000)
except Exception,e:
print "[DynDNS]",e
str = "coundnotgetip"
-
+
def onIPchanged(self):
print "[DynDNS] IP change, setting new one",self.lastip
try:
print "[DynDNS] ip changed"
except Exception,e:
print "[DynDNS] ip was not changed",e
-
+
def getURL(self,url):
request = Request(url)
base64string = encodestring('%s:%s' % (config.plugins.DynDNS.user.value,config.plugins.DynDNS.password.value))[:-1]
if changed:
dyndnsservice.disable()
dyndnsservice.enable()
-
+
global dyndnsservice
dyndnsservice = DynDNSService()
dyndnsservice.enable()
elif reason == 1:
dyndnsservice.disable()
-
+
def Plugins(path,**kwargs):
return [PluginDescriptor(where = [PluginDescriptor.WHERE_SESSIONSTART, PluginDescriptor.WHERE_AUTOSTART], fnc = onSessionStart),
PluginDescriptor(name=_("DynDNS"), description=_("use www.DynDNS.org on your Box"),where = [PluginDescriptor.WHERE_PLUGINMENU], fnc = onPluginStart, icon="icon.png")]