Question

After upgrading to the latest Tealium SDK, I can see an additional hit to the Tealium Collect tag with type "remote_api". What is causing this?

Answer

Overview

This is related to the Custom Remote Command tag (formerly TagBridge functionality in the Tealium SDKs, and all tags (with the exception of the Tealium Collect tag) will ignore this additional call. The additional call will not affect your iQ deployment in any way, and you can ignore it, unless you specifically need to use this functionality. If you are using the Tealium Collect tag, you will notice an additional hit each time you trigger an event or view, but this will not impact any other tags.

What's new?

Beginning in v5.0 of the Android SDK and v 5.0.2 of iOS, we introduced a feature that allows some commands to be fired whilst the device is offline. This is useful if you have any custom integrations that make use of the Custom Remote Command tag (formerly TagBridge) functionality in the iOS and Android SDKs to communicate with third party native SDKs in your app.

What's changed since v4?

In v4 of the SDKs, Tealium would always store hits in a queue while the device was offline, and then send all that data once connectivity returns. This is fine for most tags, but some native SDKs have their own offline functionality (especially Analytics SDKs) and need to receive API calls immediately while the device is offline, often for the purposes of calculating time-sensitive metrics.

Implementation

To make this possible, for each view or event call you make to the Tealium SDK, an additional event will be generated inside the Tealium web view, with type "remote_api" (distinct from "link" and "view"; effectively, this is the same as utag.track("remote_api",{});). Most tag templates explicitly only support "link" or "view" events (or both), so they will simply ignore the "remote_api" event. If you need to use this event, which is generally only for the Custom Remote Command tag (formerly TagBridge) Custom Command tags, then you can modify the line:

u.ev={link:"1", view:"1"}

to:

u.ev={link:"1", view:"1", remote_api:"1"}

In the case of the Tealium Collect tag, it is already configured to listen for ALL event types, which is why you can see this event by default, even if you have not made any changes.

Gotchas

The remote_api call will only work for tags that have previously been loaded into the web view, since it's not possible to download new JavaScript files while the device is offline. In general, this means it will only work if the tag is bundled into utag.js, or if the tag has an "All Pages" load rule. If the tag has another load rule, but it had been triggered previously while the device was in the online state, this should also work.

Version history
Revision #:
6 of 6
Last update:
‎10-03-2019 01:34 PM
Updated by: