Esempio n. 1
0
        void Face_ValueChanged(object sender, StateObjectChangedEventArgs e)
        {
            if (((string)e.NewState.DynamicValue) == "Unknown")
            {
                PackageHost.WriteWarn("Warning unknown face detected");

                PackageHost.CreateScope("PushBullet").Proxy.SendPush(
                    new
                    {
                        Title = "Warning",
                        Message = "BBC report an unknown face "
                    }
                    );
            }
            else
            {
                PackageHost.WriteInfo("{0} detected", ((string)e.NewState.DynamicValue));

                PackageHost.CreateScope("PushBullet").Proxy.SendPush(
                    new
                    {
                        Title = "BBC report",
                        Message = ((string)e.NewState.DynamicValue) + " detected"
                    }
                    );
            }
        }
Esempio n. 2
0
        private void ParametresServeur_ValueChanged(object sender, StateObjectChangedEventArgs e)
        {
            HaveToWait = false;
            StopWait.Cancel();
            PackageHost.WriteInfo("Changement de param");
            if (bool.Parse(e.NewState.DynamicValue.IsActive.ToString()))
            {
                PackageHost.WriteInfo("Le réveil est maintenant actif");
                if (bool.Parse(e.NewState.DynamicValue.ManualMode.ToString()))//Si en mode manuel
                {
                    PackageHost.WriteInfo("Configuration changée : Réveil en mode manuel ");
                    ModeManuel();
                }

                else //Si en mode automatique calendar
                {
                    PackageHost.WriteInfo("Configuration changée : Réveil en mode auto ");
                    ModeAuto();
                }
            }
            else
            {
                PackageHost.WriteInfo("Le réveil n'est plus actif :(");
            }
        }
Esempio n. 3
0
        private void OnValueChanged(object sender, StateObjectChangedEventArgs e)
        {
            //récupération des nouvelles valeurs
            PackageHost.WriteInfo("values are : {0}", this.PushValues.DynamicValue);
            latitude  = e.NewState.DynamicValue.Latitude;
            longitude = e.NewState.DynamicValue.Longitude;
            login     = e.NewState.DynamicValue.Login;
            pass      = e.NewState.DynamicValue.Pass;
            myGuid    = Auth(pass, login, latitude, longitude);
            String myGuidString = myGuid.ToString();

            PackageHost.WriteInfo("generated token : {0}", myGuid);
            PackageHost.WriteInfo("Sending generated token");

            if (myGuid != Guid.Empty) //si token valide généré par Auth, envoi à la Raspberry
            {
                //communication avec la Raspberry
                MessageScope.Create("ConstellationPackagePython2").OnSagaResponse((response) =>
                {
                    //premier envoi du token, récupération de ce même token
                    PackageHost.WriteInfo("Sending generated token");
                    PackageHost.WriteInfo("Raspberry response : {0}", response);
                    String responseC = myGuidString + "fr42kilj8";   //deuxième envoi du token + clé de sécurite
                    PackageHost.WriteInfo(" Sending token + key ");
                    PackageHost.SendMessage(MessageScope.Create("ConstellationPackagePython2"), "reponse", responseC);
                }).GetProxy().question <String>(myGuidString);
            }
        }
Esempio n. 4
0
 private void TemperatureHumidity_ValueChanged(object sender, StateObjectChangedEventArgs e)
 {
     if (e.NewState.DynamicValue.Temperature > PackageHost.GetSettingValue <Int32>("seuil"))
     {
         PackageHost.WriteWarn("Attention température à {0}°C", TemperatureHumidity.DynamicValue.Temperature);
     }
 }
Esempio n. 5
0
        void Face_ValueChanged(object sender, StateObjectChangedEventArgs e)
        {
            if (((string)e.NewState.DynamicValue) == "Unknown")
            {
                PackageHost.WriteWarn("Warning unknown face detected");

                PackageHost.CreateScope("PushBullet").Proxy.SendPush(
                    new
                {
                    Title   = "Warning",
                    Message = "BBC report an unknown face "
                }
                    );
            }
            else
            {
                PackageHost.WriteInfo("{0} detected", ((string)e.NewState.DynamicValue));

                PackageHost.CreateScope("PushBullet").Proxy.SendPush(
                    new
                {
                    Title   = "BBC report",
                    Message = ((string)e.NewState.DynamicValue) + " detected"
                }
                    );
            }
        }
Esempio n. 6
0
 private void Alarm_ValueChanged(object sender, StateObjectChangedEventArgs e)
 {
     HaveToWait = false;
     StopWait.Cancel();
     if (e.NewState.DynamicValue.AlarmHour >= 0 && !(bool.Parse(e.NewState.DynamicValue.IsRinging.ToString())))
     {
         HaveToWait = true;
         PackageHost.WriteInfo("L'alarme sonnera à {0}:{1}", e.NewState.DynamicValue.AlarmHour.ToString("00"), e.NewState.DynamicValue.AlarmMinutes.ToString("00"));
         PackageHost.WriteInfo("Goto wait()");
         Wait();
     }
 }
 /// <summary>
 /// Handles the ValueChanged event of the OutdoorSensor control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="StateObjectChangedEventArgs"/> instance containing the event data.</param>
 /// <exception cref="NotImplementedException"></exception>
 private void OutdoorSensor_ValueChanged(object sender, StateObjectChangedEventArgs e)
 {
     //If the outdoor sensor detect the necklace and the pet was inside
     if ((bool)e.NewState.DynamicValue.Etat && (bool)this.AnimalPresence.DynamicValue.Etat)
     {
         //If the flap is closed
         if (!(bool)this.Flap.DynamicValue.Etat)
         {
             //Nothing to do
         }
         else
         {
             //Close the flap
             PackageHost.CreateMessageProxy("Chatiere").CloseFlap();
             PackageHost.CreateMessageProxy("Chatiere").StateObjectAnimalPresence_ChangeValue(this.AnimalPresence.Value.Name, false);
         }
     }
     //If the outdoor sensor detect the necklace and the pet was outside
     else if ((bool)e.NewState.DynamicValue.Etat && !(bool)this.AnimalPresence.DynamicValue.Etat)
     {
         if (!(bool)this.Flap.DynamicValue.Etat)
         {
             if ((bool)this.LockFlap.DynamicValue.Etat)
             {
                 //Do not open the flap
             }
             else
             {
                 if (!(bool)this.Flap.DynamicValue.Etat)
                 {
                     PackageHost.CreateMessageProxy("Chatiere").OpenFlap();
                     if (DayPeriod())
                     {
                         PackageHost.CreateMessageProxy("Chatiere").SwitchOnLed();
                     }
                     else
                     {
                         //Nothing to do
                     }
                 }
                 else
                 {
                     //Nothing to do
                 }
             }
         }
         else
         {
             //Nothing to do
         }
     }
 }
        /// <summary>
        /// Handles the ValueChanged event of the Flap control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="StateObjectChangedEventArgs"/> instance containing the event data.</param>
        /// <exception cref="NotImplementedException"></exception>
        private async void Flap_ValueChanged(object sender, StateObjectChangedEventArgs e)
        {
            //If the flap is opened
            if ((bool)e.NewState.DynamicValue.Etat)
            {
                await Task.Delay(10000);

                if ((bool)this.Flap.DynamicValue.Etat)
                {
                    PackageHost.CreateMessageProxy("Chatiere").CloseFlap();
                }
            }
            //Else, nothing to do
        }
Esempio n. 9
0
        private void Events_ValueChanged(object sender, StateObjectChangedEventArgs e)
        {
            foreach (var event_ in e.NewState.DynamicValue)
            {
                //PackageHost.WriteInfo("{0} // {1}", DateTime.Parse(event_.DateDebut.ToString()) == DateTime.Parse(Alarm.DynamicValue.TimeFirstEvent.ToString()), TimeSpan.Parse(event_.TimeTrafficFromHouse.ToString()) != TimeSpan.Parse(Alarm.DynamicValue.TimeTraffic.ToString()));
                if (DateTime.Parse(event_.DateDebut.ToString()) > DateTime.Now && TimeSpan.Parse(event_.TimeTrafficFromHouse.ToString()) != TimeSpan.Parse(Alarm.DynamicValue.TimeTraffic.ToString()))
                {
                    // PackageHost.WriteInfo("{0},{1}", TimeSpan.Parse(event_.TimeTrafficFromHouse.ToString()), TimeSpan.Parse(Alarm.Value.DynamicValue.TimeTraffic.ToString()));
                    TimeSpan diff_traffic = TimeSpan.Parse(event_.TimeTrafficFromHouse.ToString()) - TimeSpan.Parse(Alarm.Value.DynamicValue.TimeTraffic.ToString()); //Nouveau temps - ancien temps
                    PackageHost.WriteInfo("Diff traffic {0}", diff_traffic);
                    TimeSpan BeforeAlarm = (DateTime.Parse(Alarm.DynamicValue.TimeFirstEvent.ToString()) - new TimeSpan(0, int.Parse(PackageHost.GetSettingValue("TpsPrep")), 0) - TimeSpan.Parse(event_.TimeTrafficFromHouse.ToString())).Subtract(DateTime.Now);
                    PackageHost.WriteDebug("Before alarm {0}", BeforeAlarm);
                    if (BeforeAlarm > diff_traffic)//Si le temps de trafic augmente on réveille plus tôt sans dépasser l'heure
                    {
                        Alarme newAlarm = new Alarme();
                        newAlarm.AlarmMinutes = int.Parse(Alarm.Value.DynamicValue.AlarmMinutes.ToString()) - diff_traffic.Minutes;
                        PackageHost.WriteDebug("AlarmMinutes {0}", newAlarm.AlarmMinutes);
                        if (newAlarm.AlarmMinutes > 60)
                        {
                            newAlarm.AlarmHour    = (int.Parse(Alarm.Value.DynamicValue.AlarmHour.ToString()) - diff_traffic.Hours + newAlarm.AlarmMinutes / 60) % 24;
                            newAlarm.AlarmMinutes = newAlarm.AlarmMinutes % 60;
                        }
                        if (newAlarm.AlarmMinutes < 0)
                        {
                            newAlarm.AlarmHour    = (int.Parse(Alarm.Value.DynamicValue.AlarmHour.ToString()) - diff_traffic.Hours + (newAlarm.AlarmMinutes - 60 / 60)) % 24;
                            newAlarm.AlarmMinutes = newAlarm.AlarmMinutes % 60;
                        }
                        else
                        {
                            newAlarm.AlarmHour = (int.Parse(Alarm.Value.DynamicValue.AlarmHour.ToString()) - diff_traffic.Hours) % 24;
                        }

                        newAlarm.IsRinging = false;
                        PackageHost.WriteDebug("Is ringing : {0}", newAlarm.IsRinging);
                        newAlarm.TimeFirstEvent = event_.DateDebut.ToString();
                        PackageHost.WriteDebug("Time 1st event {0}", newAlarm.TimeFirstEvent);
                        newAlarm.TimeTraffic = event_.TimeTrafficFromHouse.ToString();
                        PackageHost.WriteDebug("New time traffic {0}", newAlarm.TimeTraffic);
                        ChangeAlarm(newAlarm);
                        return;
                    }
                    return;
                }
            }
        }
 private void Temperature1_ValueChanged(object sender, StateObjectChangedEventArgs e)
 {
     PackageHost.WriteInfo("La température de ton CPU est de {0} °C", this.Temperature1.DynamicValue.Value);
 }