___TERMS_OF_SERVICE___ By creating or modifying this file you agree to Google Tag Manager's Community Template Gallery Developer Terms of Service available at https://developers.google.com/tag-manager/gallery-tos (or such other URL as Google may provide), as modified from time to time. ___INFO___ { "type": "TAG", "id": "cvt_temp_public_id", "version": 1, "securityGroups": [], "displayName": "Moengage initialisation tag", "brand": { "id": "brand_dummy", "displayName": "", "thumbnail": "data:image/png;base64,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\u003d\u003d" }, "description": "This tag will add Moengage web SDK into your website", "containerContexts": [ "WEB" ] } ___TEMPLATE_PARAMETERS___ [ { "type": "TEXT", "name": "app_id", "displayName": "App ID", "simpleValueType": true, "valueValidators": [ { "type": "NON_EMPTY" } ], "help": "Enter the app App ID found in your Moengage Dashboard" }, { "type": "SELECT", "name": "debug_logs", "displayName": "Debug Logs", "macrosInSelect": false, "selectItems": [ { "value": 0, "displayValue": "0" }, { "value": 1, "displayValue": "1" } ], "simpleValueType": true, "defaultValue": 0 }, { "type": "TEXT", "name": "cluster", "displayName": "Data center", "simpleValueType": true, "defaultValue": "DC_1" }, { "type": "TEXT", "name": "swPath", "displayName": "Serviceworker custom path", "simpleValueType": true }, { "type": "TEXT", "name": "swScope", "displayName": "Serviceworker scope", "simpleValueType": true }, { "type": "CHECKBOX", "name": "disable_onsite", "checkboxText": "Is Onsite-Messaging disabled?", "simpleValueType": true, "defaultValue": false }, { "type": "CHECKBOX", "name": "enableSPA", "checkboxText": "Is SPA enabled?", "simpleValueType": true, "defaultValue": false }, { "type": "CHECKBOX", "name": "enableWebpV2", "checkboxText": "Enable Web Personalization", "simpleValueType": true }, { "type": "TEXT", "name": "cards", "displayName": "Cards Config (in JSON)", "simpleValueType": true } ] ___SANDBOXED_JS_FOR_WEB_TEMPLATE___ // Enter your template code here. const log = require('logToConsole'); const queryPermission = require('queryPermission'); const injectScript = require('injectScript'); const callInWindow = require('callInWindow'); const JSON = require('JSON'); const cluster = data.cluster || 'DC_1'; const url = "https://cdn.moengage.com/release/" + cluster.toLowerCase() + "/moe_webSdk.min.latest.js"; const message = 'Moengage: '; const onSuccess = () => { if(data.cards) { data.cards = JSON.parse(data.cards); } callInWindow('moe', data); if(data.enableWebpV2) { const webPURL = 'https://cdn.moengage.com/release/' + cluster.toLowerCase() + '/moe_webSdk_webp.min.latest.js?app_id=' + data.app_id + '&cluster=' + data.cluster; injectScript(webPURL, () => { data.gtmOnSuccess();}, onFailure, webPURL); } else { data.gtmOnSuccess(); } }; const onFailure = (err) => { log(message, 'Error loading Moengage Web SDK from ' + url, err); data.gtmOnFailure(); }; if (queryPermission('inject_script', url)) { injectScript(url, onSuccess, onFailure, url); } else { log(message, "Load script " + url + " failed due to permissions mismatch!"); } ___WEB_PERMISSIONS___ [ { "instance": { "key": { "publicId": "logging", "versionId": "1" }, "param": [ { "key": "environments", "value": { "type": 1, "string": "debug" } } ] }, "clientAnnotations": { "isEditedByUser": true }, "isRequired": true }, { "instance": { "key": { "publicId": "inject_script", "versionId": "1" }, "param": [ { "key": "urls", "value": { "type": 2, "listItem": [ { "type": 1, "string": "https://cdn.moengage.com/*" } ] } } ] }, "clientAnnotations": { "isEditedByUser": true }, "isRequired": true }, { "instance": { "key": { "publicId": "access_globals", "versionId": "1" }, "param": [ { "key": "keys", "value": { "type": 2, "listItem": [ { "type": 3, "mapKey": [ { "type": 1, "string": "key" }, { "type": 1, "string": "read" }, { "type": 1, "string": "write" }, { "type": 1, "string": "execute" } ], "mapValue": [ { "type": 1, "string": "moe" }, { "type": 8, "boolean": true }, { "type": 8, "boolean": true }, { "type": 8, "boolean": true } ] }, { "type": 3, "mapKey": [ { "type": 1, "string": "key" }, { "type": 1, "string": "read" }, { "type": 1, "string": "write" }, { "type": 1, "string": "execute" } ], "mapValue": [ { "type": 1, "string": "Moengage" }, { "type": 8, "boolean": true }, { "type": 8, "boolean": true }, { "type": 8, "boolean": true } ] } ] } } ] }, "clientAnnotations": { "isEditedByUser": true }, "isRequired": true } ] ___TESTS___ scenarios: - name: Test whether the script has been successfully loaded code: |2- runCode(mockData); // Test whether the injectScript functions work properly assertApi('injectScript').wasCalledWith(scriptUrl, success, failure, scriptUrl); assertApi('gtmOnSuccess').wasCalled(); - name: Initializes successfully code: |- runCode(mockData); // Verify that the tag finished successfully. assertApi('callInWindow').wasCalled(); assertApi('gtmOnSuccess').wasCalled(); setup: |- const callInWindow = require('callInWindow'); const log = require('logToConsole'); const message = 'Moengage: '; const mockData = { app_id: '1234' }; const scriptUrl = 'https://cdn.moengage.com/webpush/moe_webSdk.min.latest.js'; let success, failure; mock('injectScript', (url, onsuccess, onfailure) => { success = onsuccess; failure = onfailure; onsuccess(); }); ___NOTES___ Created on 06/12/2023, 19:36:08