1*1c60b9acSAndroid Build Coastguard Worker# lws minimal secure streams binance 2*1c60b9acSAndroid Build Coastguard Worker 3*1c60b9acSAndroid Build Coastguard WorkerThis is a Secure Streams version of minimal-ws-client-binance. 4*1c60b9acSAndroid Build Coastguard Worker 5*1c60b9acSAndroid Build Coastguard Worker"policy.json" contains all the information about endpoints, protocols and 6*1c60b9acSAndroid Build Coastguard Workerconnection validation, tagged by streamtype name. 7*1c60b9acSAndroid Build Coastguard Worker 8*1c60b9acSAndroid Build Coastguard WorkerThe example tries to load it from the cwd, it lives in 9*1c60b9acSAndroid Build Coastguard Worker./minimal-examples/secure-streams/minimal-secure-streams-binance dir, so 10*1c60b9acSAndroid Build Coastguard Workereither run it from there, or copy the policy.json to your cwd. It's also 11*1c60b9acSAndroid Build Coastguard Workerpossible to put the policy json in the code as a string and pass that at 12*1c60b9acSAndroid Build Coastguard Workercontext creation time. 13*1c60b9acSAndroid Build Coastguard Worker 14*1c60b9acSAndroid Build Coastguard WorkerThe secure stream object represents a nailed-up connection that outlives any 15*1c60b9acSAndroid Build Coastguard Workersingle socket connection, and can manage reconnections / retries according to 16*1c60b9acSAndroid Build Coastguard Workerthe policy to keep the connection nailed up automatically. 17*1c60b9acSAndroid Build Coastguard Worker 18*1c60b9acSAndroid Build Coastguard WorkerSecure Streams provides the same simplified communication api without any 19*1c60b9acSAndroid Build Coastguard Workerprotocol dependencies. 20*1c60b9acSAndroid Build Coastguard Worker 21*1c60b9acSAndroid Build Coastguard Worker## build 22*1c60b9acSAndroid Build Coastguard Worker 23*1c60b9acSAndroid Build Coastguard WorkerLws must have been built with `LWS_ROLE_WS=1`, `LWS_WITH_SECURE_STREAMS=1`, and 24*1c60b9acSAndroid Build Coastguard Worker`LWS_WITHOUT_EXTENSIONS=0` 25*1c60b9acSAndroid Build Coastguard Worker 26*1c60b9acSAndroid Build Coastguard Worker``` 27*1c60b9acSAndroid Build Coastguard Worker $ cmake . && make 28*1c60b9acSAndroid Build Coastguard Worker``` 29*1c60b9acSAndroid Build Coastguard Worker 30*1c60b9acSAndroid Build Coastguard Worker## Commandline Options 31*1c60b9acSAndroid Build Coastguard Worker 32*1c60b9acSAndroid Build Coastguard WorkerOption|Meaning 33*1c60b9acSAndroid Build Coastguard Worker---|--- 34*1c60b9acSAndroid Build Coastguard Worker-d|Set logging verbosity 35*1c60b9acSAndroid Build Coastguard Worker 36*1c60b9acSAndroid Build Coastguard Worker## usage 37*1c60b9acSAndroid Build Coastguard Worker 38*1c60b9acSAndroid Build Coastguard Worker``` 39*1c60b9acSAndroid Build Coastguard Worker$ ./bin/lws-minimal-ws-client-binance 40*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8409] U: LWS minimal Secure Streams binance client 41*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8410] N: LWS: 4.2.99-v4.2.0-156-g8f352f65e8, NET CLI SRV H1 H2 WS SS-JSON-POL SSPROX ConMon FLTINJ IPV6-on 42*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8410] N: ++ [495958|wsi|0|pipe] (1) 43*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8411] N: ++ [495958|vh|0|netlink] (1) 44*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8433] N: ++ [495958|vh|1|digicert||-1] (2) 45*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8471] N: ++ [495958|wsiSScli|0|binance] (1) 46*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8471] N: [495958|wsiSScli|0|binance]: lws_ss_check_next_state_ss: (unset) -> LWSSSCS_CREATING 47*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8472] N: [495958|wsiSScli|0|binance]: lws_ss_check_next_state_ss: LWSSSCS_CREATING -> LWSSSCS_CONNECTING 48*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:40:8472] N: ++ [495958|wsicli|0|WS/h1/fstream.binance.com/([495958|wsiSScli|0|binance])] (1) 49*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:41:8802] N: [495958|wsiSScli|0|binance]: lws_ss_check_next_state_ss: LWSSSCS_CONNECTING -> LWSSSCS_CONNECTED 50*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:42:8803] N: sul_hz_cb: price: min: 4669185¢, max: 4672159¢, avg: 4670061¢, (53 prices/s) 51*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:42:8803] N: sul_hz_cb: elatency: min: 131ms, max: 292ms, avg: 154ms, (53 msg/s) 52*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:43:8803] N: sul_hz_cb: price: min: 4669646¢, max: 4672159¢, avg: 4669953¢, (34 prices/s) 53*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:43:8803] N: sul_hz_cb: elatency: min: 130ms, max: 149ms, avg: 133ms, (34 msg/s) 54*1c60b9acSAndroid Build Coastguard Worker[2021/08/15 06:42:44:8804] N: sul_hz_cb: price: min: 4669455¢, max: 4672159¢, avg: 4669904¢, (26 prices/s) 55*1c60b9acSAndroid Build Coastguard Worker... 56*1c60b9acSAndroid Build Coastguard Worker``` 57