Salve a tutti. Sto scrivendo un programma che consenta di inviare messaggi da uno smartphone ad un computer Linux mezzo bluetooth. Mi trovo però davanti ad un problema strutturale, che non so come affrontare.
Se il pc è avviato e la sessione utente (kde) è attiva tutto funziona. Il supporto bluetooth è attivo mezzo bluez che si appoggia su dbus eccetera.
Ora il problema si pone quando la sessione è chiusa ed il programma lavora come servizio. Vedo infatti che al programma - servizio non è consentito accedere al dispositivo bluetooth. Vedo che la cosa non è accessibile nemmeno se mi collego al pc via terminal server. Sembra infatti che bluez - dbus permetta di accedere alle risorse bluetooth solo se si è al pc con una sessione avviata.
Ecco l'errore:

Codice PHP:
denis@tomcat:~/Cpp/QtBluetoothHTTPServer/QtBluetoothHTTPServer-build-desktopbluez-simple-agent
ERROR
:dbus.proxies:Introspect  error on :1.0:/: [b]dbus.exceptions.DBusException:  org.freedesktop.DBus.Error.AccessDeniedRejected send message[/b], 2  matched rulestype="method_call"sender=":1.187" (uid=1000 pid=4142  comm="/usr/bin/python /usr/bin/bluez-simple-agent ")  interface="org.freedesktop.DBus.Introspectable" member="Introspect"  error name="(unset)" requested_reply="0" destination=":1.0" (uid=0  pid=2378 comm="/usr/sbin/bluetoothd ")
Traceback (most recent call last):
  
File "/usr/bin/bluez-simple-agent"line 104in <module>
    
path manager.DefaultAdapter()
  
File "/usr/lib/python2.7/dist-packages/dbus/proxies.py"line 70in __call__
    
return self._proxy_method(*args, **keywords)
  
File "/usr/lib/python2.7/dist-packages/dbus/proxies.py"line 145in __call__
    
**keywords)
  
File "/usr/lib/python2.7/dist-packages/dbus/connection.py"line 651in call_blocking
    message
timeout)
<
b>dbus.exceptions.DBusException:  org.freedesktop.DBus.Error.AccessDeniedRejected send  message</b>, 2 matched rulestype="method_call"sender=":1.187"  (uid=1000 pid=4142 comm="/usr/bin/python /usr/bin/bluez-simple-agent ")  interface="org.bluez.Manager" member="DefaultAdapter" error  name="(unset)" requested_reply="0" destination=":1.0" (uid=0 pid=2378  comm="/usr/sbin/bluetoothd ")
denis@tomcat:~/Cpp/QtBluetoothHTTPServer/QtBluetoothHTTPServer-build-desktop
Avede idea di come si possa permettere ad un servizio di accedere ai dispositivi bluetooth?