Führen Sie mehrere Widget-Instanzen auf derselben Seite mit isolierten Containern, Ereignissen und Instanz-APIs aus. Verwenden Sie eindeutige Instanz-IDs, um verschiedene Konfigurationen nebeneinander (z. B. Vertrieb + Support) ohne Kollisionen zu laden.
Einige Anwendungen benötigen mehr als ein Widget gleichzeitig. E-Commerce-Websites mit mehreren Marken zeigen möglicherweise Widgets für verschiedene Produktkategorien an, und Supportplattformen führen möglicherweise separate Widgets für Vertrieb und technischen Support aus. Multi-Widget-Unterstützung ist jetzt verfügbar durch instanzbasierte Einbettung und instanzspezifische APIs.
- Laden Sie das Widget-Skript mehr als einmal auf derselben Seite
- Geben Sie jedem Skript einen eindeutigen data-instance-id
– Verwenden Sie bei Bedarf unterschiedliche data-config-id-Werte pro Instanz
– Jede Instanz wird in ihren eigenen Container gerendert (companin-widget-container-<instanceId> / companin-docs-widget-container-<instanceId>)
Dadurch können mehrere unabhängige Widgets auf einer Seite nebeneinander existieren, ohne sich gegenseitig zu überschreiben.
Verwenden Sie für jede Widget-Instanz eindeutige Skript-IDs und Instanz-IDs:
<script
id="companin-widget-script-sales"
src="https://widget.companin.tech/widget.js"
data-client-id="..."
data-agent-id="..."
data-config-id="sales-config-id"
data-instance-id="sales-widget"
></script>
<script
id="companin-widget-script-support"
src="https://widget.companin.tech/widget.js"
data-client-id="..."
data-agent-id="..."
data-config-id="support-config-id"
data-instance-id="support-widget"
></script>
Verwenden Sie Registrierungs-APIs, um bestimmte Instanzen anzusprechen:
const sales = window.CompaninWidgets?.get('sales-widget');
const support = window.CompaninWidgets?.get('support-widget');
sales?.sendMessage('Show current offers');
support?.sendMessage('I need technical help');
window.CompaninWidgets?.list();
window.CompaninWidgets?.destroy('support-widget');
Docs-Widget-Instanzen verwenden eine parallele Registrierung:
window.CompaninDocsWidgets.get(id)window.CompaninDocsWidgets.list()window.CompaninDocsWidgets.destroy(id)Bestehende Integrationen funktionieren weiterhin. window.CompaninWidget und window.CompaninDocsWidget verweisen weiterhin auf die zuletzt initialisierte Instanz, während die Registrierungs-APIs deterministisches Multi-Instanz-Targeting ermöglichen.