void Campfire::ListenWorker() { void******* m_pRest = NULL;//This is a thread; so don't use m_pRest! std::string strAddress = GetStreamingURL(m_nRoomNum, m_bUseSSL); while( !m_bExit ) { RestClientFactory factory; RestClient* pClient = factory.SetUsernamePassword(m_strAuthCode, "x").SetVerbosity(false).CreateRestClient(); pClient->SetCallback(Campfire::listen_callback); pClient->SetUserData((void*)this); RestClient::response r = pClient->get(strAddress); cout << "Finished Listening!!!" << r.code << endl; SAFE_DELETE(pClient);//Done with this so no need to revert the callback/userdata if( !m_bExit ) { #ifdef _WIN32 Sleep(200); #else usleep(200*1000); #endif } } }
const char* SwitchScheduler::getAstronomyDataResponse() { Uri apiUri = Uri::Parse(configuration->astronomyApiUrl); RestClient client = RestClient(apiUri.Host.c_str()); String response = ""; int statusCode = client.get(apiUri.Path.c_str(), &response); if (statusCode == 200) { DEBUG_PRINT("Successfully retrieved JSON response\n"); return response.c_str(); } else { DEBUG_PRINT("Failed to retrieve sunset data with status: "); DEBUG_PRINT(statusCode); DEBUG_PRINT("\n"); return ""; } }