ably.com Open in urlscan Pro
2606:4700:10::6814:59c3  Public Scan

URL: https://ably.com/blog/realtime-challenges-for-audience-engagement
Submission: On December 04 via api from BY — Scanned from DE

Form analysis 3 forms found in the DOM

GET /search

<form class="flex items-start" action="/search" method="get">
  <div class="relative w-full"><svg class="text-cool-black absolute top-12 left-16" style="width: 1.5rem; height: 1.5rem;">
      <use xlink:href="#sprite-icon-gui-search"></use>
    </svg><input type="search" name="q" class="ui-input pl-48 h-48" placeholder="Search" autocomplete="off" data-id="meganav-search-input">
    <div class="absolute w-full mt-8 z-10 hidden shadow-container rounded-lg bg-white border border-mid-grey" data-id="meganav-search-autocomplete-container">
      <ol class="m-16" data-id="meganav-search-autocomplete-list"></ol>
    </div>
  </div><button type="submit" class="ui-btn-secondary flex-shrink-0 ml-8 sm:ml-16 md:ml-24 xl:ml-32">Search</button>
</form>

GET /search

<form class="mb-16" action="/search" method="get">
  <div class="relative w-full"><svg class="text-cool-black absolute top-12 left-16 hover:text-gui-hover" style="width:1.5rem;height:1.5rem">
      <use xlink:href="#sprite-icon-gui-search"></use>
    </svg><button type="button" class="absolute top-12 right-16 p-0 focus:outline-gui-focus m-0 md:hidden invisible" data-id="meganav-search-input-clear"><svg class="text-dark-grey " style="width:1.5rem;height:1.5rem">
        <use xlink:href="#sprite-icon-gui-cross-circled-fill"></use>
      </svg></button><input type="search" name="q" class="ui-input px-48 h-48" style="max-width:none" placeholder="Search" autocomplete="off" data-id="meganav-mobile-search-input">
    <div class="absolute w-full mt-8 z-10 hidden shadow-container rounded-lg bg-white border border-mid-grey" data-id="meganav-search-autocomplete-container">
      <ol class="m-16" data-id="meganav-search-autocomplete-list"></ol>
    </div>
  </div>
</form>

<form class="col-span-full sm:col-span-4 relative z-10">
  <div class="font-sans font-medium  uppercase  tracking-widen-0.1 text-overline2 text-white mb-8">Enter your email</div><input class="ui-input" type="email" name="EMAIL" value=""><button type="submit" class="ui-btn-invert mt-24"
    disabled="">Submit</button>
</form>

Text Content

 * ProductsProducts
   
   
   THE ABLY PLATFORM
   
   Easily power any realtime experience in your application. No complex
   infrastructure to manage or provision. Just a simple API that handles
   everything realtime, and lets you focus on your code.
   
   Explore how it works
   
   
   PRODUCTS
   
    * Pub/Sub Channels
      
      Build infinitely scalable realtime applications.
   
    * Spaces (Beta)
      
      Create multi-user collaborative environments.
   
    * LiveSync (Pre release)
      
      Keep clients in sync with any relational database.
   
   
   TECHNOLOGY
   
    * Predictable performance
      
      A low-latency and high-throughput global network.
   
    * Guaranteed ordering & delivery
      
      Data is delivered - in order - even after disconnections.
   
    * Fault tolerant infrastructure
      
      Redundancy is built in at global and regional levels.
   
    * High scalability & availability
      
      Built for scale with legitimate 99.999% uptime SLAs.
   
    * Global edge network
      
      An edge network of 15 core routing datacenters and 205+ PoPs.
   
   Explore Four Pillars of Dependability
   
 * SolutionsSolutions
   
   
   SOLUTIONS
   
    * Live Chat
      
      Deliver highly reliable chat experiences at scale.
   
    * Multiplayer Collaboration
      
      Bring collaborative multiplayer experiences to your users.
   
    * Data Broadcast
      
      Broadcast realtime event data to millions of devices around the globe.
   
    * Data Synchronization
      
      Keep your frontend and backend in realtime sync, at global scale.
   
    * Notifications
      
      Deliver cross-platform push notifications with a simple unified API.
   
    * Asset Tracking (Beta)
      
      Track assets in realtime with a solution optimised for last mile
      logistics.
   
   
   INDUSTRY
   
    * EdTech
      
      Deliver interactive learning experiences.
   
    * FinTech
      
      Deliver personalised financial data in realtime.
   
    * Automotive, Logistics, & Mobility
      
      Power diagnostics, order tracking and more.
   
    * B2B Platforms
      
      Empower your customers with realtime solutions.
   
    * Healthcare (HIPAA)
      
      Provide trustworthy, HIPAA-compliant realtime apps.
   
    * eCommerce & Retail
      
      Enrich customer experiences with realtime updates.
   
    * Sports, Media & Audience Engagement
      
      Deliver engaging global realtime experiences.
   
    * Gaming
      
      Power ultra fast and reliable gaming experiences.
   
    * IoT & Connected Devices
      
      Monitor and control global IoT deployments in realtime.
   
   
 * CompanyCompany
   
   
   WHY COMPANIES CHOOSE ABLY
   
    * Customers
      
      Ably supports customers across multiple industries.
   
    * Case studies
      
      Discover how customers are benefiting from Ably.
   
    * Compare our tech
      
      Choose the right realtime service.
   
    * Partners
      
      Ably collaborates and integrates with AWS.
   
    * Resources
      
      Learn more about realtime with our handy resources.
   
    * About Ably
      
      Find out more about Ably’s mission.
   
    * Careers
      
      Discover our open roles and core Ably values.
   
    * Events
      
      Join Ably at upcoming events.
   
   
   BLOG
   
    * Essential guide to WebSocket authentication
      
      Nov 30, 2023
   
    * Ultimate guide: Best databases for NodeJS apps
      
      Nov 29, 2023
   
    * Built with React: Ably Realtime Hackathon projects
      
      Nov 28, 2023
   
   More from our Blog
   
 * DevelopersDevelopers
   
   
   EXPLORE
   
    * Documentation
      
      Technical guides to help you build with Ably.
   
    * Quickstart guides
      
      Documentation to help you get started quickly.
   
    * Integrations
      
      Find out more about Ably integrations.
   
    * Live examples
      
      Discover our features and their use cases.
   
    * SDKs
      
      Download an SDK to help you build realtime apps faster.
   
    * Tutorials & Demos
      
      Get stuck in with our hands-on resources.
   
    * Chat apps reference guide
      
      Learn how to build chat apps with Ably.
   
    * Multiplayer reference guide
      
      Learn how to build collaborative features with Ably.
   
   
   QUICK LINKS
   
    * Discord
   
    * GitHub
   
    * Changelog
   
    * Status
   
    * Support & FAQs
   
   
 * Pricing

 * Contact us
 * Login
 * 
   Search
   
   Popular pages
   
    * How does Ably work?
    * Quickstart guide
    * Publish/Subscribe Messaging
    * Platform
   
   Support
 * Sign up free

 * Login

 * Popular pages
   
    * How does Ably work?
    * Quickstart guide
    * Publish/Subscribe Messaging
    * Platform
   
    * Products
      Back
      
      
      THE ABLY PLATFORM
      
      Easily power any realtime experience in your application. No complex
      infrastructure to manage or provision. Just a simple API that handles
      everything realtime, and lets you focus on your code.
      
      Explore how it works
      
      
      PRODUCTS
      
       * Pub/Sub Channels
         
         Build infinitely scalable realtime applications.
      
       * Spaces (Beta)
         
         Create multi-user collaborative environments.
      
       * LiveSync (Pre release)
         
         Keep clients in sync with any relational database.
      
      
      TECHNOLOGY
      
       * Predictable performance
         
         A low-latency and high-throughput global network.
      
       * Guaranteed ordering & delivery
         
         Data is delivered - in order - even after disconnections.
      
       * Fault tolerant infrastructure
         
         Redundancy is built in at global and regional levels.
      
       * High scalability & availability
         
         Built for scale with legitimate 99.999% uptime SLAs.
      
       * Global edge network
         
         An edge network of 15 core routing datacenters and 205+ PoPs.
      
      Explore Four Pillars of Dependability
      
    * Solutions
      Back
      
      
      SOLUTIONS
      
       * Live Chat
         
         Deliver highly reliable chat experiences at scale.
      
       * Multiplayer Collaboration
         
         Bring collaborative multiplayer experiences to your users.
      
       * Data Broadcast
         
         Broadcast realtime event data to millions of devices around the globe.
      
       * Data Synchronization
         
         Keep your frontend and backend in realtime sync, at global scale.
      
       * Notifications
         
         Deliver cross-platform push notifications with a simple unified API.
      
       * Asset Tracking (Beta)
         
         Track assets in realtime with a solution optimised for last mile
         logistics.
      
      
      INDUSTRY
      
       * EdTech
         
         Deliver interactive learning experiences.
      
       * FinTech
         
         Deliver personalised financial data in realtime.
      
       * Automotive, Logistics, & Mobility
         
         Power diagnostics, order tracking and more.
      
       * B2B Platforms
         
         Empower your customers with realtime solutions.
      
       * Healthcare (HIPAA)
         
         Provide trustworthy, HIPAA-compliant realtime apps.
      
       * eCommerce & Retail
         
         Enrich customer experiences with realtime updates.
      
       * Sports, Media & Audience Engagement
         
         Deliver engaging global realtime experiences.
      
       * Gaming
         
         Power ultra fast and reliable gaming experiences.
      
       * IoT & Connected Devices
         
         Monitor and control global IoT deployments in realtime.
      
      
    * Company
      Back
      
      --------------------------------------------------------------------------------
      
      
      WHY COMPANIES CHOOSE ABLY
      
       * Customers
         
         Ably supports customers across multiple industries.
      
       * Case studies
         
         Discover how customers are benefiting from Ably.
      
       * Compare our tech
         
         Choose the right realtime service.
      
       * Partners
         
         Ably collaborates and integrates with AWS.
      
       * Resources
         
         Learn more about realtime with our handy resources.
      
       * About Ably
         
         Find out more about Ably’s mission.
      
       * Careers
         
         Discover our open roles and core Ably values.
      
       * Events
         
         Join Ably at upcoming events.
      
      
      BLOG
      
       * Essential guide to WebSocket authentication
         
         Nov 30, 2023
      
       * Ultimate guide: Best databases for NodeJS apps
         
         Nov 29, 2023
      
       * Built with React: Ably Realtime Hackathon projects
         
         Nov 28, 2023
      
      More from our Blog
      
    * Developers
      Back
      
      --------------------------------------------------------------------------------
      
      
      EXPLORE
      
       * Documentation
         
         Technical guides to help you build with Ably.
      
       * Quickstart guides
         
         Documentation to help you get started quickly.
      
       * Integrations
         
         Find out more about Ably integrations.
      
       * Live examples
         
         Discover our features and their use cases.
      
       * SDKs
         
         Download an SDK to help you build realtime apps faster.
      
       * Tutorials & Demos
         
         Get stuck in with our hands-on resources.
      
       * Chat apps reference guide
         
         Learn how to build chat apps with Ably.
      
       * Multiplayer reference guide
         
         Learn how to build collaborative features with Ably.
      
      
      QUICK LINKS
      
       * Discord
      
       * GitHub
      
       * Changelog
      
       * Status
      
       * Support & FAQs
      
      
    * Pricing
   
   --------------------------------------------------------------------------------
   
   Contact usSign up free


On this page


Back to all blog posts Back
Realtime experiences
Realtime experiences
10 min read•Last updatedUpdated Nov 29, 2022


REALTIME CHALLENGES FOR AUDIENCE ENGAGEMENT

Written by
Jo Stichbury


WHAT IS AUDIENCE ENGAGEMENT?

A simple example of online audience engagement could be a livestream with a host
and a chat system for audience members to interact with each other in realtime.
Other audience engagement solutions include features such as chat or Q&A for
participants to communicate while sharing an experience, such as a Watch Party,
and polls, quizzes, and leaderboards.

Typical audience engagement features

DEVICE AND USER PRESENCE

One aspect of audience engagement is the ability to know who’s participating in
a virtual event or a user’s “presence”. Closely linked to presence is the user’s
state, for essential functionality such as indicators when someone is typing a
message into a chat window, or the realtime location of a device.

CHAT

Chat messages are a common way for audience members to interact and send
immediate feedback to the host of an online event, such as a livestream. Twitch
was an early example; it’s popular with gamers, who stream their gameplay and
their webcam feed, so others can watch and comment on gaming in realtime (and
leave donations or tips in exchange for a shoutout from the host on the chat
channel).

POLLS & Q&A

Polls and Q&A are additional aspects of audience engagement. For example, a host
may ask a livestream audience, “What’s your favorite flavor of ice cream?” and
give participants a short URL to follow, where they can vote online from a list
of flavor options. Answers are visualized in realtime as a bar graph, pie chart,
or even a word cloud and displayed in the livestream to bring the audience
together. This type of poll can cause a surge in responses as the participants
submit their votes simultaneously.

Q&A works in reverse; the host of an online event will share a link, and
participants can follow it and type in questions and comments to find out more
or give feedback in realtime.

QUIZ FEATURES AND GAMIFICATION

Another way to engage an audience is with a multiplayer quiz, whereby the
participants join a live quiz, answer questions, and see their scores on a
leaderboard. The quiz could be on a standalone platform or integrated into a
livestream, and these are particularly popular in the education sector. Popular
products include Mentimeter, Wooclap, Kahoot, Slido, and HQ Trivia.

Participants log into a specific quiz using an invite link, and as questions
appear in realtime, they answer on their devices. Their scores are displayed on
a leaderboard to add an element of gamification. For fairness, each question has
a limited time within which the participants choose an answer. All players need
to be sent the question simultaneously (fan-out) with a corresponding surge of
responses in return (fan-in) as they complete the challenge before the timer
expires.


REALTIME UPDATES UNDERPIN AUDIENCE ENGAGEMENT

For the features listed above to be engaging, they need to happen in “realtime”,
or near-realtime, which is below the 100 ms threshold of human perception.
Technology built on a realtime system uses a series of events, like an
asynchronous conversation, rather than the request-response paradigm typical of
synchronous communication.

An event-driven architecture serves use cases that need to process data
immediately to deliver a satisfactory user experience. It eliminates the need
for blocking or constant polling and notifies application code whenever an event
of interest occurs.

The publish and subscribe (pub/sub) pattern is typical in event-driven systems.
An event producer (publisher) sends event messages when a state change occurs.
Event subscribers then consume them. Often, a dedicated broker sits between the
publisher and its subscribers, enabling the event producer to offload
responsibility to the broker, which delivers notifications at high volume to
consumers across different devices and platforms. The broker also records events
as messages as they are received from the producer. The event history is
retained for a specific period so that subscribers can read event history from
any particular point.

The basics of the pub/sub pattern


TECHNICAL CHALLENGES OF BUILDING A REALTIME ARCHITECTURE

A realtime, event-driven architecture is a distributed system with associated
reliability, latency, and bandwidth issues and the unpredictability of the
network is a significant challenge.


MESSAGE INTEGRITY

In an event-driven system, lost, duplicated, or out-of-order messages can have
significant consequences. Consider, for example, chat messaging, which relies on
a well-defined sequence of messages. If they arrive unordered or are lost, the
user experience is flawed.

LOST MESSAGES

A user’s connection can drop and reconnect: say if their power fails or a system
problem occurs on the network, if they are on the move, or close the chat app
and later relaunch it.

Losing messages because of an unstable connection is not acceptable from the
user’s perspective. So, when the user reconnects, the app needs to pick up with
minimal friction from the point before they disconnected. Any missed messages
need to be delivered without duplicating those already processed. The whole
experience needs to be completely seamless.

Most event-driven systems use at-least-once delivery. When the broker sends a
message to an event consumer, it requires acknowledgment that it was received.
If the broker doesn’t receive acknowledgement, it sends the message again to
ensure it wasn’t lost on the first send (and will continue to send the message
until it receives the acknowledgement). However, what if the message was
received and the acknowledgment got lost? Any recent messages are now duplicate
copies of the original.

MESSAGE DUPLICATION AND ORDERING

Message duplication is acceptable if the event-driven system uses idempotent
messages, which can be processed multiple times but don’t change the system
after the first time. An example of this is programming a heating thermostat. If
you type in the exact temperature you require your room to reach before you get
home, it doesn’t matter if the instruction is sent multiple times. The
thermostat will set to your required temperature, maybe repeatedly, but it will
still be the temperature you want. However, if you ask for the heating to be
turned up by five degrees and the request is sent more than once, you could be
in for a tropical homecoming!

Message duplication in a chat app is almost as annoying for the user as lost
messages or those that come out of order. A common approach is to use unique IDs
to order messages if they cannot be processed successfully in any order.

Alongside idempotent message types, many event-driven systems use an
exactly-once processing guarantee to reconcile issues associated with duplicate
messages. A de-duplication process is applied so that previously processed
messages are detected and discarded.

Related article: Achieving exactly-once delivery with Ably


PERFORMANCE

Network latency, which is the time it takes for data to get to its destination,
is a critical factor for successful audience engagement. In a large-scale
distributed system, latency deteriorates the further it travels between nodes.

High latency can completely ruin live audio communication and video quality.
It’s increasingly important to consider performance for a global audience or are
hosting users in areas with poorer internet infrastructure.

Low network latency comes from geographic proximity. Data should be kept as
close to the users as possible via managed data centers and edge acceleration
points. It isn’t sufficient to minimize latency, however. The user experience
needs latency variance to be at a minimum to ensure predictability.

There’s also a strong correlation between server performance (processing speed,
hardware used, available RAM) and latency. To prevent a congested network and
server overrun, it must be possible to dynamically increase the capacity of the
server layer and reassign load.

Related article: A global edge network to power digital experiences in realtime


AVAILABILITY

One particular aspect of audience engagement is the unpredictability of knowing
how many participants there will be. For many events, the audience size won't be
known until the hours or minutes before the event. The technical challenge this
presents is that it is difficult to plan and provision sufficient capacity in
any systems that are supporting the event.

A realtime solution for audience participation needs to be highly available to
support surges in data and bursts of high volume engagement across the network.
When the system does not have the capacity, issues can arise, such as queuing
delays, bottlenecks, network congestion, or overall system instability.

Under load, achieving availability and elasticity to meet stringent uptime
requirements isn’t just traditional mechanics like failover; it’s about managing
capacity. The challenge is to scale horizontally and swiftly absorb millions of
connections without the need for pre-provisioning.

To ensure a network can cater to this type of circumstance, monitor metrics such
as:

 * Global percentage of operating load
 * The elasticity and distribution of that load
 * The maximum number of connections and throughput

Having ways to automatically and dynamically provision additional capacity when
certain thresholds are exceeded is critical to ensure exceptionally high levels
of uptime.

Optimization should include minimizing the amounts of data transferred, for
example, with a reduced message size that sends only the changes to data (the
deltas) rather than entire payloads.

Related article: Availability and uptime - guaranteed


RELIABILITY

Reliability is essential because of the embarrassment caused to a host if the
event cannot run, or drops out halfway through, because of a fault. A realtime
platform for audience engagement needs to be fault-tolerant so that it can
continue to operate even if a component fails.

To achieve fault tolerance, there need to be multiple components capable of
maintaining the system if some are lost. Redundancy at a regional and global
level ensures continuity of service even in the face of multiple infrastructure
failures.

There should be no single point of congestion and no single point of failure.

When one or more components fail, the remaining components need to support the
service on their own. It’s essential to understand how many regional failures
can be tolerated (for example, the number of instance failures per second). If
one region goes offline with failover to another, there needs to be sufficient
capacity to absorb the additional traffic, even under peak loads.

Related article: Engineering dependability and fault tolerance in a distributed
system


ABLY: THE FOUR PILLARS OF DEPENDABILITY

To build a system that provides the foundation for realtime audience engagement
requires a fault-tolerant infrastructure capable of low latency, scalability,
and elasticity, alongside architecture that ensures the integrity of message
delivery.

Ably has four pillars of dependability: Performance, Integrity, Reliability and
Availability

Should you build a custom solution to meet the exact requirements of your
business? You could spend several months and a heap of money. And you’d end up
burdened with the high cost of infrastructure ownership, technical debt, and
ongoing demands for engineering investment.

It makes more financial sense for many companies to pass on the responsibility
for scale, latency, data integrity, and reliability to a third-party vendor.

Ably has fault-tolerant, highly-available, elastic global infrastructure for
effortless scaling and low complexity. Our platform is mathematically modeled
around the Four Pillars of Dependability. We can ensure that messages are
reliably delivered at low latency over a secure, reliable, and highly available
global edge network. And, there’s zero DevOps overhead, so there is no
infrastructure to provision or manage.

The Ably platform abstracts the worry of building a realtime solution to support
audience engagement at scale so that you can focus on your core product,
prioritize your audience engagement roadmap and develop features to stay
competitive.


FURTHER READING

 * Keep an audience engaged with interactive realtime features
 * Leader election in the browser with Ably
 * The realtime web: evolution of the user experience
 * The architecture behind a live multiplayer quiz
 * Scaling WebSockets for virtual events
   

On this page
 1. What is audience engagement?
    1. Device and user presence
    2. Chat
    3. Polls & Q&A
    4. Quiz features and gamification
 2. Realtime updates underpin audience engagement
 3. Technical challenges of building a realtime architecture
    1. Message integrity
       1. Lost messages
       2. Message duplication and ordering
    2. Performance
    3. Availability
    4. Reliability
 4. Ably: The four pillars of dependability
    1. Further reading

BUILD DEPENDABLE REALTIME APPS

Ably offers versatile, easy-to-use APIs to develop powerful realtime apps.
Guaranteed to deliver at scale.

Start building


RECOMMENDED ARTICLES

Realtime experiencesCollaborative experiences

7 min read


YOU DON'T NEED CRDTS FOR COLLABORATIVE EXPERIENCES


Nov 21, 2023

Realtime experiences

9 min read


NO MORE REFRESHING: ACHIEVING LOW LATENCY DATA WITH ABLY AND CONFLUENT CLOUD


Nov 15, 2023

Collaborative experiencesRealtime experiences

11 min read


THE BEST REALTIME COLLABORATION SDKS, PLATFORMS, AND FRAMEWORKS


Oct 25, 2023


JOIN THE ABLY NEWSLETTER TODAY

1000s of industry pioneers trust Ably for monthly insights on the realtime data
economy.

Enter your email
Submit


How we use cookies to improve your experience.

Accept and close


THE ABLY PLATFORM

Easily power any realtime experience in your application via a simple API that
handles everything realtime.

 * Pub/sub messaging
 * Push notifications
 * Third-party integrations
 * Multiple protocol messaging


ABLY IS FOR

 * Ably Asset Tracking
 * Extend Kafka to the edge
 * EdTech
 * Automotive, Logistics, & Mobility
 * B2B Platforms
 * Healthcare
 * eCommerce & Retail
 * Sports & Media
 * Gaming
 * IoT & Connected Devices


DEVELOPERS

 * Start in 5 minutes
 * Documentation
 * Tutorials
 * Changelog
 * Support & FAQs
 * SDKs
 * System status


WHY ABLY

 * Customers
 * Case Studies
 * Four Pillars of Dependability
 * Compare our tech
 * Multi protocol support
 * Third-party integrations


ABOUT

 * About Ably
 * Pricing
 * Blog
 * Careers
 * Open protocol policy
 * Press & Media
 * Contact us

--------------------------------------------------------------------------------

We're hiring!Learn more at Glassdoor
We're hiring!Learn more at Glassdoor


--------------------------------------------------------------------------------

CookiesLegalsData ProtectionPrivacy

SOC 2 Type 2

Certified

HIPAA

Compliant

EU GDPR

Certified

256-bit AES

Encryption










sprite-discord sprite-facebook sprite-github sprite-glassdoor sprite-google
sprite-icon-display-48hrs sprite-icon-display-about-ably-col
sprite-icon-display-api-keys sprite-icon-display-api
sprite-icon-display-asset-tracking-col sprite-icon-display-browser
sprite-icon-display-calendar sprite-icon-display-call-mobile
sprite-icon-display-careers-col sprite-icon-display-case-studies-col
sprite-icon-display-chat-col sprite-icon-display-chat-stack-col
sprite-icon-display-chat-stack sprite-icon-display-cloud-servers
sprite-icon-display-compare-tech-col sprite-icon-display-customers-col
sprite-icon-display-data-broadcast-col
sprite-icon-display-data-synchronization-col sprite-icon-display-docs-col
sprite-icon-display-documentation sprite-icon-display-events-col
sprite-icon-display-examples-col sprite-icon-display-gdpr
sprite-icon-display-general-comms sprite-icon-display-hipaa
sprite-icon-display-integrations-col sprite-icon-display-it-support-access
sprite-icon-display-it-support-helpdesk
sprite-icon-display-kafka-at-the-edge-col sprite-icon-display-laptop
sprite-icon-display-lightbulb-col sprite-icon-display-live-chat
sprite-icon-display-map-pin sprite-icon-display-message
sprite-icon-display-padlock-closed sprite-icon-display-platform
sprite-icon-display-play sprite-icon-display-privacy-shield-framework
sprite-icon-display-push-notifications-col
sprite-icon-display-quickstart-guides-col sprite-icon-display-resources-col
sprite-icon-display-sdks-col sprite-icon-display-servers
sprite-icon-display-shopping-cart sprite-icon-display-sla
sprite-icon-display-soc2-type2 sprite-icon-display-tech-account-comms
sprite-icon-display-tutorials-demos-col sprite-icon-display-virtual-events-col
sprite-icon-display-virtual-events sprite-icon-gui-ably-badge
sprite-icon-gui-arrow-bidirectional-horizontal
sprite-icon-gui-arrow-bidirectional-vertical sprite-icon-gui-arrow-down
sprite-icon-gui-arrow-left sprite-icon-gui-arrow-right sprite-icon-gui-arrow-up
sprite-icon-gui-burger-menu sprite-icon-gui-check-circled-fill-black
sprite-icon-gui-check-circled-fill sprite-icon-gui-check-circled
sprite-icon-gui-checklist-checked sprite-icon-gui-clock sprite-icon-gui-close
sprite-icon-gui-copy sprite-icon-gui-cross-circled-fill
sprite-icon-gui-cross-circled sprite-icon-gui-dash-circled
sprite-icon-gui-disclosure-arrow sprite-icon-gui-document-generic
sprite-icon-gui-enlarge sprite-icon-gui-external-link
sprite-icon-gui-filter-flow-step-1 sprite-icon-gui-filter-flow-step-2
sprite-icon-gui-filter-flow-step-3 sprite-icon-gui-history sprite-icon-gui-info
sprite-icon-gui-link-arrow sprite-icon-gui-link sprite-icon-gui-live-chat
sprite-icon-gui-minus sprite-icon-gui-plus sprite-icon-gui-quote-marks-solid
sprite-icon-gui-refresh sprite-icon-gui-resources sprite-icon-gui-search
sprite-icon-gui-tick sprite-icon-gui-warning
sprite-icon-live-updates-results-metrics-col sprite-icon-multi-user-spaces-col
sprite-icon-social-x sprite-icon-tech-apachekafka sprite-linkedin sprite-quote
sprite-stackoverflow sprite-twitter sprite-youtube