BLEAgent.py class BLEAgent line 55 def __init__(self, bus, capability) line 68 def _log(self, message, level) line 82 def Release(self) line 101 def AuthorizeService(self, device, uuid) line 111 def RequestAuthorization(self, device) line 127 def RequestConfirmation(self, device, passkey) line 139 def RequestPasskey(self, device) line 155 def Cancel(self) line 172 def _format_device_path(self, device_path) line 182 def register_agent(capability) line 202 def unregister_agent(agent) line 262 BLEFragmentation.py class BLEFragmenter line 52 def __init__(self, mtu) line 68 def fragment_packet(self, packet) line 82 def get_fragment_overhead(self, packet_size) line 158 class BLEReassembler line 176 def __init__(self, timeout) line 187 def receive_fragment(self, fragment, sender_id) line 205 def _reassemble(self, buffer) line 380 def cleanup_stale_buffers(self) line 402 def get_statistics(self) line 429 def reset_statistics(self) line 443 class HDLCFramer line 450 def frame_packet(packet) line 464 def deframe_packet(frame) line 491 BLEGATTServer.py class BLEGATTServer line 51 def __init__(self, interface, device_name, agent_capability) line 77 def _log(self, message, level) line 127 def _handle_write_rx(self, value, options) line 148 def _handle_read_identity(self, options) line 215 def _handle_central_connected(self, central_address, mtu) line 242 def _handle_central_disconnected(self, central_address) line 279 def _run_server_thread(self) line 306 async def start(self) line 441 def set_transport_identity(self, identity_hash) line 484 async def stop(self) line 503 async def send_notification(self, data, central_address) line 543 def is_connected(self, central_address) line 607 def get_connected_centrals(self) line 620 def get_connection_info(self, central_address) line 630 def get_central_mtu(self, central_address) line 643 def get_statistics(self) line 658 def __str__(self) line 678 def __repr__(self) line 684 BLEInterface.py class DiscoveredPeer line 118 def __init__(self, address, name, rssi) line 146 def update_rssi(self, rssi) line 167 def record_connection_attempt(self) line 172 def record_connection_success(self) line 177 def record_connection_failure(self) line 181 def get_success_rate(self) line 185 def __repr__(self) line 196 class BLEInterface line 202 def __init__(self, owner, configuration) line 267 def start(self) line 479 def final_init(self) line 516 def _setup_logging_redirect(self) line 529 def _start_advertising_when_identity_ready(self) line 583 def _clear_stale_ble_paths(self) line 630 def _start_cleanup_timer(self) line 686 def _periodic_cleanup_task(self) line 701 def _cleanup_pending_identity_connections(self) line 741 def _process_pending_detaches(self) line 771 def _validate_spawned_interfaces(self) line 829 def _device_discovered_callback(self, device) line 912 def _device_connected_callback(self, address, peer_identity) line 964 def _check_duplicate_identity(self, address, peer_identity) line 1023 def _mtu_negotiated_callback(self, address, mtu) line 1112 def _handle_identity_handshake(self, address, data) line 1174 def _data_received_callback(self, address, data) line 1281 def _device_disconnected_callback(self, address) line 1295 def _cleanup_stale_address(self, identity_hash, old_address) line 1380 def _address_changed_callback(self, old_address, new_address, identity_hash) line 1411 def _error_callback(self, severity, message, exc) line 1479 def _score_peer(self, peer) line 1534 def _select_peers_to_connect(self) line 1620 def _is_blacklisted(self, address) line 1761 def _record_connection_success(self, address) line 1785 def _record_connection_failure(self, address) line 1800 def _get_fragmenter_key(self, peer_identity, peer_address) line 1858 def _compute_identity_hash(self, peer_identity) line 1871 def _spawn_peer_interface(self, address, name, peer_identity, client, mtu, connection_type) line 1892 def _handle_ble_data(self, peer_address, data) line 1957 def handle_peripheral_data(self, data, sender_address) line 2085 def handle_central_connected(self, address) line 2188 def handle_central_disconnected(self, address) line 2222 def process_incoming(self, data) line 2291 def process_outgoing(self, data) line 2305 def detach(self) line 2335 def should_ingress_limit(self) line 2365 def __str__(self) line 2376 class BLEPeerInterface line 2380 def __init__(self, parent, peer_address, peer_name, peer_identity) line 2388 def process_incoming(self, data) line 2420 def process_outgoing(self, data) line 2437 def detach(self) line 2483 def should_ingress_limit(self) line 2493 def connection_id(self) line 2498 def __str__(self) line 2510 __init__.py bluetooth_driver.py class BLEDevice line 10 class DriverState line 18 class BLEDriverInterface line 29 def start(self, service_uuid, rx_char_uuid, tx_char_uuid, identity_char_uuid) line 57 def stop(self) line 66 def set_identity(self, identity_bytes) line 74 def state(self) line 85 def connected_peers(self) line 91 def start_scanning(self) line 98 def stop_scanning(self) line 106 def start_advertising(self, device_name, identity) line 111 def stop_advertising(self) line 124 def connect(self, address) line 129 def disconnect(self, address) line 137 def send(self, address, data) line 142 def read_characteristic(self, address, char_uuid) line 157 def write_characteristic(self, address, char_uuid, data) line 165 def start_notify(self, address, char_uuid, callback) line 173 def get_local_address(self) line 183 def get_peer_role(self, address) line 191 def set_service_discovery_delay(self, seconds) line 204 def set_power_mode(self, mode) line 212 linux_bluetooth_driver.py def _rns_showwarning(message, category, filename, lineno, file, line) line 142 def apply_bluez_services_resolved_patch() line 220 class PeerConnection line 287 class LinuxBluetoothDriver line 297 def __init__(self, discovery_interval, connection_timeout, min_rssi, service_discovery_delay, max_peers, adapter_index, agent_capability) line 314 def _log(self, message, level) line 403 def start(self, service_uuid, rx_char_uuid, tx_char_uuid, identity_char_uuid) line 426 def stop(self) line 489 def set_identity(self, identity_bytes) line 531 def state(self) line 551 def connected_peers(self) line 556 def start_scanning(self) line 565 def stop_scanning(self) line 582 def _should_pause_scanning(self) line 593 async def _scan_loop(self) line 607 async def _perform_scan(self) line 636 def start_advertising(self, device_name, identity) line 749 def stop_advertising(self) line 784 def connect(self, address) line 806 def disconnect(self, address) line 876 def _handle_peripheral_disconnected(self, address) line 909 async def _remove_bluez_device(self, address) line 942 async def _connect_to_peer(self, address) line 988 async def _connect_via_dbus_le(self, peer_address) line 1253 async def _negotiate_mtu(self, client) line 1291 def _handle_notification(self, address, data) line 1332 def send(self, address, data) line 1344 def read_characteristic(self, address, char_uuid) line 1386 def write_characteristic(self, address, char_uuid, data) line 1409 def start_notify(self, address, char_uuid, callback) line 1431 def get_local_address(self) line 1464 def get_peer_role(self, address) line 1468 def get_peer_mtu(self, address) line 1475 def set_service_discovery_delay(self, seconds) line 1494 def set_power_mode(self, mode) line 1499 def _run_event_loop(self) line 1511 async def _get_local_adapter_address(self) line 1523 def _detect_bluez_version(self) line 1556 class BluezeroGATTServer line 1578 def __init__(self, driver, service_uuid, rx_char_uuid, tx_char_uuid, identity_char_uuid, adapter_index, agent_capability) line 1589 def _log(self, message, level) line 1646 def set_identity(self, identity_bytes) line 1650 def _verify_services_on_dbus(self, timeout) line 1662 def _monitor_device_disconnections(self) line 1730 def _poll_stale_connections(self) line 1965 def start(self, device_name) line 2072 def stop(self) line 2160 def _run_server_thread(self, device_name) line 2206 def _handle_write_rx(self, value, options) line 2328 def _handle_read_identity(self, options) line 2374 def _handle_central_connected(self, central_address, mtu) line 2388 def _handle_central_disconnected(self, central_address) line 2430 def send_notification(self, central_address, data) line 2479