コード例 #1
0
        private void UpdateStatus()
        {
            CheckBox cb_Signal      = FindViewById <CheckBox>(Resource.Id.cb_Signal);
            CheckBox cb_DoorClosed  = FindViewById <CheckBox>(Resource.Id.cb_Door);
            CheckBox cb_CarHere     = FindViewById <CheckBox>(Resource.Id.cb_Car);
            CheckBox cb_PhoneHome   = FindViewById <CheckBox>(Resource.Id.cb_PhoneHome);
            Button   btn_SendSignal = FindViewById <Button>(Resource.Id.btn_SendSignal);
            var      client         = new PiServer.Service();

            List <Sensors> sensorList = JsonConvert.DeserializeObject <List <Sensors> >(client.GetSensorStatus());

            RunOnUiThread(() =>
            {
                foreach (var sensor in sensorList)
                {
                    switch (sensor.Sensor)
                    {
                    case "SignalGarageDoor":
                        if (sensor.Status == "Idle")
                        {
                            cb_Signal.Checked      = false;
                            btn_SendSignal.Enabled = true;
                        }
                        else
                        {
                            cb_Signal.Checked      = true;
                            btn_SendSignal.Enabled = false;
                        }

                        break;

                    case "GarageDoor":
                        if (sensor.Status == "Open")
                        {
                            cb_DoorClosed.Checked = false;
                        }
                        else
                        {
                            cb_DoorClosed.Checked = true;
                        }
                        break;

                    case "CarPresent":
                        if (sensor.Status == "Yes")
                        {
                            cb_CarHere.Checked = true;
                        }
                        else
                        {
                            cb_CarHere.Checked = false;
                        }
                        break;

                    default:
                        break;
                    }
                }
                if (client.CheckForPhone())
                {
                    cb_PhoneHome.Checked = true;
                }
                else
                {
                    cb_PhoneHome.Checked = false;
                }
            });
        }
コード例 #2
0
        private void Btn_SendSignal_Click(object sender, EventArgs e)
        {
            var client = new PiServer.Service();

            client.UpdateStatusAsync("SignalGarageDoor", "Sent");
        }