Realtime API updates, better accessibility labels, and more
Create and get conversations and participants with the Realtime API ✨ preview ✨
The Realtime API provides you with a continuous, up-to-date flow of your TalkJS data without the need to send repeated requests or open a chat UI. And the options available on the Realtime API keep expanding. From version 0.27.0 of the JavaScript SDK, you can use ConversationRef.set, which allows you to set properties of a conversation and manage a user’s participation within it. Additionally, with ConversationRef.createIfNotExists you can streamline the process of creating a conversation if it doesn’t already exist, and to automatically add the current user as a participant if they aren't already one.
Version 0.28.0 then adds ParticipantRef, which allows you to reference a specific user's participation in a conversation. This can be useful for operations such as joining or leaving a conversation, or controlling a user’s access. In addition, ConversationRef.participant offers easy access to a participant reference within a conversation, while ConversationSnapshot.joinedAt provides the date and time (as a Unix timestamp in milliseconds) that a user joined the conversation. With these updates, you have even greater flexibility in accessing and managing conversation conversations and participants of your chat.
Changed
- The CloseButton, SearchButton and ActionMenu built-in components available in ChatHeader now accept a
label
prop that allows you to set your own label for these buttons. Setting your own label can be useful if you’d like to add your own custom translation for these labels. - The count of the number of unread messages a user has in a conversation is now capped at a thousand. A user can have more than a thousand unread messages, but the count won’t increase beyond a thousand.
- Users accessing TalkJS with multiple IDs on the same device can now manage their desktop notification preference settings separately, on a per-user basis.
Fixed
- Flutter SDK (0.13.1): Fixed a stack overflow issue when comparing sessions.
- Fixed issues where Flutter webview faced a build issue on Xcode 15 and Xcode 16/iOS 18.
- Fixed an issue where the conversation actions button in the chat header didn't have an
aria-label
andtitle
attribute set for screen readers.
New tutorial
👋 Thoughts? Questions? Get in touch.
✨Follow TalkJS on 𝕏 and LinkedIn to stay up to date.
👩🏾💻We’re hiring! Check out our jobs page.