Описание
Используйте 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
- информация