JSFiddle - React, Tailwind, and code Playground

by Anupama

HTML

<div id="result"></div>
<div id="log"></div>
<div id="custom">
    var str='new window.inmobi.Imai({"lp":"388924198","ct":["http://www.xyz.com?cocaineId\u003d8C3436B2-C199-4554-9B4B-143B319431DE\u0026extraId\u003dextraValue\u0026device_ip\u003d103.251.108.4\u0026user_agent\u003dMozilla%2F5.0+%28iPhone%3B+CPU+iPhone+OS+7_1_2+like+Mac+OS+X%29+AppleWebKit%2F537.51.2+%28KHTML%2C+like+Gecko%29+Mobile%2F11D257\u0026ex\u003dexV","http://c.w.inmobi.com/c.asm/C/b/3e56/16fg/g/22/he/u/0/0/0/eyJVSUQiOiI4QzM0MzZCMi1DMTk5LTQ1NTQtOUI0Qi0xNDNCMzE5NDMxREUiLCJJRFYiOiJmNDc3Njg1ZGE2Y2M4N2JjNmJmOWQ2NGJhZmRkODU5NyIsIlNPMSI6IjJmNTY3MmNiNzY2OTFiOTg5YmJkMjAyMmE1MzQ5OTM5YTJkN2I5NTIiLCJJREEiOiI4QzM0MzZCMi1DMTk5LTQ1NTQtOUI0Qi0xNDNCMzE5NDMxREUiLCJPMSI6ImMxOTc2NDI5MzY5YmZlMDYzZWQ4YjM0MDlkYjdjN2U3ZDg3MTk2ZDkiLCJJWCI6ImRiMWEyNTc4Y2NlMDBjNGYwYzY5M2Y0MmM1MDc1NDM0In0~/a96f65ea-0149-1000-e960-42653c3a0067/i370/0/-1/1/0/x/8221408/NW/2t/0/sdk/3.7.0/dir/Y29tLmlubW9iaS5pMzcw/6/155b6a02?at\u003d2\u0026am\u003d5","https://c.appsdt.com/click/phoenix/2d19f68b-0abd-41ea-a1f4-eac05db3cab8?clickId\u003da96f65ea-0149-1000-e960-42653c3a0067\u0026ts\u003d$TS\u0026uhe\u003d0\u0026at\u003d2\u0026am\u003d5sa\u003d1"],"bcu":"http://et.w.inmobi.com/c.asm/C/b/3e56/16fg/g/22/he/u/0/0/0/eyJVSUQiOiI4QzM0MzZCMi1DMTk5LTQ1NTQtOUI0Qi0xNDNCMzE5NDMxREUiLCJJRFYiOiJmNDc3Njg1ZGE2Y2M4N2JjNmJmOWQ2NGJhZmRkODU5NyIsIlNPMSI6IjJmNTY3MmNiNzY2OTFiOTg5YmJkMjAyMmE1MzQ5OTM5YTJkN2I5NTIiLCJJREEiOiI4QzM0MzZCMi1DMTk5LTQ1NTQtOUI0Qi0xNDNCMzE5NDMxREUiLCJPMSI6ImMxOTc2NDI5MzY5YmZlMDYzZWQ4YjM0MDlkYjdjN2U3ZDg3MTk2ZDkiLCJJWCI6ImRiMWEyNTc4Y2NlMDBjNGYwYzY5M2Y0MmM1MDc1NDM0In0~/a96f65ea-0149-1000-e960-42653c3a0067/i370/0/-1/0/0/x/8221408/NW/2t/0/sdk/3.7.0/dir/Y29tLmlubW9iaS5pMzcw/6/94af82f3","ns":"im_2670_","lpom":5,"fbom":3});'

</div>

JavaScript

function getDeviceId() {
    var rawHtml = document.documentElement.innerHTML;
    var ctRegEx = /ct\" *\: *\[(.+)\]/;
    var regEx = /cocaineId\=(.+)\&extraId\=extraValue\&device_ip\=(.+)\&user_agent=(.+)\&ex\=exV/;
    var deviceId = device_ip = user_agent = "";
    var ctMatches, matches, decodedMatches;

    ctMatches = ctRegEx.exec(rawHtml);
//    decodedMatches = ctMatches[0].replace(/\\u003d/g, "=").replace(/\\u0026/g, "&");
    debugger;
    decodedMatches = decodeURIComponent(ctMatches[0]);
    matches = regEx.exec(decodedMatches);
    if (matches && matches.length > 0) {
        deviceId = matches[1];
        device_ip = matches[2];
        user_agent = matches[3];
    }
    document.getElementById("result").innerHTML = "v3 deviceId : " + decodedMatches + ", device_ip : " + device_ip + ", user_agent : " + user_agent ;
    return deviceId;
}

var deviceId = getDeviceId();