123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197 |
- // Copyright 2017, Paul DeMarco.
- // All rights reserved. Use of this source code is governed by a
- // BSD-style license that can be found in the LICENSE file.
-
- syntax = "proto3";
-
- option java_package = "com.pauldemarco.flutterblue";
- option java_outer_classname = "Protos";
- option objc_class_prefix = "Protos";
-
- // Wrapper message for `int32`.
- //
- // Allows for nullability of fields in messages
- message Int32Value {
- // The int32 value.
- int32 value = 1;
- }
-
- message BluetoothState {
- enum State {
- UNKNOWN = 0;
- UNAVAILABLE = 1;
- UNAUTHORIZED = 2;
- TURNING_ON = 3;
- ON = 4;
- TURNING_OFF = 5;
- OFF = 6;
- };
- State state = 1;
- }
-
- message AdvertisementData {
- string local_name = 1;
- Int32Value tx_power_level = 2;
- bool connectable = 3;
- map<int32, bytes> manufacturer_data = 4; // Map of manufacturers to their data
- map<string, bytes> service_data = 5; // Map of service UUIDs to their data.
- repeated string service_uuids = 6;
- }
-
- message ScanSettings {
- int32 android_scan_mode = 1;
- repeated string service_uuids = 2;
- }
-
- message ScanResult {
- BluetoothDevice device = 1; // The received peer's ID.
- AdvertisementData advertisement_data = 2;
- int32 rssi = 3;
- }
-
- message ConnectRequest {
- string remote_id = 1;
- bool android_auto_connect = 2;
- }
-
- message BluetoothDevice {
- enum Type {
- UNKNOWN = 0;
- CLASSIC = 1;
- LE = 2;
- DUAL = 3;
- };
-
- string remote_id = 1;
- string name = 2;
- Type type = 3;
- }
-
- message BluetoothService {
- string uuid = 1;
- string remote_id = 2;
- bool is_primary = 3; // Indicates whether the type of service is primary or secondary.
- repeated BluetoothCharacteristic characteristics = 4; // A list of characteristics that have been discovered in this service.
- repeated BluetoothService included_services = 5; // A list of included services that have been discovered in this service.
- }
-
- message BluetoothCharacteristic {
- string uuid = 1;
- string serviceUuid = 2; // The service that this characteristic belongs to.
- string secondaryServiceUuid = 3; // The secondary service if nested
- repeated BluetoothDescriptor descriptors = 4; // A list of descriptors that have been discovered in this characteristic.
- CharacteristicProperties properties = 5; // The properties of the characteristic.
- bytes value = 6;
- }
-
- message BluetoothDescriptor {
- string uuid = 1;
- string serviceUuid = 2; // The service that this descriptor belongs to.
- string characteristicUuid = 3; // The characteristic that this descriptor belongs to.
- bytes value = 4;
- }
-
- message CharacteristicProperties {
- bool broadcast = 1;
- bool read = 2;
- bool write_without_response = 3;
- bool write = 4;
- bool notify = 5;
- bool indicate = 6;
- bool authenticated_signed_writes = 7;
- bool extended_properties = 8;
- bool notify_encryption_required = 9;
- bool indicate_encryption_required = 10;
- }
-
- message DiscoverServicesResult {
- string remote_id = 1;
- repeated BluetoothService services = 2;
- }
-
- message ReadCharacteristicRequest {
- string remote_id = 1;
- string characteristic_uuid = 2;
- string service_uuid = 3;
- string secondary_service_uuid = 4;
- }
-
- message ReadCharacteristicResponse {
- string remote_id = 1;
- BluetoothCharacteristic characteristic = 2;
- }
-
- message ReadDescriptorRequest {
- string remote_id = 1;
- string descriptor_uuid = 2;
- string service_uuid = 3;
- string secondary_service_uuid = 4;
- string characteristic_uuid = 5;
- }
-
- message ReadDescriptorResponse {
- ReadDescriptorRequest request = 1;
- bytes value = 2;
- }
-
- message WriteCharacteristicRequest {
- enum WriteType {
- WITH_RESPONSE = 0;
- WITHOUT_RESPONSE = 1;
- }
- string remote_id = 1;
- string characteristic_uuid = 2;
- string service_uuid = 3;
- string secondary_service_uuid = 4;
- WriteType write_type = 5;
- bytes value = 6;
- }
-
- message WriteCharacteristicResponse {
- WriteCharacteristicRequest request = 1;
- bool success = 2;
- }
-
- message WriteDescriptorRequest {
- string remote_id = 1;
- string descriptor_uuid = 2;
- string service_uuid = 3;
- string secondary_service_uuid = 4;
- string characteristic_uuid = 5;
- bytes value = 6;
- }
-
- message WriteDescriptorResponse {
- WriteDescriptorRequest request = 1;
- bool success = 2;
- }
-
- message SetNotificationRequest {
- string remote_id = 1;
- string service_uuid = 2;
- string secondary_service_uuid = 3;
- string characteristic_uuid = 4;
- bool enable = 5;
- }
-
- message SetNotificationResponse {
- string remote_id = 1;
- BluetoothCharacteristic characteristic = 2;
- bool success = 3;
- }
-
- message OnNotificationResponse {
- string remote_id = 1;
- BluetoothCharacteristic characteristic = 2;
- }
-
- message DeviceStateResponse {
- enum BluetoothDeviceState {
- DISCONNECTED = 0;
- CONNECTING = 1;
- CONNECTED = 2;
- DISCONNECTING = 3;
- }
- string remote_id = 1;
- BluetoothDeviceState state = 2;
- }
|