/* * Copyright 2025 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.google.android.bluetooth.snippet object SnippetConstants { const val FIELD_DEVICE = "device" const val FIELD_STATE = "state" const val FIELD_STATUS = "status" const val FIELD_VARIANT = "variant" const val FIELD_PIN = "pin" const val FIELD_TRANSPORT = "transport" const val FIELD_NAME = "name" const val FIELD_RESULT = "result" const val FIELD_REASON = "reason" const val FIELD_SOURCE_ID = "source_id" const val FIELD_SINK_DEVICE = "sink_device" const val FIELD_BROADCAST_ID = "broadcast_id" const val FIELD_HANDLE = "handle" const val FIELD_VALUE = "value" const val FIELD_UUID = "uuid" const val FIELD_TYPE = "type" const val FIELD_ID = "id" const val FIELD_ADDRESS_TYPE = "address_type" const val FIELD_TX_PHY = "tx_phy" const val FIELD_RX_PHY = "rx_phy" const val FIELD_MTU = "mtu" const val FIELD_SOURCE = "source" const val FIELD_REPORT = "report" const val FIELD_COMMON = "common" const val PROFILE_CONNECTION_STATE_CHANGE = "PROFILE_CONNECTION_STATE_CHANGE" const val ACTIVE_DEVICE_CHANGED = "ACTIVE_DEVICE_CHANGED" const val PAIRING_REQUEST = "PAIRING_REQUEST" const val BOND_STATE_CHANGE = "BOND_STATE_CHANGE" const val UUID_CHANGED = "UUID_CHANGED" const val ACL_CONNECTED = "ACL_CONNECTED" const val ACL_DISCONNECTED = "ACL_DISCONNECTED" const val DEVICE_FOUND = "DEVICE_FOUND" const val SCAN_RESULT = "SCAN_RESULT" const val BATCH_SCAN_RESULTS = "BATCH_SCAN_RESULTS" const val BATTERY_LEVEL_CHANGED = "BATTERY_LEVEL_CHANGED" const val ADV_PARAMETER_CONNECTABLE = "connectable" const val ADV_PARAMETER_DISCOVERABLE = "discoverable" const val ADV_PARAMETER_OWN_ADDRESS_TYPE = "own_address_type" const val ADV_PARAMETER_TIMEOUT = "timeout" const val ADV_PARAMETER_TX_POWER_LEVEL = "tx_power_level" const val ADV_PARAMETER_ADVERTISE_MODE = "advertise_mode" const val ADV_PARAMETER_ANONYMOUS = "anonymous" const val ADV_PARAMETER_LEGACY = "legacy" const val ADV_PARAMETER_SCANNABLE = "scannable" const val ADV_PARAMETER_PRIMARY_PHY = "primary_phy" const val ADV_PARAMETER_SECONDARY_PHY = "secondary_phy" const val ADV_PARAMETER_INTERVAL = "interval" const val ADV_DATA_FLAGS = "flags" const val ADV_DATA_INCLUDE_DEVICE_NAME = "include_device_name" const val ADV_DATA_INCLUDE_TX_POWER_LEVEL = "include_tx_power_level" const val ADV_DATA_SERVICE_UUID = "service_uuids" const val ADV_DATA_SERVICE_DATA = "service_data" const val ADV_DATA_MANUFACTURER_DATA = "manufacturer_data" const val ADV_DATA_SERVICE_SOLICITATION_UUIDS = "service_solicitation_uuids" const val ADV_DATA_TYPE = "advertising_data_type" const val ADV_REPORT_SID = "sid" const val ADV_REPORT_RSSI = "rssi" const val ADV_REPORT_PA_INTERVAL = "pa_interval" const val ADV_REPORT_TIMESTAMP = "timestamp" const val SCAN_PARAM_SCAN_MODE = "scan_mode" const val SCAN_PARAM_CALLBACK_TYPE = "callback_type" const val SCAN_PARAM_SCAN_RESULT_TYPE = "scan_result_type" const val SCAN_PARAM_PHY = "phy" const val SCAN_PARAM_REPORT_DELAY_MILLIS = "report_delay_millis" const val BLUETOOTH_QUALITY_REPORT = "BLUETOOTH_QUALITY_REPORT" const val PACKET_TYPE = "packet_type" const val CONNECTION_HANDLE = "connection_handle" const val CONNECTION_ROLE = "connection_role" const val TX_POWER_LEVEL = "tx_power_level" const val RSSI = "rssi" const val SNR = "snr" const val UNUSED_AFH_CHANNEL_COUNT = "unused_afh_channel_count" const val AFH_SELECT_UNIDEAL_CHANNEL_COUNT = "afh_select_unideal_channel_count" const val LSTO = "lsto" const val PICONET_CLOCK = "piconet_clock" const val RETRANSMISSION_COUNT = "retransmission_count" const val NO_RX_COUNT = "no_rx_count" const val NAK_COUNT = "nak_count" const val LAST_TX_ACK_TIMESTAMP = "last_tx_ack_timestamp" const val FLOW_OFF_COUNT = "flow_off_count" const val LAST_FLOW_ON_TIMESTAMP = "last_flow_on_timestamp" const val OVERFLOW_COUNT = "overflow_count" const val UNDERFLOW_COUNT = "underflow_count" const val CAL_FAILED_ITEM_COUNT = "cal_failed_item_count" const val TX_TOTAL_PACKETS = "tx_total_packets" const val TX_UNACK_PACKETS = "tx_unack_packets" const val TX_FLUSH_PACKETS = "tx_flush_packets" const val TX_LAST_SUBEVENT_PACKETS = "tx_last_subevent_packets" const val CRC_ERROR_PACKETS = "crc_error_packets" const val RX_DUP_PACKETS = "rx_dup_packets" const val RX_UN_RECV_PACKETS = "rx_un_recv_packets" const val COEX_INFO_MASK = "coex_info_mask" const val OOB_DATA_CONFIRMATION_HASH = "confirmation_hash" const val OOB_DATA_RANDOMIZER_HASH = "randomizer_hash" const val OOB_DATA_LE_TEMPORARY_KEY = "le_temporary_key" const val OOB_DATA_DEVICE_ADDRESS_WITH_TYPE = "device_address_with_type" const val OOB_DATA_LE_DEVICE_ROLE = "le_device_role" const val OOB_DATA_CLASSIC_LENGTH = "classic_length" const val GATT_FIELD_TYPE = "type" const val GATT_FIELD_CHARACTERISTICS = "characteristics" const val GATT_FIELD_DESCRIPTORS = "descriptors" const val GATT_FIELD_PROPERTIES = "properties" const val GATT_FIELD_PERMISSIONS = "permissions" const val GATT_FIELD_SUBRATE_MODE = "subrate_mode" const val GATT_CONNECTION_STATE_CHANGE = "GATT_CONNECTION_STATE_CHANGE" const val GATT_SERVICE_DISCOVERED = "GATT_SERVICE_DISCOVERED" const val GATT_SERVICE_CHANGED = "GATT_SERVICE_CHANGED" const val GATT_CHARACTERISTIC_READ = "GATT_CHARACTERISTIC_READ" const val GATT_CHARACTERISTIC_WRITE = "GATT_CHARACTERISTIC_WRITE" const val GATT_CHARACTERISTIC_CHANGED = "GATT_CHARACTERISTIC_CHANGED" const val GATT_DESCRIPTOR_READ = "GATT_DESCRIPTOR_READ" const val GATT_DESCRIPTOR_WRITE = "GATT_DESCRIPTOR_WRITE" const val GATT_PHY_UPDATE = "GATT_PHY_UPDATE" const val GATT_MTU_CHANGED = "GATT_MTU_CHANGED" const val GATT_SUBRATE_CHANGED = "GATT_SUBRATE_CHANGED" const val GATT_FIELD_REQUEST_ID = "request_id" const val GATT_FIELD_OFFSET = "offset" const val GATT_FIELD_PREPARED_WRITE = "prepared_write" const val GATT_FIELD_RESPONSE_NEEDED = "response_needed" const val GATT_SERVER_CONNECTION_STATE_CHANGE = "GATT_SERVER_CONNECTION_STATE_CHANGE" const val GATT_SERVER_SERVICE_ADDED = "GATT_SERVER_SERVICE_ADDED" const val GATT_SERVER_CHARACTERISTIC_READ_REQUEST = "GATT_SERVER_CHARACTERISTIC_READ_REQUEST" const val GATT_SERVER_CHARACTERISTIC_WRITE_REQUEST = "GATT_SERVER_CHARACTERISTIC_WRITE_REQUEST" const val GATT_SERVER_DESCRIPTOR_READ_REQUEST = "GATT_SERVER_DESCRIPTOR_READ_REQUEST" const val GATT_SERVER_DESCRIPTOR_WRITE_REQUEST = "GATT_SERVER_DESCRIPTOR_WRITE_REQUEST" const val BASS_SOURCE_FOUND = "BASS_SOURCE_FOUND" const val BASS_RECEIVE_STATE_CHANGED = "BASS_RECEIVE_STATE_CHANGED" const val LEA_BROADCAST_FIELD_SUBGROUPS = "subgroups" const val LEA_BROADCAST_FIELD_PROGRAM = "program" const val LEA_BROADCAST_FIELD_LANGUAGE = "language" const val LEA_BROADCAST_FIELD_PUBLIC = "public" const val LEA_BROADCAST_FIELD_QUALITY = "quality" const val HFP_AG_AUDIO_STATE_CHANGED = "HFP_AG_AUDIO_STATE_CHANGED" const val HFP_HF_AUDIO_STATE_CHANGED = "HFP_HF_AUDIO_STATE_CHANGED" const val A2DP_PLAYING_STATE_CHANGED = "A2DP_PLAYING_STATE_CHANGED" const val VOLUME_CHANGED = "VOLUME_CHANGED" const val AUDIO_DEVICE_ADDED = "AUDIO_DEVICE_ADDED" const val AUDIO_DEVICE_REMOVED = "AUDIO_DEVICE_REMOVED" const val PLAYER_IS_PLAYING_CHANGED = "PLAYER_IS_PLAYING_CHANGED" const val PLAYER_MEDIA_ITEM_TRANSITION = "PLAYER_MEDIA_ITEM_TRANSITION" const val AUDIO_COMMUNICATION_DEVICE_CHANGED = "AUDIO_COMMUNICATION_DEVICE_CHANGED" const val CONTENT_TYPE = "content_type" const val FLAGS = "flags" const val USAGE = "usage" const val URI = "uri" const val ALLOWED_CAPTURE_POLICY = "allowed_capture_policy" const val SPATIALIZATION_BEHAVIOR = "spatialization_behavior" const val CONTACT_NAME = "name" const val CONTACT_NUMBER = "number" const val CONTACT_PHONE_TYPE = "phone_type" const val CONTACT_EMAIL = "email" const val CONTACT_EMAIL_TYPE = "email_type" const val CONTACT_COMPANY = "company" const val CONTACT_JOB_TITLE = "job_title" const val CALL_DATE = "date" const val CALL_DURATION = "duration" const val CALL_TYPE = "call_type" const val CALL_STATE_CHANGED = "CALL_STATE_CHANGED" const val KEY_EVENT = "KEY_EVENT" const val MOTION_EVENT = "MOTION_EVENT" const val KEY_EVENT_FIELD_KEY_CODE = "key_code" const val KEY_EVENT_FIELD_ACTION = "action" const val MOTION_EVENT_FIELD_X = "x" const val MOTION_EVENT_FIELD_Y = "y" const val MOTION_EVENT_FIELD_BUTTON_STATE = "button_state" const val DISTANCE_MEASUREMENT_RESULT = "DISTANCE_MEASUREMENT_RESULT" const val RESULT_METERS = "result_meters" const val ERROR_METERS = "error_meters" const val AZIMUTH_ANGLE = "azimuth_angle" const val ERROR_AZIMUTH_ANGLE = "error_azimuth_angle" const val ALTITUDE_ANGLE = "altitude_angle" const val ERROR_ALTITUDE_ANGLE = "error_altitude_angle" const val DELAY_SPREAD_METERS = "delay_spread_meters" const val CONFIDENCE_LEVEL = "confidence_level" const val DETECTED_ATTACK_LEVEL = "detected_attack_level" const val VELOCITY_METERS_PER_SECOND = "velocity_meters_per_second" const val MEASUREMENT_TIMESTAMP_NANOS = "measurement_timestamp_nanos" const val DURATION = "duration" const val METHOD_ID = "method_id" const val FREQUENCY = "frequency" const val CHANNEL_SOUNDING_PARAMS = "channel_sounding_params" const val SIGHT_TYPE = "sight_type" const val LOCATION_TYPE = "location_type" const val SECURITY_LEVEL = "security_level" const val PRESET_INFO_CHANGED = "PRESET_INFO_CHANGED" const val PRESET_SELECTED = "PRESET_SELECTED" const val SET_PRESET_NAME_FAILED = "SET_PRESET_NAME_FAILED" }