コード例 #1
0
ファイル: coap_server.c プロジェクト: cesanta/mongoose
int main(void) {
  struct mg_mgr mgr;
  struct mg_connection *nc;

  signal(SIGTERM, signal_handler);
  signal(SIGINT, signal_handler);

  mg_mgr_init(&mgr, 0);

  nc = mg_bind(&mgr, s_default_address, coap_handler);
  if (nc == NULL) {
    printf("Unable to start listener at %s\n", s_default_address);
    return -1;
  }

  printf("Listening for CoAP messages at %s\n", s_default_address);

  mg_set_protocol_coap(nc);

  while (!s_sig_received) {
    mg_mgr_poll(&mgr, 1000000);
  }

  printf("Exiting on signal %d\n", s_sig_received);

  mg_mgr_free(&mgr);
  return 0;
}
コード例 #2
0
ファイル: coap_client.c プロジェクト: 12019/mongoose
int main(int argc, char *argv[]) {
  struct mg_mgr mgr;
  struct mg_connection *nc;
  char *address = s_default_address;

  if (argc > 1) {
    address = argv[1];
  }

  printf("Using %s as CoAP server\n", address);

  mg_mgr_init(&mgr, 0);

  nc = mg_connect(&mgr, address, coap_handler);
  if (nc == NULL) {
    printf("Unable to connect to %s\n", address);
    return -1;
  }

  mg_set_protocol_coap(nc);

  while (!s_time_to_exit) {
    mg_mgr_poll(&mgr, 1000000);
  }

  mg_mgr_free(&mgr);

  return 0;
}
コード例 #3
0
int main(int argc, char* argv[]) {
  #ifdef SENSORTRACER
  printf("sensortracer\n");
  sensortracer_init();
  #endif
  char *address = s_default_address;

  if (argc > 1) {
    address = argv[1];
  }

  printf("Using %s as CoAP server\n", address); 

	while(1) {
		struct mg_mgr mgr;
		struct mg_connection *nc;
		memset(&mgr, 0, sizeof(struct mg_mgr));
		mg_mgr_init(&mgr, 0);

		nc = mg_connect(&mgr, address, coap_handler);
		if (nc == NULL) {
			printf("Unable to connect to %s\n", address);
			return -1;
		}

		mg_set_protocol_coap(nc);

		while (!s_time_to_exit) {
			mg_mgr_poll(&mgr, 1);
		}

		mg_mgr_free(&mgr);
		sleep(3);
		s_time_to_exit = 0;
  }
  
  return 0;
}