Developer cookbook

Chat embed cookbook - CodeB native chat inside your app.

CodeB tenants ship a first-class chat surface at chat.html - DMs, group chats and meeting threads, stored per-tenant on the same domain as the softphone and meeting rooms. Embed it in three lines. European Digital Identity Wallet compatible: the visitor signs in through the tenant OIDC provider (or European Digital Identity Wallet via logineu.html) before the chat mounts.

See also: 6 embed recipes

IntegrationMechanismBest forSnippet
iframe embedchat.html iframeZero-code drop-in on any HTML page.iframe-embed.html
Popup windowwindow.openSticky chat button, opens beside app.popup-open.js
React wrapperiframe componentReact SPAs.chat-embed-react.jsx
Vue wrapperiframe componentVue 3 SPAs.chat-embed-vue.js
Angular wrapperiframe componentAngular SPAs.chat-embed-angular.ts
WordPress shortcodePHP pluginWordPress sites; no JavaScript wiring.chat-embed-wordpress.php

Authentication model

The embedded chat is session-authenticated. When chat.html loads without a valid tenant session cookie, it redirects to /login.html (or /logineu.html for European Digital Identity Wallet sign-in) and returns to chat after successful auth. No Bearer token is passed through the iframe URL.

RASP posture

All chat traffic goes through chat.ashx with IpAllowGate, per-tenant isolation, and loud [CHAT-*] + [CHAT-DIAG] diagnostics at every branch. Cross-tenant access is impossible - messages are keyed by tenant domain.

NIS2 / DORA / CRA

Chat retention, message export and audit trails follow the same per-tenant JSON-in-App_Data pattern as calls. NIS2 incident detection and DORA operational-resilience monitoring flow through the same log pipe consumed by the SIEM cookbook. Chat is filesystem+JSON per tenant, no database.

FAQ

Structured answers embedded in the schema block above.