public async Task CombineAndSend() { if (this == null || this.Count < 2) { return; } if (!CheckIsValid()) { Clear(); LogTo.Error($"Failed to send the event backlog"); } var firstEvent = this.First(); var lastEvent = this.Last(); IElement firstElement = firstEvent.Value.element; IElement lastElement = lastEvent.Value.element; DateTime start = firstEvent.Key; DateTime end = lastEvent.Key; int childrenDelta = lastEvent.Value.ChildrenCount - firstEvent.Value.ChildrenCount; string initialContent = firstEvent.Value.content.GetHtmlInnerText(); string finalContent = lastEvent.Value.content.GetHtmlInnerText(); string diff = DiffEx.CreateDiffList(initialContent, finalContent).Jsonify(); var awEvent = new AWEvent(lastElement, start, end, diff, childrenDelta); await AWService.SendEvent(awEvent); }
public async Task SendEvent(AWEvent Event) { if (!this.Connected || Event == null) { return; } await SendHttpPostRequestAsync(this.EventApiURL, JsonConvert.SerializeObject(Event)); }