.
"kb3013531 näyttäisi poistavan bluetoothin kokonaan joten jätinpä tuon asentamatta :)"
.
kb3013531 poistaa bluetoothin
2
101
Vastaukset
- vaihdalinuxiin
Linuxissa taas voi vaikka itse tehdä oman bluetootsovelluksen, tämä toimii uden bluez5:n kanssa:
#!/usr/bin/python
from __future__ import absolute_import, print_function, unicode_literals
import gobject
import sys
import dbus
import dbus.service
from dbus.mainloop.glib import DBusGMainLoop
BUS_NAME = 'org.bluez.obex'
PATH = '/org/bluez/obex'
AGENT_MANAGER_INTERFACE = 'org.bluez.obex.AgentManager1'
AGENT_INTERFACE = 'org.bluez.obex.Agent1'
BLUEZAGENT_INTERFACE = 'org.bluez.Agent1'
FILETRANSFER_INTERFACE = 'org.bluez.obex.FileTransfer1'
SESSION_INTERFACE='org.bluez.obex.Client1'
TRANSFER_INTERFACE = 'org.bluez.obex.Transfer1'
ADAPTER_INTERFACE = "org.bluez.Adapter1"
DBusGMainLoop(set_as_default=True)
class Adapter():
def get_managed_objects(self):
manager = dbus.Interface(self.bus.get_object("org.bluez", "/"),
"org.freedesktop.DBus.ObjectManager")
return manager.GetManagedObjects()
def find_adapter(self,pattern=None):
return self.find_adapter_in_objects(self.get_managed_objects(), pattern)
def find_adapter_in_objects(self,objects, pattern=None):
for path, ifaces in objects.iteritems():
adapter = ifaces.get(ADAPTER_INTERFACE)
if adapter is None:
continue
if not pattern or pattern == adapter["Address"] or \
path.endswith(pattern):
obj = self.bus.get_object("org.bluez", path)
return dbus.Interface(obj, ADAPTER_INTERFACE)
raise Exception("Bluetooth adapter not found")
def __init__(self):
self.bus = dbus.SystemBus()
adapter_path = self.find_adapter("hci0").object_path
adapter = dbus.Interface(self.bus.get_object("org.bluez", adapter_path),
"org.freedesktop.DBus.Properties")
adapter.Set("org.bluez.Adapter1", "Powered", dbus.Boolean(1))
adapter.Set("org.bluez.Adapter1", "Discoverable", dbus.Boolean(1))
class Agent(dbus.service.Object):
def __init__(self, conn=None, obj_path=None):
dbus.service.Object.__init__(self, conn, obj_path)
@dbus.service.method(AGENT_INTERFACE, in_signature="o",out_signature="s")
def AuthorizePush(self, path):
self.dbus_proxy = dbus.SessionBus().get_object(BUS_NAME, path)
self.transfer = dbus.Interface(self.dbus_proxy,'org.freedesktop.DBus.Properties')
properties = self.transfer.GetAll(TRANSFER_INTERFACE);
print('Downloading to: ~/.cache/obexd/' properties['Name'])
return properties['Name']
@dbus.service.method(AGENT_INTERFACE, in_signature="",out_signature="")
def Cancel(self):
print("Authorization Canceled")
@dbus.service.method(AGENT_INTERFACE, in_signature="", out_signature="")
def Release(self):
return
class Rejected(dbus.DBusException):
_dbus_error_name = "org.bluez.Error.Rejected"
def ask(prompt):
try:
return raw_input(prompt)
except:
return input(prompt)
def set_trusted(path):
props = dbus.Interface(bus.get_object("org.bluez", path),
"org.freedesktop.DBus.Properties")
props.Set("org.bluez.Device1", "Trusted", True)
class BluezAgent(dbus.service.Object):
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="", out_signature="")
def Release(self):
print("Release")
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="os", out_signature="")
def AuthorizeService(self, device, uuid):
print("AuthorizeService (%s, %s)" % (device, uuid))
authorize = ask("Authorize connection (Y/no): ")
if (authorize == "Y" or ""):
return
raise Rejected("Connection rejected by user")
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="o", out_signature="s")
def RequestPinCode(self, device):
print("RequestPinCode (%s)" % (device))
set_trusted(device)
return ask("Enter PIN Code: ")
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="o", out_signature="u")
def RequestPasskey(self, device):
print("RequestPasskey (%s)" % (device))
set_trusted(device)
passkey = ask("Enter passkey: ")
return dbus.UInt32(passkey)
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="ouq", out_signature="")
def DisplayPasskey(self, device, passkey, entered):
print("DisplayPasskey (%s, %06u entered %u)" %
(device, passkey, entered))
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="os", out_signature="")
def DisplayPinCode(self, device, pincode):
print("DisplayPinCode (%s, %s)" % (device, pincode))
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="ou", out_signature="")
def RequestConfirmation(self, device, passkey):- sisennäitse
print("RequestConfirmation (%s, %06d)" % (device, passkey))
confirm = ask("Confirm passkey (Y/no): ")
if (confirm == "Y" or ""):
set_trusted(device)
return
raise Rejected("Passkey doesn't match")
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="o", out_signature="")
def RequestAuthorization(self, device):
print("RequestAuthorization (%s)" % (device))
auth = ask("Authorize? (Y/no): ")
if (auth == "Y" or ""):
return
raise Rejected("Pairing rejected")
@dbus.service.method(BLUEZAGENT_INTERFACE,
in_signature="", out_signature="")
def Cancel(self):
print("Cancel")
class MessageListener():
def __init__(self):
capability = "KeyboardDisplay"
bluezpath = "/test/bluezagent"
bluezagent = BluezAgent(dbus.SystemBus(), bluezpath)
obj = dbus.SystemBus().get_object('org.bluez', "/org/bluez");
bluezmanager = dbus.Interface(obj, "org.bluez.AgentManager1")
bluezmanager.RegisterAgent(bluezagent, capability)
print("Waiting for new devices")
self.manager = dbus.Interface(dbus.SessionBus().get_object(BUS_NAME, PATH), AGENT_MANAGER_INTERFACE)
self.path = "/test/agent"
self.agent = Agent(dbus.SessionBus(), self.path)
try:
manager.UnregisterAgent(self.agent)
except: pass
self.manager.RegisterAgent(self.agent)
print("Waiting for files")
gobject.MainLoop().run()
self.manager.UnregisterAgent(self.agent)
bluezmanager.UnregisterAgent(bluezagent)
if __name__ == '__main__':
Adapter()
MessageListener()
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Ihanasti alkoi aamu: SDP:n kaula kokoomukseen jo 6,9 %-yks
Lindtmanin I hallitus on tukevasti jytkyttämässä laittamaan Suomi kuntoon Orvon täystuhohallituksen jäljiltä, jonka kann4312874Olen niin kesken
Omien asioiden suhteen etkä voi odottaa loputtomiin. Mun on muutenkin niin vaikea suhun luottaa vaikka joku ihme syvyys182404Teidän persujen pitäisi välillä miettiä kuinka Suomen talous saataisiin kuntoon
Ja lopettaa tuo tyhjänpäiväinen maahanmuuttajista höpöttäminen. Teillä on sentään rahaministerin salkku tällä kierroksel1372215- 1211900
Tietääkö joku ylläpidosta?
Miten näillä palstoilla tomii tuo ylläpito, onko sitä yli päätään olemassa vai ovatko huhut totta että on palstan kirjoi2481614Kaninkolojen vaikutus?
Vinkki sinkkumiehille: jos haluatte kunnollisen täysijärkisen naisen, niin kaivautukaa ulos kaninkoloistanne ja parantak2061246Auttaja paikalla. Kerro huolesi. (Osa 2)
Voin auttaa sinua näkemään tilanteesi uudesta näkökulmasta. Voin antaa lohtua, toivoa ja rohkeutta. Olen elänyt maan pä1861230Martina ei mennyt naimisiin
IS 17.9: Martinan häät peruuntui, tajusi, ettei ollut oikea aika. Rahat meni hevosiin. On edelleen parisuhteessa Yhdysva1511193Persut ei kestä heidän johtajistaan tehtyä huumoria
Laajalti tiedostettu tosiasia on, että autoritaariset johtajat ja erinäiset diktaattorit eivät kestä heidän kustannuksel281178Kuka omistaa entisen Veljeskodin?
Kenellä on varaa pitää hiljattain remontoitua rakennusta tyhjillään? Tehdäänkö siitä Suomen kallein kirpputori vai mikä71095