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