private void KeepDefaultAdapterAndRegisterForSignals() { _liveDiscoAdapterHack = GetDefaultAdapter(); _liveDiscoAdapterHack.DeviceFound += adapter_DeviceFound; _liveDiscoAdapterHack.PropertyChanged += _registeredAdapter_PropertyChanged; Console.WriteLine("Now Registered2"); }
internal BluezDbusInterface.Device FindDevice_OnDefaultAdapter( BluetoothAddress address, out ObjectPath objectPath, out BluezDbusInterface.Adapter a) { a = GetDefaultAdapter(); var addrStrIn = FromBluetoothAddress(address); Console.WriteLine("gonna FindDevice"); ObjectPath devicePath; try { devicePath = a.FindDevice(addrStrIn); } catch (Exception ex) { Console.WriteLine("GetDevice_ error: " + ex.Message); Debug.Assert(ex.Message.StartsWith("org.bluez.Error.DoesNotExist:"), "Unexected exception type: " + ex); if (ex.Message.StartsWith("org.bluez.Error.DoesNotExist:", StringComparison.OrdinalIgnoreCase)) { objectPath = null; return(null); } else { throw; } } objectPath = devicePath; Console.WriteLine("gonna Get {0}", devicePath); var d = FactoryBus.GetObject <BluezDbusInterface.Device>(Service, devicePath); return(d); }
private static ObjectPath[] GetDevices(BluezDbusInterface.Adapter a) { #if false var inList = GetProperty <DbusPropertyDictionary>(a, "Devices"); #else var dictTmp = a.GetProperties(); //Console.WriteLine("dictTmp is type: " + dictTmp.GetType().FullName); //Console.WriteLine("dictTmp is type: " + dictTmp.GetType().Name); var tmp = dictTmp["Devices"]; //Console.WriteLine("Property Value is type: " + tmp.GetType().Name); var inList = (ObjectPath[])tmp; #endif return(inList); }
//---- internal BluezRadio(BluezFactory fcty, int dd) { _dd = dd; Debug.Assert(fcty != null, "ArgNull"); _fcty = fcty; BluezError ret; var bdaddr = BluezUtils.FromBluetoothAddress(BluetoothAddress.None); ret = NativeMethods.hci_read_bd_addr(_dd, bdaddr, _fcty.StackTimeout); //TODO BluezUtils.CheckAndThrow(ret, "hci_read_bd_addr"); BluezUtils.Assert(ret, "hci_read_bd_addr"); if (BluezUtils.IsSuccess(ret)) { _addr = BluezUtils.ToBluetoothAddress(bdaddr); Console.WriteLine("Radio SUCCESS, addr: " + _addr); } else { // NEVER used EXCEPT in the debugger if we skip the CheckandThrow above. _addr = BluetoothAddress.None; Console.WriteLine("Radio FAIL, addr: " + _addr); } _nameTmp = new byte[250]; // // First find _objectPath. In the future we'll be passed this. var ax = _fcty.BluezDbus.FindAdapter(_addr, out _objectPath); Debug.Assert(_objectPath != null, "BluezRadio..ctor NOT _objectPath!=null"); //-- // Set Adapter. _adapter = GetAdapter(_objectPath); Console.WriteLine("Got adapter at .ctor.3."); // var prop = GetProperties(); string addrDt = (string)prop[PropertyName.Address]; var addrD = BluetoothAddress.Parse(addrDt); Utils.MiscUtils.AssertEquals(addrD, _addr); Console.WriteLine("Check DONE Radio..ctor. " + addrD + " vs " + _addr); }