Set the mid (ECID) value from the query string

Avatar

Avatar

TomEdmondson

Avatar

TomEdmondson

TomEdmondson

15-02-2021

Hi All,

 

I want to set the mid value from the query string where available for example; www.test.com?mid=2345678965456546765438697054533

 

I have been testing is function in the console and I get an error "visitor is not defined" so I must not be writing it correctly.

 

(function(w) {
w.URLSearchParams = w.URLSearchParams || function(searchString) {
var self = this;
self.searchString = searchString;
self.get = function(name) {
var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(self.searchString);
if (results == null) {
return null;
} else {
return decodeURI(results[1]) || 0;
}
}
;
}
}
)(window);
var urlParams = new URLSearchParams(window.location.search);
if (urlParams.get('mid') != null)
visitor.setVisitorId(urlParams.get('mid'));

 

var urlParams = new URLSearchParams(window.location.search);

if (urlParams.get('mid') != null)

visitor.setMarketingCloudVisitorID(urlParams.get('mid'));

 

When I write _satellite.getVisitorId().getMarketingCloudVisitorID() I do get the mid value so I know it is being set.

 

I would plan to write this into Launch if successful but I am not sure what order stuff would load in.

 

Thanks in advance for any advice.

ECID ECID Cross Domain ITP
View Entire Topic

Avatar

Avatar

yuhuisg

MVP

Avatar

yuhuisg

MVP

yuhuisg
MVP

19-02-2021

My understanding is that ECID can't be set "externally". It is set purely from callbacks with Adobe's own API calls.