/*---------------------------------------------------------------------------*/ PROCESS_THREAD(wget_process, ev, data) { PROCESS_BEGIN(); PRINTF("wget: fetching %s\n", file); #if STATS fetch_counter = 0; fetch_started = clock_time(); #endif /* STATS */ LEDS_ON(LEDS_YELLOW); if(webclient_get(server, port, file) == 0) { PRINTF("wget: failed to connect\n"); LEDS_OFF(LEDS_YELLOW); fetch_running = 0; call_done(WGET_CONNECT_FAILED); } else { while(fetch_running) { PROCESS_WAIT_EVENT(); if(ev == tcpip_event) { webclient_appcall(data); } } } PROCESS_END(); }
/*---------------------------------------------------------------------------*/ void webclient_datahandler(char *data, uint16_t len) { if(len == 0) { #if STATS clock_time_t elapsed; elapsed = clock_time() - fetch_started; PRINTF("wget: recv %lu bytes during %lu sec (", fetch_counter, (elapsed / CLOCK_SECOND)); #if CLOCK_SECOND == 128 PRINTF("%lu.%02lus, ", (unsigned long)elapsed >> 7, (unsigned long)((elapsed & 127) * 100) / 128); PRINTF("%lu byte/sec ", (fetch_counter * 128L) / elapsed); #endif PRINTF("%lu tick): ", (unsigned long)elapsed); if(elapsed > CLOCK_SECOND) { PRINTF("%lu", fetch_counter / (elapsed / CLOCK_SECOND)); } else { PRINTF("-"); } PRINTF(" byte/sec\n"); #else /* STATS */ PRINTF("wget: complete\n"); #endif /* STATS */ fetch_running = 0; call_done(WGET_OK); LEDS_OFF(LEDS_RED | LEDS_YELLOW); } else {
void new_callback(RemoteStoragePublishFileResult_t * result, bool fail) { if (result->m_eResult != k_EResultOK || fail) { error = "Error: " + number_to_string(result->m_eResult); call_fail(); return; } call_done(); }