u-blox modem Websockets client test
Dependencies: UbloxUSBModem WebSocketClient mbed
websocketstest.cpp@1:46a74633a5cc, 2013-10-22 (annotated)
- Committer:
- mbed_official
- Date:
- Tue Oct 22 10:17:11 2013 +0000
- Revision:
- 1:46a74633a5cc
- Parent:
- 0:f1ad9e7a8fe2
Changed buffer size in test, modified overall structure to match the examples in the official repository
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mbed_official | 0:f1ad9e7a8fe2 | 1 | |
mbed_official | 0:f1ad9e7a8fe2 | 2 | #include "websocketstest.h" |
mbed_official | 0:f1ad9e7a8fe2 | 3 | #include "Websocket.h" |
mbed_official | 0:f1ad9e7a8fe2 | 4 | |
mbed_official | 0:f1ad9e7a8fe2 | 5 | void websocketstest(CellularModem& modem, const char* apn, const char* username, const char* password) |
mbed_official | 0:f1ad9e7a8fe2 | 6 | { |
mbed_official | 1:46a74633a5cc | 7 | char msg[2048] = {0}; |
mbed_official | 0:f1ad9e7a8fe2 | 8 | Timer t; |
mbed_official | 0:f1ad9e7a8fe2 | 9 | |
mbed_official | 0:f1ad9e7a8fe2 | 10 | t.start(); |
mbed_official | 0:f1ad9e7a8fe2 | 11 | modem.power(true); |
mbed_official | 0:f1ad9e7a8fe2 | 12 | Thread::wait(1000); |
mbed_official | 1:46a74633a5cc | 13 | int ret = modem.connect(apn, username, password); |
mbed_official | 0:f1ad9e7a8fe2 | 14 | if(ret) |
mbed_official | 0:f1ad9e7a8fe2 | 15 | { |
mbed_official | 0:f1ad9e7a8fe2 | 16 | error("Modem connect failed: %s line %d\n", __FILE__ , __LINE__); |
mbed_official | 0:f1ad9e7a8fe2 | 17 | } |
mbed_official | 0:f1ad9e7a8fe2 | 18 | |
mbed_official | 0:f1ad9e7a8fe2 | 19 | // See the output on http://sockets.mbed.org/sg_test/viewer |
mbed_official | 0:f1ad9e7a8fe2 | 20 | Websocket ws("ws://sockets.mbed.org:443/ws/sg_test/rw"); |
mbed_official | 0:f1ad9e7a8fe2 | 21 | |
mbed_official | 0:f1ad9e7a8fe2 | 22 | for(int i=0; i<0x7fffffff; ++i) |
mbed_official | 0:f1ad9e7a8fe2 | 23 | { |
mbed_official | 0:f1ad9e7a8fe2 | 24 | ws.connect(); |
mbed_official | 0:f1ad9e7a8fe2 | 25 | // create json string with acc/tmp data |
mbed_official | 0:f1ad9e7a8fe2 | 26 | sprintf(msg, "Testing mbed Websockets Loop: %d", i); |
mbed_official | 0:f1ad9e7a8fe2 | 27 | ws.send(msg); |
mbed_official | 0:f1ad9e7a8fe2 | 28 | wait(0.5f); |
mbed_official | 0:f1ad9e7a8fe2 | 29 | memset(msg, 0, 2048); |
mbed_official | 0:f1ad9e7a8fe2 | 30 | |
mbed_official | 0:f1ad9e7a8fe2 | 31 | if (ws.read(msg)) |
mbed_official | 0:f1ad9e7a8fe2 | 32 | { |
mbed_official | 0:f1ad9e7a8fe2 | 33 | printf("rcv: %s\r\n", msg); |
mbed_official | 0:f1ad9e7a8fe2 | 34 | } |
mbed_official | 0:f1ad9e7a8fe2 | 35 | else |
mbed_official | 0:f1ad9e7a8fe2 | 36 | { |
mbed_official | 0:f1ad9e7a8fe2 | 37 | printf("Loop %d ws.read() returns 0\n \t %s, line %d @ %6.2f seconds\n", i, __FILE__, __LINE__, t.read()); |
mbed_official | 0:f1ad9e7a8fe2 | 38 | wait(5.0f); |
mbed_official | 0:f1ad9e7a8fe2 | 39 | } |
mbed_official | 0:f1ad9e7a8fe2 | 40 | ws.close(); |
mbed_official | 0:f1ad9e7a8fe2 | 41 | } |
mbed_official | 0:f1ad9e7a8fe2 | 42 | |
mbed_official | 0:f1ad9e7a8fe2 | 43 | t.stop(); |
mbed_official | 0:f1ad9e7a8fe2 | 44 | modem.disconnect(); |
mbed_official | 0:f1ad9e7a8fe2 | 45 | modem.power(false); |
mbed_official | 0:f1ad9e7a8fe2 | 46 | |
mbed_official | 0:f1ad9e7a8fe2 | 47 | puts("Powered off Test Complete"); |
mbed_official | 0:f1ad9e7a8fe2 | 48 | } |