Skip to main content

Tell Fullview when your users contact support

A
Written by Alex

One line of code tells Fullview that a user reached out for help. Fullview's AI summaries then show whether the session ended with the user asking for help, providing helpful contextual analytics for product and support ops teams.

Without this, Fullview cannot see that a user opened your Intercom, Zendesk, HubSpot or Crisp chat. Those widgets run outside Fullview, so the summary can only guess.

With it, a summary can say, for example: "The session ended with the user contacting support via chat (Intercom) after 6 minutes on the billing page."

What Fullview records automatically

If your users ask for help through Fullview's own support widget, you do not need to do anything. Each successful request is recorded as a support contact.

This also covers your own button if it calls Fullview.requestSupport(). Failed requests are not recorded.

Nothing else is recorded automatically. Fullview does not watch third-party chat widgets or tel: / mailto: links on its own, because that produces false positives. For those, add the call below.

The API

Call Fullview.supportContacted() at the moment a user contacts support:

Fullview.supportContacted({ channel: 'chat', label: 'Intercom' });

Parameter

Required

Values

Notes

channel

Yes

chat, phone, email, form, other

Any other value is saved as other.

label

No

Free text, up to 100 characters

Shown in the session and the AI summary, e.g. "Intercom" or "Billing form".

The method is available on the in-page Fullview object and in the Fullview npm package. Calls made before the SDK finishes loading are safe and do nothing.

Do not confuse it with Fullview.requestSupport(). That method asks your team for a co-browse session. supportContacted() only records that the user asked for help somewhere else.

Connect your chat widget

Add one snippet after both Fullview and your chat widget load. Each widget reports a different moment, so the signal strength differs:

Widget

Event used

Records when

Signal

HubSpot

conversationStarted

A conversation starts

Strong

Crisp

message:sent

The user sends a message

Strong

Intercom

onShow

The Messenger opens

Weaker

Zendesk (messaging)

messenger:on 'open'

The widget opens

Weaker

Intercom and Zendesk only tell the page that the widget opened. A user who opens and closes it without writing also counts.

HubSpot

window.HubSpotConversations.on('conversationStarted', () =>   Fullview.supportContacted({ channel: 'chat', label: 'HubSpot' }) );

Crisp

$crisp.push(['on', 'message:sent', () =>   Fullview.supportContacted({ channel: 'chat', label: 'Crisp' }) ]);

Intercom

Intercom('onShow', () =>   Fullview.supportContacted({ channel: 'chat', label: 'Intercom' }) );

Zendesk (messaging widget)

zE('messenger:on', 'open', () =>   Fullview.supportContacted({ channel: 'chat', label: 'Zendesk' }) );

Vendor references: Intercom · Zendesk · HubSpot · Crisp

Contact forms, phone and email

Use the same call from your own code. Pick the channel that matches.

// Your own contact or ticket form form.addEventListener('submit', () =>   Fullview.supportContacted({ channel: 'form', label: 'Contact form' }) );  // A "Call us" link callLink.addEventListener('click', () =>   Fullview.supportContacted({ channel: 'phone', label: 'Support line' }) );  // An "Email us" link emailLink.addEventListener('click', () =>   Fullview.supportContacted({ channel: 'email', label: 'support@ inbox' }) );

Call it only when the user really takes the action, for example on form submit, not when the form appears. Each call counts as one support contact.

Check that it works

  1. Open your site in a normal browser window with Fullview running.

  2. Open your chat widget (or submit your form) and send a test message.

  3. In Fullview, open that session. The event list shows a row like "Contacted support via chat (Intercom)" under Clicks & visits.

  4. Search the session events for "support", the channel or the label to find it fast.

No row? Check that the snippet runs after both scripts load, and that the browser console shows no errors from the call.

FAQ

Does Fullview read the chat messages? No. Fullview only records that a contact happened, plus the channel and label you send. Message content never reaches Fullview.

What if I call it twice in one session? Each call is recorded. The summary looks mainly at whether a support contact was the last thing the user did.

I use a chat tool that is not listed. Most chat tools let your page run code when the chat opens or a message is sent. Call Fullview.supportContacted({ channel: 'chat', label: '<tool name>' }) from that event. Contact us if you need help.

Did this answer your question?