Two way chat component
Introduction
The 3B chat component is created as a way to easily visualise and facilitate communications with non-salesforce or external users. Available in 3B Onboarding v4.13+
Usage
System admins can embed the component on a community or on the Contact record page, after which, the component will allow the logged in user to send and view messages.
Extending Functionality
The component has been used with 3rd party SMS/Whatsapp integrations by simply utilizing the Chat Message record (b3o__Chat_Message__c) to facilitate the integration. One important thing to note is that a developer/administrator needs to create and manage these records and specifically set the Status (queued, success, error) and Type (inbound/outbound).
Two-Way Communication
If the component is embedded on the community, the community user will be able to send chat messages to internal users. Internal users can then send responses from the contact record associated with the community user.
Permissions and Security
Important thing to note is that the component ignores sharing and profile/permission set permissions. This is intentional and by design. The component relies on empApi through the message channel b3o__New_Chat_Message_Event__e (platform event) in order to issue requests to re-render the UI. If you need to re-render the UI, simply raise a new b3o__New_Chat_Message_Event__e platform event, and all subscribers will see an up to date chat history. Remember to grant access to the b3o__New_Chat_Message_Event__e object for the running user
Platform Event
The b3o__New_Chat_Message_Event__e allows you to request refresh of the chat component programatically in the back end