Skip to main content

REVE Chat GTM Event Listener

Track REVE Chat interactions in GTM. Monitor widget open, messages, co-browsing, video calls, and offline messages with revechat_type variable.

reve-chatvideo-chatco-browsingchatgtmga4support

Event fired

revechat_interaction

Key variable

revechat_type

Reve Chat

Overview

REVE Chat is a customer engagement platform with unique features including co-browsing, video chat, voice calls, and screen sharing in addition to standard live chat. This listener tracks all interaction types.

Event fired: revechat_interaction Variable: revechat_type

Tracked Events

revechat_typeDescription
chat openedWidget opens
chat closedWidget closes
chat startedConversation begins
message sentVisitor message
message receivedAgent reply
video chat startedVideo call initiated
voice call startedVoice call initiated
co-browse startedCo-browsing session starts
screen share startedScreen sharing starts
offline form submittedOffline contact
chat ratedSession rated

Installation

html
<!-- GTM Custom HTML Tag: REVE Chat Listener -->
<script>
(function() {
  function revePush(type, extra) {
    window.dataLayer = window.dataLayer || [];
    window.dataLayer.push(Object.assign({
      'event': 'revechat_interaction',
      'revechat_type': type
    }, extra || {}));
  }

  var initReve = function() {
    if (typeof window.REVE === 'undefined') return;
    REVE.on('open', function() { revePush('chat opened'); });
    REVE.on('close', function() { revePush('chat closed'); });
    REVE.on('chatStarted', function() { revePush('chat started'); });
    REVE.on('messageSent', function() { revePush('message sent'); });
    REVE.on('messageReceived', function() { revePush('message received'); });
    REVE.on('videoChatStart', function() { revePush('video chat started'); });
    REVE.on('voiceCallStart', function() { revePush('voice call started'); });
    REVE.on('cobrowseStart', function() { revePush('co-browse started'); });
    REVE.on('screenShareStart', function() { revePush('screen share started'); });
    REVE.on('offlineMessage', function() { revePush('offline form submitted'); });
    REVE.on('chatRating', function(data) {
      revePush('chat rated', { chatRating: data.rating });
    });
  };

  window.addEventListener('load', initReve);
})();
</script>

Data Layer Output

json
{
  "event": "revechat_interaction",
  "revechat_type": "co-browse started"
}

Trigger Configuration

Trigger Type: Custom Event Event Name: revechat_interaction

GA4 Mapping

Differentiate engagement types with revechat_type as a parameter:

GA4 EventConditionParameters
chat_widget_openchat openedchat_platform, engagement_type: "text"
chat_widget_openvideo chat startedchat_platform, engagement_type: "video"
chat_widget_openco-browse startedchat_platform, engagement_type: "cobrowse"

Related Listeners