public static void Main(string[] args) { Console.WriteLine(DateTime.Now.TimeOfDay); Console.WriteLine("DSS invoked...##"); var reminderHandler = new ReminderHandler(); var motionHandler = new MotionEventHandler(); var fallEventHandler = new FallDetectionHandler(); var measurementHandler = new MeasurementHandler(); var url = "amqp://*****:*****@cami-rabbitmq:5672/cami"; try { var rmqEvents = new RmqExchange(url, "events", "event.*", (json) => { reminderHandler.Handle(json); motionHandler.Handle(json); fallEventHandler.Handle(json); }); var rmqMeasurements = new RmqExchange(url, "measurements", "measurement.*", (json) => { measurementHandler.Handle(json); }); } catch (Exception ex) { Console.WriteLine("Something went wrong with the rmq exchange: " + ex); } Console.WriteLine("RMQ binding done!"); while (true) { } Console.WriteLine("Exiting DSS..."); }
/// <summary>Constructs a new instance.</summary> /// <param name="socketNumber">The socket that this module is plugged in to.</param> public PIR(int socketNumber) { var socket = Socket.GetSocket(socketNumber, true, this, null); this.onMotionSensed = this.OnMotionSensed; this.interrupt = GTI.InterruptInputFactory.Create(socket, GT.Socket.Pin.Three, GTI.GlitchFilterMode.On, GTI.ResistorMode.PullUp, GTI.InterruptMode.RisingAndFallingEdge, this); this.interrupt.Interrupt += (a, b) => { if (!b) { this.OnMotionSensed(this, null); } }; }