Описание
Используйте API chrome.bluetoothSocket
для отправки и получения данных на устройства Bluetooth с использованием соединений RFCOMM и L2CAP.
Манифест
Типы
AcceptError
Перечисление
"системная_ошибка" "не_слушание"
Произошла системная ошибка, и соединение может оказаться невосстановимым.
Сокет не слушается.
AcceptErrorInfo
Характеристики
- ошибка
Код ошибки, указывающий, что пошло не так.
- сообщение об ошибке
нить
Сообщение об ошибке.
- идентификатор сокета
число
Идентификатор сокета сервера.
AcceptInfo
Характеристики
- clientSocketId
число
Идентификатор сокета клиента, т. е. идентификатор сокета вновь установленного соединения. Этот идентификатор сокета следует использовать только с функциями из пространства имен
chrome.bluetoothSocket
. Обратите внимание, что клиентский сокет изначально приостановлен и должен быть явно возобновлен приложением, чтобы начать получать данные. - идентификатор сокета
число
Идентификатор сокета сервера.
CreateInfo
Характеристики
- идентификатор сокета
число
Идентификатор вновь созданного сокета. Обратите внимание, что идентификаторы сокетов, созданные с помощью этого API, несовместимы с идентификаторами сокетов, созданными с помощью других API, таких как API
[
ockets.tcp](../sockets_tcp/)
.
ListenOptions
Характеристики
- отставание
номер необязательно
Длина очереди прослушивания сокета. Значение по умолчанию зависит от хост-подсистемы операционной системы.
- канал
номер необязательно
Канал RFCOMM, используемый
listenUsingRfcomm
. Если указано, этот канал не должен ранее использоваться, иначе вызов метода завершится неудачно. Если не указано, неиспользуемый канал будет выделен автоматически. - псм
номер необязательно
L2CAP PSM, используемый
listenUsingL2cap
. Если указано, этот PSM ранее не должен использоваться, или вызов метода может привести к сбою. Если не указано, неиспользуемый PSM будет выделен автоматически.
ReceiveError
Перечисление
"отключен" "системная_ошибка" "не_подключено"
Соединение было прервано.
Произошла системная ошибка, и соединение может оказаться невосстановимым.
Розетка не подключена.
ReceiveErrorInfo
Характеристики
- ошибка
Код ошибки, указывающий, что пошло не так.
- сообщение об ошибке
нить
Сообщение об ошибке.
- идентификатор сокета
число
Идентификатор сокета.
ReceiveInfo
Характеристики
- данные
МассивБуфер
Полученные данные с максимальным размером
bufferSize
. - идентификатор сокета
число
Идентификатор сокета.
SocketInfo
Характеристики
- адрес
строка необязательна
Если базовый сокет подключен, содержит адрес Bluetooth устройства, к которому он подключен.
- размер буфера
номер необязательно
Размер буфера, используемого для приема данных. Если размер буфера не указан явно, значение не предоставляется.
- подключен
логическое значение
Флаг, указывающий, подключен ли сокет к удаленному узлу.
- имя
строка необязательна
Определяемая приложением строка, связанная с сокетом.
- остановился
логическое значение
Флаг, указывающий, блокирует ли подключенный сокет отправку дополнительных данных своему одноранговому узлу или отправляются ли запросы на подключение к прослушивающему сокету через событие
onAccept
или ставятся в очередь в очереди прослушивания. См.setPaused
. Значение по умолчанию — «ложь». - настойчивый
логическое значение
Флаг, указывающий, остается ли сокет открытым при выгрузке страницы событий приложения (см.
SocketProperties.persistent
). Значение по умолчанию — «ложь». - идентификатор сокета
число
Идентификатор сокета.
- uuid
строка необязательна
Если базовый сокет подключен, содержит информацию об UUID службы, к которой он подключен, в противном случае, если базовый сокет прослушивает, содержит информацию об UUID службы, которую он прослушивает.
SocketProperties
Характеристики
- размер буфера
номер необязательно
Размер буфера, используемого для приема данных. Значение по умолчанию — 4096.
- имя
строка необязательна
Определяемая приложением строка, связанная с сокетом.
- настойчивый
логическое значение необязательно
Флаг, указывающий, остается ли сокет открытым при выгрузке страницы событий приложения (см. Управление жизненным циклом приложения ). Значение по умолчанию —
false.
Когда приложение загружается, любые сокеты, ранее открытые с параметром persist=true, можно получить с помощьюgetSockets
.
Методы
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
)
Отключает и разрушает розетку. Каждый созданный сокет должен быть закрыт после использования. Идентификатор сокета больше не действителен при вызове функции. Однако сокет гарантированно закроется только при вызове обратного вызова.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
)
Подключает розетку к удаленному устройству Bluetooth. Когда операция connect
завершается успешно, события onReceive
возникают при получении данных от узла. Если во время приема пакетов средой выполнения возникает сетевая ошибка, возникает событие onReceiveError
, после чего событие onReceive
для этого сокета больше не будет вызываться до тех пор, пока не будет вызван метод setPaused(false)
.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- адрес
нить
Адрес устройства Bluetooth.
- uuid
нить
UUID службы, к которой необходимо подключиться.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
)
Создает сокет Bluetooth.
Параметры
- характеристики
Свойства сокета необязательно.
Свойства сокета (необязательно).
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(createInfo: CreateInfo) => void
- создатьинформацию
Результат создания сокета.
Возврат
Обещание <CreateInfo>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
)
Отключает розетку. Идентификатор сокета остается действительным.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
)
Получает состояние данного сокета.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(socketInfo: SocketInfo) => void
- сокетинформация
Объект, содержащий информацию о сокете.
Возврат
Обещание <SocketInfo>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
)
Получает список открытых в данный момент сокетов, принадлежащих приложению.
Параметры
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(sockets: SocketInfo[]) => void
- розетки
Возврат
Обещание< SocketInfo []>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Прослушивайте соединения с использованием протокола L2CAP.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- uuid
нить
UUID службы для прослушивания.
- параметры
ListenOptions необязательно
Необязательные дополнительные опции услуги.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Прослушивайте соединения с использованием протокола RFCOMM.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- uuid
нить
UUID службы для прослушивания.
- параметры
ListenOptions необязательно
Необязательные дополнительные опции услуги.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
)
Отправляет данные на указанный разъем Bluetooth.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- данные
МассивБуфер
Данные для отправки.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(bytesSent: number) => void
- байтОтправлено
число
Количество отправленных байт.
Возврат
Обещание<число>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Включает или отключает подключенный сокет от получения сообщений от своего узла или прослушивающий сокет от приема новых соединений. Значение по умолчанию — «ложь». Приостановка подключенного сокета обычно используется приложением для регулирования данных, отправляемых его узлом. Когда подключенный сокет приостановлен, событие onReceive
не возникает. Когда сокет подключен и не находится на паузе, события onReceive
вызываются снова при получении сообщений. Когда прослушивающий сокет приостанавливается, новые соединения принимаются до тех пор, пока его очередь не заполнится, после чего дополнительные запросы на соединение отклоняются. События onAccept
возникают только тогда, когда сокет не находится на паузе.
Параметры
- идентификатор сокета
число
- остановился
логическое значение
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Обновляет свойства сокета.
Параметры
- идентификатор сокета
число
Идентификатор сокета.
- характеристики
Свойства для обновления.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:() => void
Возврат
Обещание<void>
Хром 91+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
События
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Событие возникает, когда для данного сокета установлено соединение.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(info: AcceptInfo) => void
- информация
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Событие возникает, когда возникает сетевая ошибка, пока среда выполнения ожидает новых подключений к данному сокету. Как только это событие возникает, сокет устанавливается на paused
, и для этого сокета больше не создаются события onAccept
.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(info: AcceptErrorInfo) => void
- информация
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Событие возникает, когда данные получены для данного сокета.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(info: ReceiveInfo) => void
- информация
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Событие возникает, когда возникает сетевая ошибка, пока среда выполнения ожидает данных в сокете. Как только это событие возникает, сокет устанавливается на paused
, и для этого сокета больше не создаются события onReceive
.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(info: ReceiveErrorInfo) => void
- информация