public TestPiFace(IEnumerable<string> args)
{
raspberry.DigitalInputs[7].Connect(buttonTrigger1);
raspberry.DigitalOutputs[7].Connect(switchTest1);
raspberry.DigitalOutputs[0].Connect(switchRelay1);
raspberry.DigitalOutputs[1].Connect(switchRelay2);
raspberry.Connect(audioPlayer);
var popSeq = new Controller.Sequence("Pop Sequence");
popSeq.WhenExecuted
.Execute(instance =>
{
// audioPlayer.PlayEffect("laugh");
instance.WaitFor(TimeSpan.FromSeconds(1));
switchTest1.SetPower(true);
instance.WaitFor(TimeSpan.FromSeconds(5));
switchTest1.SetPower(false);
instance.WaitFor(TimeSpan.FromSeconds(1));
});
this.oscServer.RegisterAction<int>("/OnOff", (msg, data) =>
{
if (data.Any())
{
if (data.First() != 0)
audioPlayer.PlayEffect("Scream");
}
});
buttonPlayFX.ActiveChanged += (sender, e) =>
{
if (e.NewState)
{
Executor.Current.Execute(popSeq);
}
};
buttonPauseFX.ActiveChanged += (sender, e) =>
{
if (e.NewState)
audioPlayer.PauseFX();
};
buttonCueFX.ActiveChanged += (sender, e) =>
{
if (e.NewState)
audioPlayer.CueFX("myFile");
};
buttonResumeFX.ActiveChanged += (sender, e) =>
{
if (e.NewState)
audioPlayer.ResumeFX();
};
buttonPlayBackground.ActiveChanged += (sender, e) =>
{
if (e.NewState)
{
audioPlayer.PlayBackground();
// switchTest1.SetPower(true);
}
};
buttonPauseBackground.ActiveChanged += (sender, e) =>
{
if (e.NewState)
{
audioPlayer.PauseBackground();
// switchTest1.SetPower(false);
}
};
buttonBackgroundLowVolume.ActiveChanged += (sender, e) =>
{
if (e.NewState)
audioPlayer.SetBackgroundVolume(0.5);
};
buttonBackgroundHighVolume.ActiveChanged += (sender, e) =>
{
if (e.NewState)
audioPlayer.SetBackgroundVolume(1.0);
};
buttonBackgroundNext.ActiveChanged += (sender, e) =>
{
if (e.NewState)
audioPlayer.NextBackgroundTrack();
};
buttonTrigger1.ActiveChanged += (sender, e) =>
{
if (e.NewState)
{
Executor.Current.Execute(popSeq);
}
};
buttonTriggerRelay1.ActiveChanged += (sender, e) =>
{
switchRelay1.SetPower(e.NewState);
};
buttonTriggerRelay2.ActiveChanged += (sender, e) =>
{
switchRelay2.SetPower(e.NewState);
};
}