Capacitor WebSocket Client Plugin.
npm install @wahr/capacitor-websocket-client
npx cap sync
Unfortunately, we do not have a macOS device, but we are working hard.
await WebSocket.onOpen({}, (message, err) => {
//do something...
console.log("onOpen event have a bug: ", err?.toString())
})
await WebSocket.onMessage({}, (message, err) => {
//do something...
console.log(`received message content: ${message?.data}`)
})
await WebSocket.connect({url: "ws://example.com"})
setTimeout(async () => {
await WebSocket.send({data: "hello world!"})
}, 2000);
await WebSocket.onOpen({id: "chat-websocket"}, (message, err) => {
//do something...
console.log("onOpen event have a bug: ", err?.toString())
})
await WebSocket.connect({url:"ws://example.com/chat", id: "chat-websocket"})
await WebSocket.onMessage({id: "notify-websocket"}, (message, err) => {
//do something...
console.log(`received notify content: ${message?.data}`)
})
await WebSocket.connect({url: "ws://example.com/notify", id: "notify-websocket"})
setTimeout(async () => {
await WebSocket.send({data: "hello world!", id: "chat-websocket"})
await WebSocket.send({data: "connect notify.", id: "notify-websocket"})
}, 2000)
connect(...)close(...)send(...)onOpen(...)onMessage(...)onClose(...)onError(...)connect(options: ConnectionOptions) => Promise<void>
Initiate a WebSocket connection.
| Param | Type | Description |
|---|---|---|
options |
ConnectionOptions |
The options for the connection. |
Since: 0.0.1
close(options?: CloseOptions | undefined) => Promise<void>
Close the connection.
| Param | Type |
|---|---|
options |
CloseOptions |
send(options: SendMessageOptions) => Promise<void>
Send a message.
| Param | Type | Description |
|---|---|---|
options |
SendMessageOptions |
The options for the message. |
Since: 0.0.1
onOpen(options: OnOpenOptions, callback: OnOpenCallback) => Promise<void>
Register a callback to be invoked when the connection is opened.
| Param | Type | Description |
|---|---|---|
options |
OnOpenOptions |
The options for the connection info. |
callback |
OnOpenCallback |
The callback that will be invoked. |
Since: 0.0.3
onMessage(options: OnMessageOptions, callback: OnMessageCallback) => Promise<void>
Register a callback to be invoked when a message is received.
| Param | Type | Description |
|---|---|---|
options |
OnMessageOptions |
The options for the message info. |
callback |
OnMessageCallback |
The callback that will be invoked. |
Since: 0.0.3
onClose(options: OnCloseOptions, callback: OnCloseCallback) => Promise<void>
Register a callback to be invoked when the connection is closed.
| Param | Type | Description |
|---|---|---|
options |
OnCloseOptions |
The options for the connection info. |
callback |
OnCloseCallback |
The callback that will be invoked. |
Since: 0.0.3
onError(options: OnErrorOptions, callback: OnErrorCallback) => Promise<void>
Register a callback to be invoked when an error occurs.
| Param | Type | Description |
|---|---|---|
options |
OnErrorOptions |
The options for the error info. |
callback |
OnErrorCallback |
The callback that will be invoked. |
Since: 0.0.3
| Prop | Type | Description | Since |
|---|---|---|---|
url |
string |
The URL to which to connect; this should be the URL to which the WebSocket server will respond. | 0.0.1 |
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
| Prop | Type | Description |
|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. |
code |
number |
An integer WebSocket connection close code value indicating a reason for closure. Status code as defined by Section 7.4 of RFC 6455. |
reason |
string |
A string explaining the reason for the connection close. |
| Prop | Type | Description | Since |
|---|---|---|---|
data |
string |
The data to send to the server. | 0.0.1 |
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
data |
string |
The data sent by the message emitter. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
code |
number |
An integer WebSocket connection close code value indicating a reason for closure. Status code as defined by Section 7.4 of RFC 6455. | 0.0.1 |
reason |
string |
A string explaining the reason for the connection close. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string |
The ID uniquely identifies a connection; no input is required, if you do not need multiple connections. | 0.0.1 |
error |
string |
The error message. | 0.0.1 |
(message: OnOpenData | null, err?: any): void
(message: OnMessageData | null, err?: any): void
(message: OnCloseData | null, err?: any): void
(message: OnErrorData | null, err?: any): void
$ claude mcp add capacitor-websocket-client \
-- python -m otcore.mcp_server <graph>