def getExternalIPAddress(self): from twisted.internet import defer cd = defer.Deferred() req = self.soap.GetExternalIPAddress() d = soapenurl(req) d.addCallbacks(lambda x: self.cb_gotExternalIPAddress(x, cd), lambda x: self.cb_failedExternalIPAddress(x, cd)) return cd
def getGenericPortMappingEntry(self, nextPMI=0, cd=None, saved=None): if saved is None: saved = {} request = self.soap.GetGenericPortMappingEntry( NewPortMappingIndex=nextPMI) d = soapenurl(request) d.addCallbacks( lambda x: self.cb_gotGenericPortMappingEntry( x, nextPMI + 1, cd, saved), lambda x: self.cb_failedGenericPortMappingEntry(x, cd, saved))
def deletePortMapping(self, extport, proto='UDP'): "remove a port mapping" from twisted.internet import defer cd = defer.Deferred() request = self.soap.DeletePortMapping(NewRemoteHost=None, NewExternalPort=extport, NewProtocol=proto) d = soapenurl(request) d.addCallbacks(lambda x,cd=cd:self.cb_gotDeletePortMapping(x,cd), lambda x,cd=cd:self.cb_failedDeletePortMapping(x,cd)) return cd
def getGenericPortMappingEntry(self, nextPMI=0, cd=None, saved=None): if saved is None: saved = {} request = self.soap.GetGenericPortMappingEntry( NewPortMappingIndex=nextPMI) d = soapenurl(request) d.addCallbacks(lambda x: self.cb_gotGenericPortMappingEntry(x, nextPMI+1, cd, saved), lambda x: self.cb_failedGenericPortMappingEntry(x, cd, saved))
def _cbAddPortMapping(self, iport, eport, desc, proto, lease, locip, cd): request = self.soap.AddPortMapping(NewRemoteHost=None, NewExternalPort=eport, NewProtocol=proto, NewInternalPort=iport, NewInternalClient=locip, NewEnabled=1, NewPortMappingDescription=desc, NewLeaseDuration=lease) d = soapenurl(request) d.addCallbacks(lambda x,cd=cd:self.cb_gotAddPortMapping(x,cd), lambda x,cd=cd:self.cb_failedAddPortMapping(x,cd))
def soapCall(self, name, **kwargs): request = getattr(self.soap, name)(**kwargs) d = soapenurl(request) return d