Log inSign up
Home
Webex Contact Center
  • Overview
  • Service Apps
  • API REFERENCE
  • AI Assistant for Developers
  • Changelog

Webex Contact Center

Notifications and Screen Pops

Send Desktop notifications and listen for screen-pop events from custom widgets.

anchorBefore You Begin

anchor

Install and initialize the SDK as described in Get Started with the Desktop SDK. Your widget must run inside Webex Contact Center Desktop.

anchorDesktop Actions

anchor

The Desktop.actions module retrieves data and performs actions for Desktop widgets.

fireGeneralSilentNotification(raw)

Triggers silent notifications. Silent notifications do not appear on the desktop, but are listed in the Notification Center. The Notification Center icon indicates the increase in the number of unread messages.

Note: You can customize the notification icon displayed in the Notification Center dialog box using the iconDetail object.

Example

import {
    Desktop
} from "@wxcc-desktop/sdk";
import {
    Notifications,
    NotificationItemsContent
} from "@uuip/unified-ui-platform-sdk";


const raw: Notifications.ItemMeta.Raw = {
    data: {
        type: Notifications.ItemMeta.Type.Info,
        mode: Notifications.ItemMeta.Mode.Silent, // Change type here based on the method.
        title: "Info - Silent",
        data: new NotificationItemsContent.DataController({
            text: "Explore New Horizons",
            link: "https://www.abc.com/file/Tjpn4Z9p8jZy0Da0Ggq6ra/Priority-To-do-list?node-id=1280:83124",
            linkName: 'Toaster Notification',
            linkTooltip: `<div style="text-align: left !important;">Phone - +1 (412)555-3782 <br /> Queue - IVR_Queue <br /> Activity Label <br /> URL - www.google.com <br /> Phone - +1-408-000-0001 <br /> Account - 81684989000 </div>`,
            iconDetail: {
                iconName: 'icon-alert-active_16',
                color: 'blue',
                iconColor: '#08599C'
            },
            actions: [
              {
                label: "Yes",
                handler: n => {
                  console.log("Yes button clicked", n);
                },
                variant: "primary"
              },
              {
                label: "No",
                handler: n => {
                  console.log("No button clicked", n);
                },
                variant: "secondary"
              }
            ],
        })
    },
};

// Desktop General Notifications:
Desktop.actions.fireGeneralSilentNotification(raw)
// => Fires silent notification in Desktop.
// Silent notification will not have any apperance on desktop but a notification icon will have one count increased.

Parameters

NameTypeDescriptionRequired
rawObjectContains information regarding the type of notification sent to the user.Yes
-->dataObjectOptions of the specific notification.Yes
--> typeEnumThe type of notifications displayed on the Desktop. (Info, Warn, Error, Success, Chat, Default)Yes
-->modeEnumThe available mode of notification based on the method. (Silent, AutoDismiss, Acknowledge)Yes
-->titleStringThe title of the notification.Yes
-->dataObjectOptions for the notification content.Yes
--> typeStringThe media channel type such as chat and social.Optional
-->textStringThe subheading of the notification.Yes
-->linkStringThe link address to the notification.Optional
-->linkNameStringThe text to display for the link.Optional
-->linkTooltipStringThe tooltip for the link.Optional
-->iconDetailObjectCustom details for the notification icon.Optional
-->iconNameStringName of the notification icon.Yes
-->colorStringThe color of the circle in the background, in which the notification icon is placed. This color changes based on the light mode or dark mode selection.Optional
-->bgColorStringThe color of the circle in the background, in which the notification icon is placed. This color does not change based on the light mode or dark mode selection.
Note: If both the color and bgColor are defined, then bgColor takes precedence.
Optional
-->iconColorStringThe color of the notification icon.Optional
-->linkHandlerFunctionThe function that is invoked when the conditions are met.Optional
-->errorDetailObjectOptions for the notification error.Optional
-->headerStringThe title of the notification error.Optional
-- >messageStringThe message displayed in the notification error modal dialog.Yes
-->trackingIdStringUnique identifier based on the notification error.Optional
-->localizationObjectOptions for the localization (i18n) module.Yes
-- >timestampStringThe time at which the notification error was generated. Timestamp uses the format DateTime.fromMillis (now + 4).to ISO().Optional
-->taskIdStringUnique identifier for the task.Optional
-->dismissHandlerFunctionThe function invoked when the notification is dismissed.Optional
-->actionsArrayThe actions supported by the notification. These are rendered as buttons that can be used to process different types of responses from the user e.g. Accept/Decline, Yes/No/Later etc. For more information, see Action.Optional
-->lineClampNumberMaximum number of lines from the message displayed on the notification before truncation.Optional

Action

NameTypeDescription
labelStringThe text displayed on the action button.
variantStringThe variant of the action button. Determines the look of the button. See the Button component under the Momentum UI Web Component Library for the available variants.
handlerFunctionThe function invoked when the button is clicked.
fireGeneralAutoDismissNotification(raw)

Triggers the auto-dismiss notification. Returns the notification resolved status, reason, and mode.

Note: If Desktop notifications are disabled by the user, they are converted into silent notifications and reflected in mode.

Example

import {
    Desktop
} from "@wxcc-desktop/sdk";
import {
    Notifications,
    NotificationItemsContent
} from "@uuip/unified-ui-platform-sdk";


const raw: Notifications.ItemMeta.Raw = {
    data: {
        type: Notifications.ItemMeta.Type.Info,
        mode: Notifications.ItemMeta.Mode.AutoDismiss, // Change type here based on the method.
        title: "Info - AutoDismiss",
        data: new NotificationItemsContent.DataController({
            text: "Explore New Horizons",
            link: "https://www.abc.com/file/Tjpn4Z9p8jZy0Da0Ggq6ra/Priority-To-do-list?node-id=1280:83124",
            linkName: 'Toaster Notification',
            linkTooltip: `<div style="text-align: left !important;">Phone - +1 (412)555-3782 <br /> Queue - IVR_Queue <br /> Activity Label <br /> URL - www.google.com <br /> Phone - +1-408-000-0001 <br /> Account - 81684989000 </div>`,
            iconDetail: {
                iconName: 'icon-alert-active_16',
                color: 'blue',
                iconColor: '#08599C'
            }
        })
    },
};

// Unlike silent notification, auto-dismiss and acknowledge can have controlled responses, that may reflect in the notification status, e.g.:

// => Fires auto-dismiss notification in Desktop. Returns notification resolved status, reason, mode.
// Note: if Desktop notifications are disabled by the user - it will be converted into silent notification and reflected in "mode"
const result = await Desktop.actions.fireGeneralAutoDismissNotification(raw);
if (result) {
  const [status, reason, mode] = result;
  console.log(status, reason, mode);
}

Parameters

NameTypeDescriptionRequired
rawObjectContains information regarding the type of notification sent to the user.Yes

For information on more parameters used in this method, see the Parameters table of the fireGeneralSilentNotification(raw) method.

fireGeneralAcknowledgeNotification(raw)

Triggers the acknowledge notification. Returns the notification resolved status, reason, and mode.

Note: If Desktop notifications are disabled by the user, they are converted into silent notifications and reflected in mode.

Example

import {
    Desktop
} from "@wxcc-desktop/sdk";
import {
    Notifications,
    NotificationItemsContent
} from "@uuip/unified-ui-platform-sdk";


const raw: Notifications.ItemMeta.Raw = {
    data: {
        type: Notifications.ItemMeta.Type.Info,
        mode: Notifications.ItemMeta.Mode.Acknowledge, // Change type here based on the method.
        title: "Info - Acknowledge",
        data: new NotificationItemsContent.DataController({
            text: "Explore New Horizons",
            link: "https://www.abc.com/file/Tjpn4Z9p8jZy0Da0Ggq6ra/Priority-To-do-list?node-id=1280:83124",
            linkName: 'Toaster Notification',
            linkTooltip: `<div style="text-align: left !important;">Phone - +1 (412)555-3782 <br /> Queue - IVR_Queue <br /> Activity Label <br /> URL - www.google.com <br /> Phone - +1-408-000-0001 <br /> Account - 81684989000 </div>`,
            iconDetail: {
                iconName: 'icon-alert-active_16',
                color: 'blue',
                iconColor: '#08599C'
            }
        })
    },
};


// => Fires acknowledge notification in Desktop. Returns notification resolved status, reason, mode.
// Note: if Desktop notifications are disabled by the user - it will be converted into silent notification and reflected in "mode"
const result = await Desktop.actions.fireGeneralAcknowledgeNotification(raw);
if (result) {
  const [status, reason, mode] = result;
  console.log(status, reason, mode);
}

Parameters

NameTypeDescriptionRequired
rawObjectContains information regarding the type of notification sent to the user.Yes

For information on more parameters used in this method, see the Parameters table of the fireGeneralSilentNotification(raw) method.

anchorScreen Pop Module

anchor

The Desktop.screenpop module makes requests and listens to notification events related to the screen pop entity.

Example

Desktop.screenpop.addEventListener("eScreenPop", (msg) => logger.info(msg));

To remove an event subscription in order to avoid memory leaks, you have the following options:

// Module supports removing added listeners like:
const listener = (msg) => logger.info(msg);
Desktop.screenpop.addEventListener("eScreenPop", listener);
Desktop.screenpop.removeEventListener("eScreenPop", listener);

// Module supports one-time added listeners like:
Desktop.screenpop.addOnceEventListener("eScreenPop", listener);
Desktop.screenpop.removeOnceEventListener("eScreenPop", listener);

// Module supports removing all listeners like:
Desktop.screenpop.removeAllEventListeners();
Events
eScreenPop

Listens to an event that displays the screen pop.

Example

Desktop.screenpop.addEventListener("eScreenPop", listener);

Example Response

const eScreenPop = {
  data: {
    agentId: "1736827c-10ef-4b2a-90e0-7d2a3743ded3",
    interactionId: "4745472e-cfa2-47f3-9fc1-16359516d648",
    queryParameters: null,
    screenPopUrl: "https://youtube.com",
    target: "insideDesktop",
    type: "ScreenPop"
  },
  orgId: "f111e3af-1a45-42ef-9erf-4562354b8a25",
  trackingId: "notifs_90a4bf42-ba95-47a6-b8cb-c1ed105ff5ea",
  type: "RoutingMessage"
};

anchorRelated Pages

anchor
  • Agent Desktop overview
  • Desktop SDK Reference
In This Article
  • Before You Begin
  • Desktop Actions
  • Screen Pop Module
  • Related Pages

Connect

Support

Developer Community

Developer Events

Contact Sales

Handy Links

Webex Ambassadors

Webex App Hub

Resources

Open Source Bot Starter Kits

Download Webex

DevNet Learning Labs

Terms of Service

Privacy Policy

Cookie Policy

Trademarks

© 2026 Cisco and/or its affiliates. All rights reserved.