nes-proj/examples/rime/example-polite.c

51 lines
1.2 KiB
C
Raw Normal View History

2007-05-22 21:04:00 +00:00
#include "net/rime/polite.h"
#include "contiki.h"
#include <stdio.h>
/*---------------------------------------------------------------------------*/
PROCESS(example_polite_process, "");
AUTOSTART_PROCESSES(&example_polite_process);
/*---------------------------------------------------------------------------*/
static void
2007-05-22 21:04:00 +00:00
recv(struct polite_conn *c)
{
printf("recv '%s'\n", (char *)packetbuf_dataptr());
}
static void
2007-05-22 21:04:00 +00:00
sent(struct polite_conn *c)
{
printf("sent\n");
}
static void
2007-05-22 21:04:00 +00:00
dropped(struct polite_conn *c)
{
printf("dropped\n");
}
2007-05-22 21:04:00 +00:00
static const struct polite_callbacks callbacks = { recv, sent, dropped };
/*---------------------------------------------------------------------------*/
PROCESS_THREAD(example_polite_process, ev, data)
{
2007-05-22 21:04:00 +00:00
static struct polite_conn c;
2007-05-22 21:04:00 +00:00
PROCESS_EXITHANDLER(polite_close(&c));
PROCESS_BEGIN();
2007-05-22 21:04:00 +00:00
polite_open(&c, 128, &callbacks);
while(1) {
static struct etimer et;
etimer_set(&et, CLOCK_SECOND * 4);
PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));
packetbuf_copyfrom("Hej", 4);
2007-05-22 21:04:00 +00:00
polite_send(&c, CLOCK_SECOND * 4, 4);
}
PROCESS_END();
}
/*---------------------------------------------------------------------------*/