@Override
 protected String doInBackground(Boolean... params) {
   Integer redLevel = uiMan.getRed();
   Integer greenLevel = uiMan.getGreen();
   Integer blueLevel = uiMan.getBlue();
   Integer trans = uiMan.getTransition();
   Integer time = uiMan.getTime();
   if (!params[0]) trans = -1;
   Log.d(
       "LightRequest",
       String.format(
           "R:%d, G:%d, B:%d, Trans:%d, Time:%d", redLevel, greenLevel, blueLevel, trans, time));
   try {
     HttpClient httpclient = new DefaultHttpClient();
     HttpPost httppost = new HttpPost(serviceURI);
     List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
     nameValuePairs.add(new BasicNameValuePair("r", redLevel.toString()));
     nameValuePairs.add(new BasicNameValuePair("g", greenLevel.toString()));
     nameValuePairs.add(new BasicNameValuePair("b", blueLevel.toString()));
     nameValuePairs.add(new BasicNameValuePair("trans", trans.toString()));
     nameValuePairs.add(new BasicNameValuePair("time", time.toString()));
     httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
     HttpResponse response = httpclient.execute(httppost);
     HttpEntity entity = response.getEntity();
     if (entity != null) {
       InputStream instream = entity.getContent();
       StringBuilder sb = new StringBuilder();
       String line;
       BufferedReader reader = new BufferedReader(new InputStreamReader(instream, "UTF-8"));
       while ((line = reader.readLine()) != null) {
         sb.append(line).append("\n");
       }
       String result = sb.toString();
       return result;
     }
   } catch (ClientProtocolException e) {
     Log.e(e.getClass().toString(), e.getMessage());
   } catch (IOException e) {
     Log.e(e.getClass().toString(), e.getMessage());
   } catch (IllegalArgumentException e) {
     Log.e(e.getClass().toString(), e.getMessage());
   } catch (Exception e) {
     Log.e(e.getClass().toString(), e.getMessage());
   }
   return "null";
 }