|
Zephyr Project API 4.0.0
A Scalable Open Source RTOS
|
Websocket API. More...
#include <zephyr/kernel.h>#include <zephyr/net/net_ip.h>#include <zephyr/net/http/parser.h>#include <zephyr/net/http/client.h>Go to the source code of this file.
Data Structures | |
| struct | websocket_request |
| Websocket client connection request. More... | |
Macros | |
| #define | WEBSOCKET_FLAG_FINAL 0x00000001 |
| Message type values. | |
| #define | WEBSOCKET_FLAG_TEXT 0x00000002 |
| Textual data | |
| #define | WEBSOCKET_FLAG_BINARY 0x00000004 |
| Binary data | |
| #define | WEBSOCKET_FLAG_CLOSE 0x00000008 |
| Closing connection. | |
| #define | WEBSOCKET_FLAG_PING 0x00000010 |
| Ping message | |
| #define | WEBSOCKET_FLAG_PONG 0x00000020 |
| Pong message | |
Typedefs | |
| typedef int(* | websocket_connect_cb_t) (int ws_sock, struct http_request *req, void *user_data) |
| Callback called after Websocket connection is established. | |
Enumerations | |
| enum | websocket_opcode { WEBSOCKET_OPCODE_CONTINUE = 0x00 , WEBSOCKET_OPCODE_DATA_TEXT = 0x01 , WEBSOCKET_OPCODE_DATA_BINARY = 0x02 , WEBSOCKET_OPCODE_CLOSE = 0x08 , WEBSOCKET_OPCODE_PING = 0x09 , WEBSOCKET_OPCODE_PONG = 0x0A } |
| Websocket option codes. More... | |
Functions | |
| int | websocket_connect (int http_sock, struct websocket_request *req, int32_t timeout, void *user_data) |
| Connect to a server that provides Websocket service. | |
| int | websocket_send_msg (int ws_sock, const uint8_t *payload, size_t payload_len, enum websocket_opcode opcode, bool mask, bool final, int32_t timeout) |
| Send websocket msg to peer. | |
| int | websocket_recv_msg (int ws_sock, uint8_t *buf, size_t buf_len, uint32_t *message_type, uint64_t *remaining, int32_t timeout) |
| Receive websocket msg from peer. | |
| int | websocket_disconnect (int ws_sock) |
| Close websocket. | |
| int | websocket_register (int http_sock, uint8_t *recv_buf, size_t recv_buf_len) |
| Register a socket as websocket. | |
| int | websocket_unregister (int ws_sock) |
| Unregister a websocket. | |
Websocket API.
An API for applications to setup websocket connections