Esegui più istanze di widget sulla stessa pagina con contenitori, eventi e API di istanza isolate. Usa ID di istanza unici per caricare configurazioni diverse affiancate (ad esempio vendite + supporto) senza collisioni.
Alcune applicazioni hanno bisogno di più di un widget alla volta. I siti di e-commerce multi-marca potrebbero visualizzare widget per diverse categorie di prodotto, e le piattaforme di supporto potrebbero eseguire widget separati per vendite e supporto tecnico. Il supporto multi-widget è ora disponibile tramite incorporamento basato su istanza e API per ogni istanza.
data-instance-id unicodata-config-id diversi per istanza quando necessariocompanin-widget-container-<instanceId> / companin-docs-widget-container-<instanceId>)Questo consente a più widget indipendenti di coesistere su una pagina senza sovrascriversi a vicenda.
Usa ID di script unici e ID di istanza per ogni istanza di widget:
<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>
Usa le API del registro per mirare a istanze specifiche:
const sales = window.CompaninWidgets?.get('sales-widget');
const support = window.CompaninWidgets?.get('support-widget');
sales?.sendMessage('Mostra le offerte attuali');
support?.sendMessage('Ho bisogno di aiuto tecnico');
window.CompaninWidgets?.list();
window.CompaninWidgets?.destroy('support-widget');
Le istanze del widget Docs utilizzano un registro parallelo:
window.CompaninDocsWidgets.get(id)window.CompaninDocsWidgets.list()window.CompaninDocsWidgets.destroy(id)Le integrazioni esistenti continuano a funzionare. window.CompaninWidget e window.CompaninDocsWidget puntano ancora all'istanza più recentemente inizializzata, mentre le API del registro forniscono un targeting multi-istanza deterministico.