Kjør flere widget-instansene på samme side med isolerte containere, hendelser og instans-API-er. Bruk unike instans-ID-er for å laste forskjellige konfigurasjoner side ved side (for eksempel salg + støtte) uten kollisjoner.
Noen applikasjoner trenger mer enn én widget samtidig. Multi-merke e-handelssteder kan vise widgets for forskjellige produktkategorier, og støtteplattformer kan kjøre separate widgets for salg og teknisk støtte. Multi-widget støtte er nå tilgjengelig gjennom instansbasert innlekk og per-instans API-er.
data-instance-iddata-config-id verdier per instans når det er nødvendigcompanin-widget-container-<instanceId> / companin-docs-widget-container-<instanceId>)Dette gjør at flere uavhengige widgets kan eksistere på én side uten å overskrive hverandre.
Bruk unike skript-ID-er og instans-ID-er for hver widget-instans:
<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>
Bruk register-API-er for å målrette spesifikke instanser:
const sales = window.CompaninWidgets?.get('sales-widget');
const support = window.CompaninWidgets?.get('support-widget');
sales?.sendMessage('Vis nåværende tilbud');
support?.sendMessage('Jeg trenger teknisk hjelp');
window.CompaninWidgets?.list();
window.CompaninWidgets?.destroy('support-widget');
Dokumentasjonswidget-instansene bruker et parallelt register:
window.CompaninDocsWidgets.get(id)window.CompaninDocsWidgets.list()window.CompaninDocsWidgets.destroy(id)Eksisterende integrasjoner fortsetter å fungere. window.CompaninWidget og window.CompaninDocsWidget peker fortsatt til den sist initialiserte instansen, mens register-API-ene gir deterministisk multi-instans målretting.