xref: /aosp_15_r20/external/libwebsockets/minimal-examples/client-server/minimal-ws-proxy/README.md (revision 1c60b9aca93fdbc9b5f19b2d2194c91294b22281)
1*1c60b9acSAndroid Build Coastguard Worker# lws minimal ws proxy
2*1c60b9acSAndroid Build Coastguard Worker
3*1c60b9acSAndroid Build Coastguard Worker## Build
4*1c60b9acSAndroid Build Coastguard Worker
5*1c60b9acSAndroid Build Coastguard Worker```
6*1c60b9acSAndroid Build Coastguard Worker $ cmake . && make
7*1c60b9acSAndroid Build Coastguard Worker```
8*1c60b9acSAndroid Build Coastguard Worker
9*1c60b9acSAndroid Build Coastguard Worker## Description
10*1c60b9acSAndroid Build Coastguard Worker
11*1c60b9acSAndroid Build Coastguard WorkerThis is the same as minimal-ws-server-ring, but with the
12*1c60b9acSAndroid Build Coastguard Workerinclusion of a ws client connection to https://libwebsockets.org
13*1c60b9acSAndroid Build Coastguard Workerusing the dumb-increment protocol feeding the ringbuffer.
14*1c60b9acSAndroid Build Coastguard Worker
15*1c60b9acSAndroid Build Coastguard WorkerEach client that connect to this server receives the content that
16*1c60b9acSAndroid Build Coastguard Workerhad arrived on the client connection feeding the ringbuffer proxied
17*1c60b9acSAndroid Build Coastguard Workerto their browser window over a ws connection.
18*1c60b9acSAndroid Build Coastguard Worker
19*1c60b9acSAndroid Build Coastguard Worker## Usage
20*1c60b9acSAndroid Build Coastguard Worker
21*1c60b9acSAndroid Build Coastguard Worker```
22*1c60b9acSAndroid Build Coastguard Worker $ ./lws-minimal-ws-proxy
23*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:10:6938] USER: LWS minimal ws proxy | visit http://localhost:7681
24*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:10:6955] NOTICE: Creating Vhost 'default' port 7681, 2 protocols, IPv6 off
25*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:10:6955] NOTICE:  Using non-SSL mode
26*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:10:7035] NOTICE: created client ssl context for default
27*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:11:7047] NOTICE: binding to lws-minimal-proxy
28*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:11:7047] NOTICE: lws_client_connect_2: 0x872e60: address libwebsockets.org
29*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:12:3282] NOTICE: lws_client_connect_2: 0x872e60: address libwebsockets.org
30*1c60b9acSAndroid Build Coastguard Worker[2018/03/14 17:50:13:8195] USER: callback_minimal: established
31*1c60b9acSAndroid Build Coastguard Worker```
32*1c60b9acSAndroid Build Coastguard Worker
33*1c60b9acSAndroid Build Coastguard WorkerVisit http://localhost:7681 on multiple browser windows
34*1c60b9acSAndroid Build Coastguard Worker
35*1c60b9acSAndroid Build Coastguard WorkerData received on the remote wss connection is copied to all open browser windows.
36*1c60b9acSAndroid Build Coastguard Worker
37*1c60b9acSAndroid Build Coastguard WorkerA ringbuffer holds up to 8 lines of text in the server, and the browser shows
38*1c60b9acSAndroid Build Coastguard Workerthe last 20 lines of received text.
39