Adaptive Bitrate Streaming (ABR)
Adaptive bitrate streaming (ABR) dynamically adjusts a stream's compression level and video quality to match bandwidth availability and deliver the best possible user experience regardless of Internet connection.
Admin is the default configuration that provides elevated permissions across the entire application. Admins can only be created server-side, and you can make any user an admin. While Admins are created server-side, they answer client-side requests. Moderation is a perfect example of this.
The Android Kotlin Chat Messaging Software Development Kit (SDK) includes both a low-level chat SDK and reusable UI components together in a sample app.
An API key is a unique key that consists of random numbers and characters. Combine API keys with API secrets to gain access to database information. API calls traditionally require a key to authenticate a user or organization.
API Secrets are similar to API keys in that you use them for security and tracking for data usage or manipulation.
An API token is a small snippet of code built to secure API access. They are sent to API servers, where they act as identification. Their purpose is to give the API server both information and authentication.
API vs. SDK
API or SDK? If you're not directly involved in software development, the difference between the two can sometimes be a bit confusing. However, both are important tools that have quickly become the driving force behind new application features and product development.
An App ID is a unique identifier associated with your respective App.
Application Programming Interface (API)
An API is a universal data format that allows apps to communicate with one another.
Artificial intelligence is the simulation of human intelligence processes by machines, especially computer systems. Specific applications of AI include expert systems, natural language processing, speech recognition, and machine vision.
Asynchronous communication allows for users to receive information as data updates in real-time. The client and server establish an open connection so that any changes will trigger an update.
@mentions are a keyboard command that allows chat users to tag others by their usernames. This command notifies the user mentioned immediately and is helpful to use when calling out one particular user in a group chat.
Attributes are packages of user information gained through a conversation in chat.
Audio Freeze Rate
If audio rendering pauses for 200ms+, freezing occurs. To calculate your audio freeze rate: (The sum of audio freezing duration per unit time / total audio duration per unit time) × 100%.
Analytics is the process of discovering, interpreting, and communicating significant patterns in data. Augmented Analytics integrate AI-enabled cognitive services (natural language processing, knowledge engines) to provide a new way to analyze, process, crunch, and derive insights from data.
Authentication is the process of verifying a user’s identity. Standard tools for user authentication are web tokens and multi-factor authentication for added security.
Authorization occurs upon verification and authentication of a user, then granted or denied access to certain functionality or information. A user can be authenticated but not authorized to view or access certain areas.
Users can be banned from an app entirely or from a channel for posting spammy or offensive content. When a user is banned, they will not be allowed to post messages until the ban is removed by an administrator or has expired, but after that, they will be able to connect to chat and to channels as before.
Bandwidth is the ability for information to be passed along at a specific rate. The higher the bandwidth, the more information can be transmitted at a faster pace.
A blocklist is a list of words chat moderators can define to moderate message content. A unique blocklist can be assigned to each channel type to either block or flag messages that contain certain words.
Bidirectional-streams Over Synchronous HTTP (BOSH) is a transport protocol that creates bi-directional TCP connectivity between client and server.
Business Associate Agreement (BAA)
BAA (Business Associate Agreement) is a contract between a HIPAA-covered entity (the organization who is delivering the product), and HIPAA business associates (the organization or vendor working with the entity to store, transmit, or process PHI).
Caching is the act of storing data or information for faster processing in the future. The cache will save pieces of information to preserve personal preferences or settings for future reference to increase the User Experience.
The total time from when the call is successfully connected to when a participant ends it.
Cassandra is a non-relational (NoSQL) database that can handle large data sets and access many simultaneous users. Cassandra handles data across multiple commodity servers to maintain quick responses and avoid failure points.
The channel type defines the configurations and permissions (e.g., Livestream, Messaging, etc.).
Use a real-time chat and messaging API to outsource comprehensive chat features without managing data or storage internally.
Chat as a Service (CaaS)
CaaS is a software service that allows developers to integrate real-time chat and messaging into existing apps and websites.
Chat Channel (Chat Room)
A Chat Channel uses asynchronous data transfers to send messages from each user to a specific channel. That channel can hold many users and display messages in real-time.
A chat widget is a ready-to-use, customizable chat window on a website. Chat widgets can host chatbot technology and enable users to converse with it.
A chatbot is a software tool that developers can add to existing chat applications. Chatbots enhance the user experience by quickly answering questions or routing users to other professionals who can help provide customer support.
Child Sexual Abuse Material (CSAM)
CSAM refers to any visual depiction, including images or videos, that depicts or represents a child engaging in sexually explicit conduct.
A client acts as the intermediary device between a user and a server. The client will send requests through a browser or application and display the response sent back by the server.
Cloud computing is the ability for many users to access server data remotely simultaneously. Users can send and receive requests via website or web application through the client-server relationship without physically interacting with the server.
Comet is a web application design paradigm that describes a continuous, two-way interaction between a server and a web browser using native HTTP methods.
A software component is a modular service that you can access independently through a larger application. Components can be organized throughout the file structure of an application or imported from a third-party provider.
The Jetpack Compose Chat Messaging SDK is built on a low-level chat client and provides modular, customizable Compose UI components that you can easily drop into your app. You can also make API calls directly by using the client to add custom functionality.
Concurrent connections reflect the number of WebSocket connections on your chat app at the same time.
A conversational channel is a place where users can converse. Examples include a website, real-time chat, Facebook Messenger, WhatsApp, Slack, Kik, etc.
A dashboard houses primary app data, permissions options, billing info, and usage analytics data collected through your chat app. It also provides moderation controls.
A database is a storage center for information, traditionally defined as relational or non-relational (NoSQL). Databases read and write data from external sites or applications, providing users remote access over the internet.
A dedicated stack is an independent physical or cloud server that is devoted to a single tenant. Many healthcare and financial organizations use dedicated stacks to isolate sensitive data from unauthorized users for security purposes.
Dialogflow is an AI system designed to understand user inputs such as text or speech and provide relevant information in response. Dialogflow can respond to users with text or synthetic speech to enhance the user experience.
Edge computing is a strategy implemented by placing (or utilizing) physical servers in various locations. The closer a client is to the server, the faster the client will receive a response. Edge computing directly impacts bandwidth costs, download speeds, latency, and performance.
Edge Computing vs. Cloud Computing
Edge computing and cloud computing are two opposite approaches within the same computing continuum. While cloud computing processes all your data in a fully managed, centralized server, edge computing processes local data in the closest available decentralized server.
Emoticons and Gifs
Custom emojis are a fun way to bring more life and customizability to your apps. They're available in some of the most popular apps, such as Slack, Discord, and Twitch. However, iOS SDK doesn't provide straight forward support for custom emojis out of the box. Streamoji is a custom emoji rendering library for iOS. It supports GIF, images, and unicode. It loads from URLs or local assets. Caching is taken care of and performance is fast.
End-to-end Encryption (E2EE)
End-to-end encryption is a communication system where only the communicating users can read messages sent and received within the encrypted channel.
Enterprise SaaS customers often have high expectations, and they need a product that can scale big and fast. They need products that are fully customizable with support that they can rely on. Understand the challenges and considerations of the enterprise SaaS business model before you start building the product.
Every API request that describes the error messages returns HTTP status codes.
An event is an update sent to the client from the API to keep the client up to date. Examples of events are new messages, new user images, or a new member joining a channel.
Explainable AI is an AI service whose outputs can be explained, and all processes and machine learning are accessible to be analyzed.
Fan-out is a messaging pattern where messages are broadcast in a one-to-many arrangement. A basic example of this pattern can be seen in the functionality of a Publish/Subscribe messaging system, as Pub/Sub implies the ability to route messages from a single sender to multiple receivers.
FastAPI is an API framework written in Python for GET and POST requests. These requests follow OpenAPI convention and simplify the development process. JSON Web Tokens are pre-loaded in FastAPI and create unique user tokens based on UUID, email, and password.
Use Feed APIs to outsource comprehensive feed features without having to manage data or storage internally.
File Transfer Protocol (FTP)
FTP is the standard protocol between client and server. The client will send a request to the server using a specified URL. Clients make requests via browser or application and can have methods such as GET or POST and information within the body. The URI path defines where the server is located and sends all data associated with the request. Once the server receives the request, it gets a response with a status code.
Use filters when returning results with query endpoints. You can query using the custom fields you've defined on the object you are querying, as well as built-in fields.
If a user sees or receives an inappropriate message, they can flag that message. The chat moderator is then notified of the content that has been flagged for their review and can make a judgment on what action to take next based on the contents of the chat.
The Flutter Chat Messaging SDK includes both a low-level SDK and reusable UI components bundled together in a simple sample app. Build a fully functioning Flutter mobile chat app with support for rich messages, reactions, threads, image uploads and videos.
Function as a Service (FaaS)
Functions can be outsourced and added to production code by executing functionality at an edge server. Add FaaS as microservices or simple functions within microservices.
A gaming interface allows users to interact with game functionality. Users can navigate through the game console and make selections or choices based on the options through the UI.
General Data Protection Regulation (GDPR)
GDPR is a law maintained by the European Union to protect user-information stored electronically. The scope of GDPR extends to the transfer of data in or out of the EU as well.
Geocoding (also known as forward geocoding to distinguish it from reverse geocoding) is the process of converting addresses (e.g. a house number, street name, zip code), into geographic coordinates (latitude and longitude).
A Geolocation API is a communication interface between a client device or application (client-side), and an application or service (server-side) that identifies and returns information about the client’s geographical location.
GET is a common method used in HTTP requests to retrieve data from a server.
Ghost retail is a new eCommerce term that refers to an on-demand marketplace or retail business with a brick-and-mortar location to fulfill online orders and deliveries but is not customer-facing.
Health Insurance Portability and Accountability Act (HIPAA) ensures the protection and confidentiality of protected health information (PHI).
HTTP/2 is the new version of HTTP (Hypertext Transfer Protocol), superseding HTTP/1.1 with several optimizations designed to improve the speed of web communications.
The Hypertext Transfer Protocol is an application protocol for distributed, collaborative, hypermedia information systems that allow users to communicate data on the World Wide Web.
HTTP Live Streaming (HLS)
HTTP Live Streaming (HLS) is a protocol developed by Apple that leverages HTTP to deliver media files in small chunks to reduce buffering and lower latency.
An HTTP request is a message sent by a client using a browser via mobile device or desktop. Submissions can contain methods such as GET or POST and information within the headers or body. The request routes to a specific server identified by the URL path.
An HTTP response is returned by a server that contains information or data requested by the client. Responses will include a status code, depending on the type of validation of the request.
HTTP Status Code
An HTTP status code includes a response based on the request made by the user. As the name suggests, status codes can offer insight into what may happen behind the scenes. For example, 200 status is ‘OK,’ however 401 states ‘Forbidden,’ indicating that the user’s credentials may not be correct.
HTTP Streaming is a push-style data transfer technique that allows a web server to continuously send data to a client over a single HTTP connection that remains open indefinitely.
In-app messaging is real-time messaging within an app or web application. In-app messaging allows users to communicate 1:1 for private chat and larger group chats with multiple users.
Infrastructure as a Service (IaaS)
IaaS providers manage datacenter infrastructure, offering optimal scalability and financial flexibility. Developers only pay for the storage needed and never worry about performance as the company grows or changes, alleviating the hassle of managing physical servers or other data storage systems.
The iOS Chat SDK is highly flexible, customizable and optimized for performance.
IP Messaging allows different types of devices to communicate with each other through the internet, including sending and receiving messages that contain text, media, and interactive links.
The variation in the delay of packets transmitted continuously over a network should be less than 30ms.
A jitter buffer is a useful addition to your app if voice or video calling is a core feature. It helps to improve the audio quality of calls over the internet, improving the experience for your users.
JSON Web Token (JWT)
A JSON Web Token is an encoded JSON object used for security and user verification. Payload information is only decrypted for verified users and stores a unique signature for each permitted user.
Key Performance Indicator (KPI)
A KPI is a measurable value that indicates how well an application is performing against its goals, such as user engagement, user retention, or customer satisfaction.
Chat messages can be translated on-demand or automatically, this allows users speaking different languages on the same channel. The source language is inferred from the user language or detected automatically by analyzing its text.
Latency is the delay before a transfer of data begins following an instruction for its transfer.
A limit is a parameter that sets a cap on the number of results that will return from an endpoint.
Live Streaming is the ability for users to observe different forms of media in real-time. As a source uploads content, users simultaneously receive packets of information without saving vast amounts of data. They can watch live videos or listen to music seamlessly without overloading local data storage.
A member is a user role associated with a specific channel, typically granted more permissions than a non-member user.
Message Markup Language (MML)
Message Markup Language (MML) is a standardized syntax used to structure and format messages in a variety of contexts, providing a flexible and powerful toolset for enhancing the content and visual appeal of messages in messaging systems and platforms.
Message reactions allow you to “react” to specific messages within a chat. Common examples are likes, comments, loves, etc. Reactions can be customized so that you are able to use any type of reaction your application requires.
A message is text posted by one user into a channel for other users to view. Messages can have attachments (i.e., audio, video, image, and text).
Messaging API refers to any service that enables developers to implement messaging technologies in an application via a single programmable interface.
The SaaS industry is flourishing and growing year after year. This is thanks to the adaptation of new cloud technologies and the rise of no-code tools, which have created a nourishing soil for ideas to grow. And now there’s a new player in the game — micro SaaS. Micro SaaS business models provide limitless growth and ownership opportunities for solopreneurs looking to create a solution for a niche audience.
Moderation is the ability to oversee and mitigate unwanted or aggressive content. Automated systems like Chatbots can automatically detect unwanted language and censor the specific content without completely removing the message.
Monthly Active Users (MAU)
MAU is often considered a billing metric that reflects the total number of users who have connected to your chat apps over the month.
MPEG-DASH is a video streaming protocol that leverages adaptive bitrate streaming to deliver live and on-demand video content that can be encoded at different bitrates from web servers to viewers' devices.
Multi-Access Edge Computing (MEC)
Multi-access edge computing is a standardized network architecture proposed by the European Telecommunications Standards Institute (ETSI) as a way to enhance the capabilities of mobile and wireless networks.
Chat infrastructure that offers customer support on a regional basis. Ex. us-east-1, ap-northeast-1, ap-southeast-1, and eu-west-1.
Multi-tenancy is the method of storing and retrieving user information simultaneously on a single server. User groups, otherwise known as “tenants,” are separated logically and have confined access to any other tenants.
Any user should be allowed to mute another user. This means that they will still receive messages from them, but will not be notified or see them. The power rests with the user, and they can view muted messages when and if they so choose.
Network Device Interface (NDI)
NDI® is an internet video transmission protocol that dictates how multiple devices connect and share large amounts of data with minimal lag. To put it more simply, NDI is the standard that allows for high-quality live streams that rely on more than one source of video and audio.
Non-relational databases do not organize information by tables. These databases can use various indexing methods and can be a faster alternative since queries don’t require referencing multiple tables to find information. Data can be arranged “side-by-side” and allow for organizational flexibility.
Open Graph (OG) Protocol
Open Graph protocol facilitates developer simplicity by providing a universal protocol for cross-platform use. We can define the title, type, image, and URL with metadata, thus creating a graph object based on the information provided. Each entity within the page can function the same way, significantly minimizing repetition.
In addition to filtering and sorting, options are another tool to organize and filter data with query channels. Examples include watching the channel and limiting the number of channels or messages returned.
Traditional default chat configuration provides elevated permissions to the owner of a channel, message, or user. For example, you can delete your message or update your name or profile.
On average, transmit data packets do not arrive at their destination 1-2.5% of the time.
PCI DSS Compliance
The Payment Card Industry Data Security Standard (PCI DSS) is a strict compliance measure any company that accepts, processes, stores, or transmits cardholder data (CHD) must meet.
Platform as a Service (PaaS)
A digital environment that reads and executes code. As the platform runs the code, an interface will display the returned information or response.
POST is a common method used in HTTP requests to write data to a server when submitting forms or uploading large files.
Postgres is a relational database that can store, access, and manipulate object data. You can reference objects in Postgres by using queries, as well as data relationships. Relationships are defined by a foreign ID that points directly to the ID of another object.
Pre-active moderation prevents harmful content from ever reaching or impacting other users; technology rather than human moderators accomplish this. Platforms can employ blocklists to identify offensive language in message drafts and stop them from being sent.
Privacy Shield Certification (PSC)
The Department of Commerce oversees PSC and affirms compliance with Privacy Shield Standards annually.
A private channel is only visible to its participants and will decrease channel synchronization time at client start.
A private cloud is a separation of organizations using cloud computing across one or multiple servers. Build the cloud to access specific services or information that authorized users can only view. Within the organization, you can make a further logical separation for sensitive information.
A programming algorithm is a set of directions for a specific function within computing. Optimize algorithm outputs for performance based on specified inputs.
A programming framework is a flexible system that allows for software development in specific programming languages. Frameworks come with base functionality that can be added to or modified to meet the application’s needs.
A programming language is nearly identical to a spoken language. In programming, language is a way to arrange text to develop software. Various languages use different syntax for methods, functions, and data types. Many programming languages are derived from older or outdated versions, so there can also be similarities between languages.
Protected Health Information (PHI)
PHI is enforced under HIPAA by the Department of Public Health. It identifies certain patient information as protected by law and to only be viewed by authorized parties during medical consultations.
Channels are used for conversations between users. A public channel is seen and can be joined by non-members. Additionally, the public channel, along with its members and messages, is visible to every client endpoint in a given service SID. This means that synchronizing channels lists on client start may take more time when you have a large number of public channels.
Bits sent. A higher publish bitrate uses more bandwidth to improve quality. Lower the bitrate to reduce bandwidth and buffering.
Publish-Subscribe is a software design pattern that describes the flow of messages between applications, devices, or services in terms of a publisher-to-subscriber relationship.
Push notifications are messages that prompt an app user to take a desired action.
Quality of Experience (QoE)
Quality of experience is a holistic way to assess specific customer experiences with a brand and measure their satisfaction.
A query is a request for data or information from a database table or combination of tables.
Random Access Memory (RAM)
RAM is live or “working” data and can be accessed immediately from any physical location within your computer. The information can be read or written in any order and “accessed randomly.”
The React Native Chat SDK makes it easy to build in-app chat like iMessage, Telegram or Slack. Stream's React Native SDK is feature packed with rich messages (URL previews, user mentions, chat commands), reactions, threading, image & file uploading, and videos.
Reactive moderation responds to harmful content after users share it on a platform. This method typically relies on human moderators to monitor chat channels, and user reports to be actioned by moderators or administrators of the forum.
Real-time chat is a messaging service for applications that allow users to communicate in real-time.
Real-time data is information sent live from one source to another. An event will trigger a response and must guarantee that response within a specified timeframe, otherwise known as a “deadline.”
Real-Time Messaging Protocol
RTMP or Real Time Messaging Protocol is a proprietary system that is utilized for streaming live video feeds to devices running Flash.
Real-Time Streaming Protocol (RTSP)
Real-Time Streaming Protocol (RTSP) is a network protocol that combines transcoding and programming to transfer video streams over the Internet.
Redis is an in-memory database that parses Rapid Access Memory (RAM) for faster response times. By caching data in RAM, data is available instantaneously instead of disk storage, where information needs to be retrieved first.
You connect to Stream’s global edge network based on your local position at the time of the call.
The regional setting indicates the location of your chat app on the AWS infrastructure. Selecting the correct place for your app is critical; otherwise you might experience latency issues. You should also align your customer base with your regional setting.
A relational database stores object-based information and uses associations to pass data along.
Representational State Transfer (REST)
REST is a formatting convention used for reading, writing, and updating objects. Developers that follow this convention refer to routes “RESTful.” Developers use this as a way to simplify readability when multiple individuals are writing to the same codebase.
Rich Text Format
RTF is a document format that encodes formatted text and graphics for use in word processing documents and emails. It supports text formatting options like font styles, sizes, colors, and text alignment, as well as the insertion of images, tables, and other graphics. RTF files can be opened and edited in many word processing applications.
RocksDB is a high-performance database using key-value pairs for faster data writing and storage. RocksDB focuses on applications that require low-latency access to data, such as real-time messaging queues or graph queries.
Roles determine the permissions of end-users and staff members at the application level. Examples of roles are Admin, Guest, User, Anonymous, etc.
Secure Reliable Transport Protocol (SRT)
Secure Reliable Transport Protocol (SRT) is a video streaming and technology stack designed to connect two devices and deliver low-latency video and other media across any network conditions.
Selective Forwarding Unit (SFU)
A Selective Forwarding Unit (SFU) leverages transport protocol (UDP or TCP) and a server to route multimedia live streams to viewers in real time.
Sendbird offers a messaging platform.
A server is a physical or cloud storage system for functionality for other devices. The term comes from the idea that information is being “served” to its client. The server will receive some requests from the client and return a response.
Outsourced computing services provide developers with production-ready tools to optimize applications. These services include Software as a Service (SaaS), Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Functions as a Service (FaaS). Cloud services can provide engineers with a fast, flexible alternative to in-house development.
Instead of a default ban, you can shadowban users from a channel, set of channels, or an entire app. When a user is shadowbanned, they will still be allowed to post messages, but any message sent during the shadowban will only be visible to the message's author and invisible to other users of the app.
Microsoft ASP.NET developed SignalR, a software library that utilizes traditional HTTP connections that allow real-time connectivity between server and clients.
When you want to send a system, administrative, or transactional message, you may not always want to instantly alert the user or change the unread message count on a conversation. Silent Messages can be sent to a recipient without an “unread” notification appearing on their end.
Simulcast refers to the transmission of media through multiple concurrent signals to share content to more than one channel simultaneously.
Slash commands get their name due to the “slash” added before the command is used. Slash commands are associated with a web service and designed to make an HTTP request to the service provider.
Smart Notifications is a relatively new concept used to describe the various techniques designed to make real-time, push-style messaging (such as Push Notifications) more relevant, useful, and appropriate for individual users.
SMS (Short Message Service)
SMS (Short Message Service) is a way to send short, 160-character text messages from one mobile device to another over the cellular telephone network.
Social messaging is an application or platform that allows users to chat independently or in groups. You can utilize social messaging as chat messaging or feeds delivered to clients in real-time.
Software as a Service (SaaS)
SaaS is an outsourced option for developers who want to use services like our Chat API or Feeds but may not have the resources to build the functionality themselves. SaaS is offered on a term basis, and subscribers commonly have several plan options depending on what features they’re looking for. SaaS is a lightweight option as opposed to storing data on servers managed by the SaaS provider. SaaS can be an excellent solution for developers looking to provide their users a feature-rich experience without extending time to market.
Software Development Kit (SDK)
SDKs are created for developers to quickly and easily integrate services into their existing applications. SDKs are custom-built and offered for specific platforms and frameworks. These kits can consist of infrastructure services as well as front-end kits for UI development.
Sort is a parameter you can apply to queries. The sort function increases query options and flexibility. You can sort by field and direction or sort using multiple options. You can sort by parameters like last_updated or unread_count.
A STUN server (Session Traversal Utilities for NAT) is a type of server used in networking to help devices behind NAT (Network Address Translation) firewalls communicate more effectively with devices on the internet.
Bits received. A higher subscribe bitrate improves quality with more bandwidth, and a lower bitrate reduces bandwidth usage and buffering.
Support is typically a team of engineers focused on customer success and helping with any integration blockers or questions you may have.
Teams are associated with a user or channel using the multi-tenancy feature. In a B2B use case, each team would typically be composed of customers.
Telemedicine is the method of performing healthcare services electronically. Common platforms for telemedicine include mobile applications and websites that offer chat or video appointments with healthcare professionals.
A thread is a secondary or alternative conversation that stems from a comment within a greater conversation. Comments or posts in a conversation can branch off by creating a new thread, and users can join in for further discussion.
Tokens authenticate users/the client when a user signs onto a chat app. These tokens are created server-side.
A TURN server is a system that allows different devices to share data using the WebRTC protocol.
Two-factor authentication (multi-factor)
Multi-factor authentication is a security protocol requiring users to verify their identity by using two or more devices registered to that user.
Typing indicators allow you to show to users who are currently typing in the channel. This feature can be switched on/off on a channel-type basis using the CLI or directly from the Dashboard.
When enabled, messages containing URLs will be enriched automatically with image and text related to the message.
URL unfurling is the complete breakdown of a URL into independent segments. You can repurpose these segments as Open Graph objects for simplified development techniques.
Users are unique visitors to your chat app.
User engagement is the measurement of how a user spends their time on a site. Improved user engagement will keep users engaged longer and increase time spent on the site or application.
User Experience (UX)
User experience is determined by the design and logic of an app. User experience can be leveraged to drive conversions or point users towards a specific page.
User Generated Content (UGC)
User-generated content (also known as UGC or consumer-generated content) is original, brand-specific content created by customers and published on social media or other channels. UGC comes in many forms, including images, videos, reviews, a testimonial, or even a podcast.
The five default channel types (commerce, gaming, messaging, livestream, and team) come with different default permission policies preconfigured to best fit one use-case. For example, one of the default permission policies for the 'messaging' channel type "only allows users with a moderator or admin role to ban another user".
User presence allows you to show when a user was last active and if they are online right now. Whenever you read a user the data will look like this: The online field indicates if the user is online. The status field stores text indicating the current user status.
Video Freeze Rate
The total length of a video pause. To calculate your video freeze rate: (The sum of video freezing duration per unit time / total audio duration per unit time) × 100%.
A watcher is a user who subscribes to updates on a channel (new messages, etc.). Being a watcher doesn't imply membership; for example, a non-member can watch a Livestream channel-type and is considered a watcher.
A webhook is a service that can be built into an application to run when triggered by an event or update in real-time. These services run behind the scenes and call external applications built, maintained, and operated by third-party providers.
WebRTC is an open-source video streaming protocol that enables real-time multi-media streaming simply by opening a webpage—no additional plug-ins required.
Websockets facilitate ongoing communication between a client and server without requiring users to request updates. This communication protocol uses event-driven notifications and allows users to communicate in real-time.
XMPP (Extensible Messaging and Presence Protocol) is an open-source, decentralized messaging protocol born from Jabber, an early real-time chat protocol.
YAML is a human-readable data serialization language that is commonly used to create configuration files for software applications. It is designed to be easy to read and write, and is often used as an alternative to XML and JSON. YAML files use a simple syntax that consists of key-value pairs, lists, and nested structures, making it easy to organize and manage complex data. YAML is widely used in the software development community for its simplicity and versatility, and is particularly popular for configuration management tools like Ansible, Docker, and Kubernetes.
A zombie thread is a thread in a chat platform or application that remains active even after the user has closed or exited the application, often leading to performance issues or other problems.