Hi folks/Marcel,

The patch is attached. The basic structure to start the development of the "sdp", "network", "serial", ... was added.
There are a lot not implemented methods.

Regards,
Claudio.

>>>>Main Features
1. added multiple bt adapter support
2. added the structures to support profiles
3. Modified paths to "/org/bluez/Devices" and "/org/bluez/Manager". Where "Devices" is going to provide
   device configuration services currently provided by hciconfig tool. The "Manager" will handle
   services related to connection establishment and setup, including profiles, sdp and device discovery.

>>>>Next Action
1. Move the functions to to suitable file names( eg: dbus-mgr.c and dbus-dev.c)
2. Define the device based path name.


>>>>How Test
1. /org/bluez/Devices, device up
$dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Devices org.bluez.Devices.Up

2. /org/bluez/Manager, Device list
$dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager org.bluez.Manager.DeviceList

comment: This service returns an array of devices. The reply signature is "a(ss)", where the first string is the device name(eg: hci0, hci1) and the second string is the bluetooth address. You have to develop a python client or a "c" client to see the content.

3. /org/bluez/Manager/default/Controller, Inquiry
$dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager/default/Controller org.bluez.Manager.Inquiry byte:4 byte:10 uint16:0
or
$dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager/hci0/Controller org.bluez.Manager.Inquiry byte:4 byte:10 uint16:0

comment: This service returns an array of devices. The reply signature is "a(suq)", where the first string is the bt address, the snd is the class and the last is the clock offset. You have to develop a python client or a "c" client to see the content.

4. /org/bluez/Manager/default/Controller, Periodic Inquiry
$dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager/default/Controller org.bluez.Manager.PeriodicInquiry byte:4 byte:27 byte:49
or
$dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager/hci0/Controller org.bluez.Manager.PeriodicInquiry byte:4 byte:27 byte:49

5. /org/bluez/Manager/default/Controller, Cancel Periodic Inquiry
dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager/default/Controller org.bluez.Manager.CancelPeriodic
or
dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager/hci0/Controller org.bluez.Manager.CancelPeriodic
6. /org/bluez/Manager/default/Controller, RoleSwitch
dbus-send --system --dest=org.bluez --type=method_call /org/bluez/Manager/default/Controller org.bluez.Manager.RoleSwitch string:AA:AA:AA:AA:AA:AA byte:1



--
---------------------------------------------------------
Claudio Takahasi
Nokia's Institute of Technology - INdT
claudio.takahasi@indt.org.br