@ -511,10 +511,16 @@ class DeviceMgr(ThreadJob):
if handler is None :
if handler is None :
raise Exception ( _ ( " Handler not found for " ) + ' ' + plugin . name + ' \n ' + _ ( " A library is probably missing. " ) )
raise Exception ( _ ( " Handler not found for " ) + ' ' + plugin . name + ' \n ' + _ ( " A library is probably missing. " ) )
handler . update_status ( False )
handler . update_status ( False )
pcode = keystore . pairing_code ( )
client = None
# search existing clients first (fast-path)
if not devices :
client = self . client_by_pairing_code ( plugin = plugin , pairing_code = pcode , handler = handler , devices = [ ] )
# search clients again, now allowing a (slow) scan
if client is None :
if devices is None :
if devices is None :
devices = self . scan_devices ( )
devices = self . scan_devices ( )
client = self . client_by_pairing_code (
client = self . client_by_pairing_code ( plugin = plugin , pairing_code = pcode , handler = handler , devices = devices )
plugin = plugin , pairing_code = keystore . pairing_code ( ) , handler = handler , devices = devices )
if client is None and force_pair :
if client is None and force_pair :
try :
try :
info = self . select_device ( plugin , handler , keystore , devices ,
info = self . select_device ( plugin , handler , keystore , devices ,