CustomEvents on window so you can react to lifecycle and interaction without polling. For almost all integrations, these events plus the methods are all you need.
Every event includes these fields in event.detail:
Browser events
homiebot:opened and homiebot:closed fire for every open/close action — the launcher button, welcome bubbles,
window.homieBot.open() / .close() / .toggle(), and actions triggered from inside the chat.Message and response content, user identifiers, feedback text, and internal errors are never included in browser event
payloads.
Listen for the API
Fired oncewindow.homieBot is usable.
Listen for the assistant
Fired once the iframe is ready forsendMessage and getHistory.
Track a conversation funnel
Useful for forwarding interactions to analytics.Interaction payloads
Message sent
inputType is one of text, speech, suggestion, pdp-question, or api.
Message received
This event fires once for the complete response, including streamed responses.productCount is 0 when the response
does not contain product recommendations.
Chat reset
reason is one of manual, inactivity, or api. The chatId identifies the conversation that was cleared.
Product clicked
Theproduct object contains only gtin, brand, designation, and url.
Feedback submitted
rating is either like or dislike. Feedback reasons and free text are not exposed.