dialogs/DiscoveryDialog.py
changeset 1830 e598d1acf354
parent 1773 38fde37c3766
child 1836 d42b6cf00fa6
equal deleted inserted replaced
1829:a776ac02b079 1830:e598d1acf354
    24 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
    24 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
    25 
    25 
    26 import socket
    26 import socket
    27 import wx
    27 import wx
    28 import wx.lib.mixins.listctrl as listmix
    28 import wx.lib.mixins.listctrl as listmix
    29 from util.Zeroconf import *
    29 from zeroconf import ServiceBrowser, Zeroconf
    30 
    30 
    31 import connectors
    31 import connectors
    32 
    32 
    33 service_type = '_PYRO._tcp.local.'
    33 service_type = '_PYRO._tcp.local.'
    34 
    34 
   205         self.URI = "%s://%s" % (connect_type, svcname + '.' + service_type)
   205         self.URI = "%s://%s" % (connect_type, svcname + '.' + service_type)
   206 
   206 
   207     def GetURI(self):
   207     def GetURI(self):
   208         return self.URI
   208         return self.URI
   209 
   209 
   210     def removeService(self, zeroconf, _type, name):
   210     def remove_service(self, zeroconf, _type, name):
   211         wx.CallAfter(self._removeService, name)
   211         wx.CallAfter(self._removeService, name)
   212 
   212 
   213     def _removeService(self, name):
   213     def _removeService(self, name):
   214         '''
   214         '''
   215         called when a service with the desired type goes offline.
   215         called when a service with the desired type goes offline.
   225 
   225 
   226             if item_name == name:
   226             if item_name == name:
   227                 self.ServicesList.DeleteItem(idx)
   227                 self.ServicesList.DeleteItem(idx)
   228                 break
   228                 break
   229 
   229 
   230     def addService(self, zeroconf, _type, name):
   230     def add_service(self, zeroconf, _type, name):
   231         wx.CallAfter(self._addService, _type, name)
   231         wx.CallAfter(self._addService, _type, name)
   232 
   232 
   233     def _addService(self, _type, name):
   233     def _addService(self, _type, name):
   234         '''
   234         '''
   235         called when a service with the desired type is discovered.
   235         called when a service with the desired type is discovered.
   236         '''
   236         '''
   237         info = self.ZeroConfInstance.getServiceInfo(_type, name)
   237         info = self.ZeroConfInstance.get_service_info(_type, name)
   238 
       
   239         svcname = name.split(".")[0]
   238         svcname = name.split(".")[0]
   240         typename = _type.split(".")[0][1:]
   239         typename = _type.split(".")[0][1:]
   241         ip = str(socket.inet_ntoa(info.getAddress()))
   240         ip = str(socket.inet_ntoa(info.address))
   242         port = info.getPort()
   241         port = info.port
   243 
   242 
   244         num_items = self.ServicesList.GetItemCount()
   243         num_items = self.ServicesList.GetItemCount()
   245 
   244 
   246         # display the new data in the list
   245         # display the new data in the list
   247         new_item = self.ServicesList.InsertStringItem(num_items, svcname)
   246         new_item = self.ServicesList.InsertStringItem(num_items, svcname)