public AppleToastNotification(NotificationSourceData source, NotificationAttributeCollection attributes) { NotificationSource = source; if (attributes.ContainsKey(NotificationAttributeID.Title)) { this.Title = attributes[NotificationAttributeID.Title]; } else { this.Title = "Apple Notification"; } if (attributes.ContainsKey(NotificationAttributeID.Message)) { this.Message = attributes[NotificationAttributeID.Message]; } else { this.Message = "New incoming notification"; } if (source.EventFlags.HasFlag(EventFlags.EventFlagPositiveAction)) { if (attributes.ContainsKey(NotificationAttributeID.PositiveActionLabel)) { this.PositiveActionLabel = attributes[NotificationAttributeID.PositiveActionLabel]; } else { this.PositiveActionLabel = "Positive"; } } if (source.EventFlags.HasFlag(EventFlags.EventFlagNegativeAction)) { if (attributes.ContainsKey(NotificationAttributeID.NegativeActionLabel)) { this.NegativeActionLabel = attributes[NotificationAttributeID.NegativeActionLabel]; } else { this.NegativeActionLabel = "Negative"; } } }
private void _DataSource_NotificationAttributesReceived(NotificationAttributeCollection obj) { // Is it a known notification? if (this.Notifications.ContainsKey(obj.NotificationUID) == false) { return; } //ApplicationAttributeCollection applicationAttributes; //if (attributes.ContainsKey(NotificationAttributeID.AppIdentifier)) //{ // string appIdentifier = attributes[NotificationAttributeID.AppIdentifier]; // if (Applications.ContainsKey(appIdentifier) == false) // { // // Enque notifications // if (ApplicationNotificationQueue.ContainsKey(appIdentifier) == false) // { // ApplicationNotificationQueue.Add(appIdentifier, new Queue<NotificationAttributeCollection>()); // } // ApplicationNotificationQueue[appIdentifier].Enqueue(attributes); // List<AppAttributeID> requestAppAttributes = new List<AppAttributeID>(); // requestAppAttributes.Add(AppAttributeID.DisplayName); // try // { // var commStatus = await ControlPoint.GetAppAttributesAsync(attributes[NotificationAttributeID.AppIdentifier], requestAppAttributes); // } // catch (Exception e) // { // System.Diagnostics.Debug.WriteLine("Bad get app attributes request"); // } // return; // } // applicationAttributes = Applications[appIdentifier]; //} //RaiseNotificationEvent(attributes); this.NotificationAdded(this, new NotificationEventArgs(this.Notifications[obj.NotificationUID], obj)); }
public NotificationEventArgs(NotificationSourceData notificationSource, NotificationAttributeCollection attributes) { this.NotificationSource = notificationSource; this.NotificationAttributes = attributes; }