tes

Dependencies:   ASyncTicker EthernetInterface WebSocketClient mbed-rtos mbed MbedJSONValue xbee_lib

Committer:
ammanvedi
Date:
Mon Jan 27 21:50:20 2014 +0000
Revision:
0:d73af3f5c81d
Child:
1:6c1df6c9be4d
initial

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ammanvedi 0:d73af3f5c81d 1 #include "mbed.h"
ammanvedi 0:d73af3f5c81d 2 #include "EthernetInterface.h"
ammanvedi 0:d73af3f5c81d 3 #include <stdio.h>
ammanvedi 0:d73af3f5c81d 4 #include <string.h>
ammanvedi 0:d73af3f5c81d 5 #include "Websocket.h"
ammanvedi 0:d73af3f5c81d 6 #include "Updateable.h"
ammanvedi 0:d73af3f5c81d 7 #include "ASyncTicker.h"
ammanvedi 0:d73af3f5c81d 8 #define PORT 80
ammanvedi 0:d73af3f5c81d 9
ammanvedi 0:d73af3f5c81d 10
ammanvedi 0:d73af3f5c81d 11 EthernetInterface ethernet;
ammanvedi 0:d73af3f5c81d 12 Websocket ws("ws://192.168.0.4:8080/");
ammanvedi 0:d73af3f5c81d 13 Ticker pull_ticker;
ammanvedi 0:d73af3f5c81d 14
ammanvedi 0:d73af3f5c81d 15
ammanvedi 0:d73af3f5c81d 16
ammanvedi 0:d73af3f5c81d 17 void pull_updates(){
ammanvedi 0:d73af3f5c81d 18 wait(0.1f);
ammanvedi 0:d73af3f5c81d 19 printf("%s", "hello");
ammanvedi 0:d73af3f5c81d 20
ammanvedi 0:d73af3f5c81d 21 }
ammanvedi 0:d73af3f5c81d 22
ammanvedi 0:d73af3f5c81d 23 int main ()
ammanvedi 0:d73af3f5c81d 24 {
ammanvedi 0:d73af3f5c81d 25
ammanvedi 0:d73af3f5c81d 26 ethernet.init(); // connect with DHCP
ammanvedi 0:d73af3f5c81d 27 int ret_val = ethernet.connect();
ammanvedi 0:d73af3f5c81d 28
ammanvedi 0:d73af3f5c81d 29 if (0 == ret_val) {
ammanvedi 0:d73af3f5c81d 30 printf("IP Address: %s\n\r", ethernet.getIPAddress());
ammanvedi 0:d73af3f5c81d 31 } else {
ammanvedi 0:d73af3f5c81d 32 error("ethernet failed to connect: %d.\n\r", ret_val);
ammanvedi 0:d73af3f5c81d 33 }
ammanvedi 0:d73af3f5c81d 34
ammanvedi 0:d73af3f5c81d 35
ammanvedi 0:d73af3f5c81d 36 ws.connect();
ammanvedi 0:d73af3f5c81d 37
ammanvedi 0:d73af3f5c81d 38 char str[100];
ammanvedi 0:d73af3f5c81d 39 // string with a message
ammanvedi 0:d73af3f5c81d 40 sprintf(str, "PU");
ammanvedi 0:d73af3f5c81d 41 ws.send(str);
ammanvedi 0:d73af3f5c81d 42
ammanvedi 0:d73af3f5c81d 43 // clear the buffer and wait a sec...
ammanvedi 0:d73af3f5c81d 44 memset(str, 0, 100);
ammanvedi 0:d73af3f5c81d 45 wait(0.5f);
ammanvedi 0:d73af3f5c81d 46
ammanvedi 0:d73af3f5c81d 47 // websocket server should echo whatever we sent it
ammanvedi 0:d73af3f5c81d 48 if (ws.read(str)) {
ammanvedi 0:d73af3f5c81d 49 printf("rcv'd: %s\n\r", str);
ammanvedi 0:d73af3f5c81d 50 }
ammanvedi 0:d73af3f5c81d 51 ws.close();
ammanvedi 0:d73af3f5c81d 52 pull_ticker.attach(&pull_updates, 5.0);
ammanvedi 0:d73af3f5c81d 53 while(1){
ammanvedi 0:d73af3f5c81d 54
ammanvedi 0:d73af3f5c81d 55 wait(0.1f);
ammanvedi 0:d73af3f5c81d 56 }
ammanvedi 0:d73af3f5c81d 57
ammanvedi 0:d73af3f5c81d 58 }