설명
chrome.bluetoothSocket
API를 사용하여 RFCOMM 및 L2CAP 연결을 사용하는 블루투스 기기로 데이터를 송수신합니다.
매니페스트
유형
AcceptError
열거형
"system_error"
시스템 오류가 발생했으며 연결을 복구하지 못할 수 있습니다.
"not_listening"
소켓이 수신 대기하고 있지 않습니다.
AcceptErrorInfo
속성
-
error
문제를 나타내는 오류 코드입니다.
-
errorMessage
string
오류 메시지.
-
socketId
숫자
서버 소켓 식별자입니다.
AcceptInfo
속성
-
clientSocketId
숫자
클라이언트 소켓 식별자, 즉 새로 설정된 연결의 소켓 식별자입니다. 이 소켓 식별자는
chrome.bluetoothSocket
네임스페이스의 함수에만 사용해야 합니다. 클라이언트 소켓은 처음에는 일시중지되며 데이터 수신을 시작하려면 애플리케이션에서 일시중지를 명시적으로 해제해야 합니다. -
socketId
숫자
서버 소켓 식별자입니다.
CreateInfo
속성
-
socketId
숫자
새로 생성된 소켓의 ID입니다. 이 API에서 만든 소켓 ID는
[
sockets.tcp](../sockets_tcp/)
API와 같은 다른 API에서 만든 소켓 ID와 호환되지 않습니다.
ListenOptions
속성
-
백로그
number 선택사항
소켓의 수신 대기 대기열 길이 기본값은 운영체제의 호스트 하위 시스템에 따라 다릅니다.
-
채널
number 선택사항
listenUsingRfcomm
에서 사용하는 RFCOMM 채널입니다. 지정된 경우 이 채널은 이전에 사용한 적이 없어야 합니다. 그렇지 않으면 메서드 호출이 실패합니다. 지정하지 않으면 사용되지 않는 채널이 자동으로 할당됩니다. -
PSM
number 선택사항
listenUsingL2cap
에서 사용하는 L2CAP PSM입니다. 지정된 경우 이 PSM은 이전에 사용 중이거나 메서드 호출이 실패한 상태여서는 안 됩니다. 지정하지 않으면 사용되지 않은 PSM이 자동으로 할당됩니다.
ReceiveError
열거형
"disconnected"
연결이 끊어졌습니다.
"system_error"
시스템 오류가 발생했으며 연결을 복구하지 못할 수 있습니다.
"not_connected"
소켓이 연결되지 않았습니다.
ReceiveErrorInfo
속성
-
error
문제를 나타내는 오류 코드입니다.
-
errorMessage
string
오류 메시지.
-
socketId
숫자
소켓 식별자입니다.
ReceiveInfo
속성
-
데이터
ArrayBuffer
수신된 데이터이며 최대 크기는
bufferSize
입니다. -
socketId
숫자
소켓 식별자입니다.
SocketInfo
속성
-
주소
문자열 선택사항
기본 소켓이 연결되는 경우 에는 연결된 기기의 블루투스 주소가 포함됩니다.
-
bufferSize
number 선택사항
데이터를 수신하는 데 사용되는 버퍼의 크기입니다. 버퍼 크기가 명시적으로 지정되지 않은 경우 값이 제공되지 않습니다.
-
연결됨
boolean
소켓이 원격 피어에 연결되어 있는지 여부를 나타내는 플래그.
-
이름
문자열 선택사항
소켓과 연결된 애플리케이션 정의 문자열입니다.
-
일시중지됨
boolean
연결된 소켓이 피어에서 더 많은 데이터를 보내지 못하도록 차단하는지 또는 수신 대기 소켓의 연결 요청이
onAccept
이벤트를 통해 전달되는지 아니면 수신 대기 큐 백로그에서 대기열에 추가되는지를 나타내는 플래그입니다.setPaused
페이지를 참고하세요. 기본값은 'false' 입니다. -
영구
boolean
애플리케이션의 이벤트 페이지가 로드 취소될 때 소켓이 열린 상태로 유지되는지를 나타내는 플래그입니다 (
SocketProperties.persistent
참고). 기본값은 'false'입니다. -
socketId
숫자
소켓 식별자입니다.
-
uuid
문자열 선택사항
기본 소켓이 연결된 경우 연결된 서비스 UUID에 관한 정보가 포함됩니다. 그렇지 않은 경우 기본 소켓이 수신 대기 중인 경우 수신 대기 중인 서비스 UUID에 대한 정보를 포함합니다.
SocketProperties
속성
-
bufferSize
number 선택사항
데이터를 수신하는 데 사용되는 버퍼의 크기입니다. 기본값은 4,096입니다.
-
이름
문자열 선택사항
소켓과 연결된 애플리케이션 정의 문자열입니다.
-
영구
부울 선택사항
애플리케이션의 이벤트 페이지가 로드 취소될 때 소켓이 열려 있는지 여부를 나타내는 플래그입니다 (앱 수명 주기 관리 참조). 기본값은
false.
입니다. 애플리케이션이 로드되면 이전에 Persistent=true로 열린 모든 소켓을getSockets
로 가져올 수 있습니다.
방법
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
)
소켓을 연결 해제하고 파괴합니다. 생성된 각 소켓은 사용 후 닫혀야 합니다. 함수가 호출되는 즉시 소켓 ID가 더 이상 유효하지 않습니다. 그러나 소켓은 콜백이 호출될 때만 닫힙니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
)
소켓을 원격 블루투스 기기에 연결합니다. connect
작업이 성공적으로 완료되면 피어에서 데이터를 수신할 때 onReceive
이벤트가 발생합니다. 런타임이 패킷을 수신하는 동안 네트워크 오류가 발생하면 onReceiveError
이벤트가 발생합니다. 이때 setPaused(false)
메서드가 호출될 때까지 이 소켓에 대해 더 이상 onReceive
이벤트가 발생하지 않습니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
주소
string
블루투스 기기의 주소입니다.
-
uuid
string
연결할 서비스의 UUID입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
)
블루투스 소켓을 만듭니다.
매개변수
-
속성
SocketProperties 선택사항
소켓 속성 (선택사항)
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(createInfo: CreateInfo) => void
-
createInfo
소켓 생성 결과입니다.
-
반환 값
-
Promise<CreateInfo>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
)
소켓을 연결 해제합니다. 소켓 식별자는 계속 유효합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
)
지정된 소켓의 상태를 검색합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(socketInfo: SocketInfo) => void
-
socketInfo
소켓 정보를 포함하는 객체입니다.
-
반환 값
-
Promise<SocketInfo>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
)
애플리케이션이 소유하고 있으며 현재 열려 있는 소켓의 목록을 검색합니다.
매개변수
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(sockets: SocketInfo[]) => void
-
소켓
-
반환 값
-
Promise<SocketInfo[]>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
L2CAP 프로토콜을 사용하여 연결을 수신 대기합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
uuid
string
수신 대기할 서비스 UUID입니다.
-
옵션
ListenOptions 선택사항
서비스의 추가 옵션입니다(선택사항).
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
RFCOMM 프로토콜을 사용하여 연결을 수신 대기합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
uuid
string
수신 대기할 서비스 UUID입니다.
-
옵션
ListenOptions 선택사항
서비스의 추가 옵션입니다(선택사항).
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
)
지정된 블루투스 소켓의 데이터를 전송합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
데이터
ArrayBuffer
전송할 데이터입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(bytesSent: number) => void
-
bytesSent
숫자
전송된 바이트 수입니다.
-
반환 값
-
프로미스<number>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
연결된 소켓이 피어로부터 메시지를 수신하거나 수신 소켓이 새 연결을 수락하지 못하도록 사용 설정하거나 사용 중지합니다. 기본값은 'false' 입니다. 연결된 소켓을 일시중지하는 것은 일반적으로 애플리케이션에서 피어에서 전송하는 데이터를 제한하는 데 사용됩니다. 연결된 소켓이 일시중지되면 onReceive
이벤트가 발생하지 않습니다. 소켓이 연결되고 일시중지가 해제되면 메시지 수신 시 onReceive
이벤트가 다시 발생합니다. 수신 소켓이 일시 중지되면 백로그가 가득 찰 때까지 새로운 연결이 수락되고 그 이후에는 추가 연결 요청이 거부됩니다. onAccept
이벤트는 소켓 일시중지가 해제될 때만 발생합니다.
매개변수
-
socketId
숫자
-
일시중지됨
boolean
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
소켓 속성을 업데이트합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
업데이트할 속성입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<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