diff --git a/integrationExamples/gpt/liveIntentAnalyticsAdapterExample.html b/integrationExamples/gpt/liveIntentAnalyticsAdapterExample.html
new file mode 100644
index 00000000000..1acf3fcbe88
--- /dev/null
+++ b/integrationExamples/gpt/liveIntentAnalyticsAdapterExample.html
@@ -0,0 +1,186 @@
+
+
+
+
+
+
+
+
+
+Basic Prebid.js Example
+Div-1
+
+
+
+
+Div-2
+
+
+
+
+
diff --git a/modules/operaadsBidAdapter.js b/modules/operaadsBidAdapter.js
index f82e0337e7f..8645196d07d 100644
--- a/modules/operaadsBidAdapter.js
+++ b/modules/operaadsBidAdapter.js
@@ -28,8 +28,8 @@ import {convertOrtbRequestToProprietaryNative} from '../src/native.js';
*/
const BIDDER_CODE = 'operaads';
-const ENDPOINT = 'https://s.adx.opera.com/ortb/v2/';
-const USER_SYNC_ENDPOINT = 'https://s.adx.opera.com/usersync/page';
+const ENDPOINT = 'https://s.oa.opera.com/ortb/v2/';
+const USER_SYNC_ENDPOINT = 'https://s.oa.opera.com/usersync/page';
const OUTSTREAM_RENDERER_URL = 'https://acdn.adnxs.com/video/outstream/ANOutstreamVideo.js';
diff --git a/modules/wurflRtdProvider.js b/modules/wurflRtdProvider.js
index 9edf1df1a2f..6c7c6163e1a 100644
--- a/modules/wurflRtdProvider.js
+++ b/modules/wurflRtdProvider.js
@@ -13,7 +13,7 @@ import { getGlobal } from '../src/prebidGlobal.js';
// Constants
const REAL_TIME_MODULE = 'realTimeData';
const MODULE_NAME = 'wurfl';
-const MODULE_VERSION = '2.3.0';
+const MODULE_VERSION = '2.3.1';
// WURFL_JS_HOST is the host for the WURFL service endpoints
const WURFL_JS_HOST = 'https://prebid.wurflcloud.com';
@@ -1330,7 +1330,7 @@ function onAuctionEndEvent(auctionDetails, config, userConsent) {
for (let i = 0; i < bidsReceived.length; i++) {
const bid = bidsReceived[i];
const adUnitCode = bid.adUnitCode;
- const bidderCode = bid.bidderCode || bid.bidder;
+ const bidderCode = bid.bidder || bid.bidderCode;
const key = adUnitCode + ':' + bidderCode;
bidResponseMap[key] = bid;
}
diff --git a/test/spec/modules/operaadsBidAdapter_spec.js b/test/spec/modules/operaadsBidAdapter_spec.js
index 15708c1bb42..0ff16d72293 100644
--- a/test/spec/modules/operaadsBidAdapter_spec.js
+++ b/test/spec/modules/operaadsBidAdapter_spec.js
@@ -217,7 +217,7 @@ describe('Opera Ads Bid Adapter', function () {
const bidRequest = bidRequests[i];
expect(req.method).to.equal('POST');
- expect(req.url).to.equal('https://s.adx.opera.com/ortb/v2/' +
+ expect(req.url).to.equal('https://s.oa.opera.com/ortb/v2/' +
bidRequest.params.publisherId + '?ep=' + bidRequest.params.endpointId);
expect(req.options).to.be.an('object');
@@ -546,8 +546,8 @@ describe('Opera Ads Bid Adapter', function () {
'id': '003004d9c05c6bc7fec0',
'impid': '22c4871113f461',
'price': 1.04,
- 'nurl': 'https://s.adx.opera.com/win',
- 'lurl': 'https://s.adx.opera.com/loss',
+ 'nurl': 'https://s.oa.opera.com/win',
+ 'lurl': 'https://s.oa.opera.com/loss',
'adm': '
',
'adomain': [
'opera.com',
@@ -628,8 +628,8 @@ describe('Opera Ads Bid Adapter', function () {
'id': '003004d9c05c6bc7fec0',
'impid': '22c4871113f461',
'price': 1.04,
- 'nurl': 'https://s.adx.opera.com/win',
- 'lurl': 'https://s.adx.opera.com/loss',
+ 'nurl': 'https://s.oa.opera.com/win',
+ 'lurl': 'https://s.oa.opera.com/loss',
'adm': 'Static VAST TemplateStatic VAST Taghttp://example.com/pixel.gif?asi=[ADSERVINGID]00:00:08http://example.com/pixel.gifhttp://example.com/pixel.gifhttp://example.com/pixel.gifhttp://example.com/pixel.gifhttp://example.com/pixel.gifhttp://example.com/pixel.gifhttp://example.com/pixel.gifhttp://example.com/pixel.gifhttp://www.jwplayer.com/http://example.com/pixel.gif?r=[REGULATIONS]&gdpr=[GDPRCONSENT]&pu=[PAGEURL]&da=[DEVICEUA] http://example.com/uploads/myPrerollVideo.mp4 https://example.com/adchoices-sm.pnghttps://sample-url.com',
'adomain': [
'opera.com',
@@ -698,8 +698,8 @@ describe('Opera Ads Bid Adapter', function () {
'id': '003004d9c05c6bc7fec0',
'impid': '22c4871113f461',
'price': 1.04,
- 'nurl': 'https://s.adx.opera.com/win',
- 'lurl': 'https://s.adx.opera.com/loss',
+ 'nurl': 'https://s.oa.opera.com/win',
+ 'lurl': 'https://s.oa.opera.com/loss',
'adm': '{"native":{"ver":"1.1","assets":[{"id":1,"required":1,"title":{"text":"The first personal browser"}},{"id":2,"required":1,"img":{"url":"https://res.adx.opera.com/xxx.png","w":720,"h":1280}},{"id":3,"required":1,"img":{"url":"https://res.adx.opera.com/xxx.png","w":60,"h":60}},{"id":4,"required":1,"data":{"value":"Download Opera","len":14}},{"id":5,"required":1,"data":{"value":"Opera","len":5}},{"id":6,"required":1,"data":{"value":"Download","len":8}}],"link":{"url":"https://www.opera.com/mobile/opera","clicktrackers":["https://thirdpart-click.tracker.com","https://t-odx.op-mobile.opera.com/click"]},"imptrackers":["https://thirdpart-imp.tracker.com","https://t-odx.op-mobile.opera.com/impr"],"jstracker":""}}',
'adomain': [
'opera.com',
@@ -782,7 +782,7 @@ describe('Opera Ads Bid Adapter', function () {
}
const userSyncPixels = spec.getUserSyncs(syncOptions)
expect(userSyncPixels).to.have.lengthOf(1);
- expect(userSyncPixels[0].url).to.equal('https://s.adx.opera.com/usersync/page')
+ expect(userSyncPixels[0].url).to.equal('https://s.oa.opera.com/usersync/page')
});
});