Пример #1
0
        void ParseDeviceMessage(Commands.RecordMessage cmd)
        {
            Console.WriteLine($"{this.PersistenceId} -- COMMAND: RecordMessage");
            var messageEvent = new Events.MessageReceived(cmd.IMEI, cmd.JSON);

            Persist(messageEvent, evt =>
            {
                this.Entity.Apply(evt);
                Context.System.EventStream.Publish(messageEvent);
                CheckForSnapshot();
            });

            var bdd = BreachDetectorData.FromJson(cmd.JSON);

            foreach (var l in bdd.Log)
            {
                if (l.Supdat.IsAlert())
                {
                    Persist(new Events.AlertReceveived(this.Entity.IMEI, l.ToJson()), evt =>
                    {
                        Console.WriteLine($"{this.PersistenceId} -- *ALERT*: {l.Errdesc}");
                        Context.System.EventStream.Publish(evt);
                        CheckForSnapshot();
                    });
                }
            }
        }
Пример #2
0
            public void Apply(Events.MessageReceived evt)
            {
                if (this.Messages == null)
                {
                    this.Messages = new List <BreachDetectorData>();
                }
                var bdd = evt.GetMessage();

                this.Messages.Add(bdd);
            }