Notifications

Overview

The notification service that resides inside the SDK is capable of displaying notifications for your end users based on particular events. These notifications can be modified from a visual and a functional perspective. Modifying the display or behavior of these notifications can result in undesired affects so understanding all your options and what to avoid is essential.


Properties

Control preferences about your notifications and how they are rendered, how long they stay, and where they appear.

Property Value Default
actionableNotificationTimeout The timeout period in milliseconds for how long a notification that is actionable, that is that it has some definitive action contained within it that a user can take. This includes conversation requests. 35000 (35 seconds)
nonActionableNotificationTimeout The timeout period in milliseconds for how long a notification that is non-actionable. This includes notifications like incoming messages and online/offline notifications. 15000 (15 seconds)
notificationOrientation The position you wish the notifications to show up. Options: topright, topleft, bottomright, bottomleft topright – Webmessenger, bottomright – PresenceBar

Locale Property Overrides

See Override Locale Settings

Property Value Default
line1Label The label for the first line of profile data. Age
line2Label The label for the second line of profile data. Sex
line3Label The label for the third line of profile data Location
line4Label Not currently used.
invitationMessage Text display to let the user know its an incoming conversation request. Incoming Conversation Request!

Sample

This sample is of a locale override being added to your up.init call inside the settings object.

// this object would be added to your up.init call
settings: { locale: {
		line1Label: "Age",
		line2Label: "Sex",
		line3Label: "Location",
		line4Label: "",
		invitationMessage:"Would you like to chat?"
	}
}





Notifications

Invitation

When another user requests a conversation with you ( assuming the Auto Approve Subscription Plugin is not in use ) will receive the following notification request.

Invite

There are several events that comprise the flow for notifications which can be intercepted to alter the behavior for implementing custom flows. We recommend contacting support with the proposed custom work flow so we can provide assistance beyond what simple documentation can provide.

Presence Subscription

Presence subscriptions occur when a user launches a conversation with a user they do not currently have in their roster. This launch will trigger an invitation notification on the recipients end. Inside of this notification there are two calls to action: “Accept” and “Ignore” ( assuming you have not changed the locale values ). Each of these buttons can be manipulated by using the Subscription Filter Plugin.

Properties

Property Value Event Data Description
SUBSCRIBE subscribe
event: {
   context: {
      userId: 1,
      type: "subscribe"
   }
}
Event triggered when an incoming subscription occurs ( the notification is shown ).
ACCEPT accept
event: {
   context: {
      userId: 1,
      type: "accept"
   }
}
Event triggered when the “Accept” button is clicked.
DENY deny
event: {
   context: {
      userId: 1,
      type: "deny"
   }
}
Event triggered when the “Ignore” button is clicked.

*The userId property in these events is for the user who sent the subscription ( i.e. not the local user ).

The PresenceSubscriptionEvent event is the event that is triggered when an end user acts upon the “Accept” and “Ignore” buttons within a subscription notification. These events will result in the subscription being accepted or denied and a conversation being successfully started.

Intecepting these events using the Subscription Filter Plugin can allow you to build a complex behavior such as an upgrade workflow for your end users before they are able to engage in a conversation.





Incoming Message

When using Webmessenger: A member of your roster sends you a message you will receive a notification showing the message they sent. Clicking this notification will launch the conversation in a popup window.

When clicked the incoming message notifications will start a new conversation for the user who sent the message. This event usually launches the IM experience but can be intercepted using the Conversation Filter Plugin in order to control the flow of the user’s experience from the notifications themselves.