...
Code Block |
---|
{ "type": 2, "staging": { "overrideFunctions": { "unique": { "value": " if (!this.win.aniplayerPos)\n this.win.aniplayerPos = {};\n this.win.aniplayerPos[a.position] = true;\n return true;", "isActive": false }, "findWin": { "value": "try {\n if ((!a.posDfp1x1 && !a.posClass && !a.posSelector && !a.posId && !a.posTag) || (w === top) || !w.frameElement) {\n this.doc = document;\n this.win = w;\n } else if (a.posDfp1x1 && w.frameElement) {\n this.win = parent;\n this.doc = parent.document;\n } else {\n this.win = top;\n this.doc = top.document;\n }\n } catch (f) {\n this.doc = document;\n this.win = w;\n }", "isActive": false }, "postCreate": { "value": "", "isActive": false }, "retry": { "value": " if (this.retryCnt++ > this.timeout) {\n this.track(\"AV_M3\", \"&prbdres=nopos&sn=\" + encodeURIComponent(location.href).slice(0, 400));\n return;\n }\n var that = this;\n setTimeout(function () {\n that.position();\n }, 250);\n", "isActive": false }, "create": { "value": "var d1 = document.createElement(\"div\");\n if(a.scriptId) {\n d1.className = a.scriptId;\n }\n d1.style.width = \"100%\";\n d1.style.margin = \"0 auto\";\n d1.style.maxWidth = \"\" + a.maxWidth + \"px\";\n var d2 = document.createElement(\"div\");\n d2.id = \"aniBox\";\n var d3 = document.createElement(\"div\");\n d3.id = a.position;\n if (p === this.doc || p === this.doc.head)\n p = this.doc.body;\n if (n) {\n p.insertBefore(d1, n);\n } else {\n p.appendChild(d1);\n }\n a.refDiv = p;\n d1.appendChild(d2);\n d2.appendChild(d3);\n this.postCreate(d1);", "isActive": false }, "position": { "value": "var p = this.doc;\n var isScp = false;\n if (a.posSelector) {\n try {\n var q = this.doc.querySelectorAll(a.posSelector);\n var l = 0;\n if(a.posCounter > 0) {\n l = a.posCounter - 1;\n }\n p = q[l];\n } catch (e) {\n this.track(\"AV_M3\", \"&prbdres=badpos&sn=\" + encodeURIComponent(location.href).slice(0, 400));\n return;\n }\n if (!p) {\n this.retry();\n return;\n }\n }\n if (a.posId) {\n p = this.doc.getElementById(a.posId);\n if (!p) {\n this.retry();\n return;\n }\n }\n if (a.posTag) {\n var c = a.posTag.split(\"#\");\n if (c && c.length == 2) {\n var e = p.getElementsByTagName(c[0]);\n if (e.length == 0) {\n this.retry();\n return;\n }\n p = e[Math.min(c[1] - 1, e.length - 1)];\n }\n }\n if (a.posClass) {\n var c = a.posClass.split(\"#\");\n var e = 1;\n if (c.length == 2) {\n e = c[1];\n }\n var f = p.getElementsByClassName(c[0]);\n if (f.length > 0) {\n p = f[Math.min(e - 1, f.length - 1)];\n }\n if (!p) {\n this.retry();\n return;\n }\n }\n if (a.posDfp1x1 && window.frameElement) {\n n = window.frameElement.parentNode.parentNode;\n p = n.parentNode;\n if ((frameElement.clientHeight > 5 || document.body.clientHeight > 5) && !a.nohideIframe) {\n frameElement.style.height = \"0px\";\n }\n if (a.posType == \"after\") {\n n = n.nextElementSibling;\n }\n }\n var n;\n if (p === this.doc) {\n n = this.doc.getElementById(a.scriptId);\n if (n) {\n n.id += \"-used\";\n p = n.parentNode;\n }\n }\n if (p === this.doc.head) {\n n = null;\n p = this.doc;\n }\n if (a.posType && a.posType !== \"in\" && !n) {\n if (a.posType === \"after\" && p.nextElementSibling) {\n n = p.nextElementSibling;\n } else {\n n = null;\n }\n p = p.parentNode;\n }\n if (p) {\n if (!p.av_setpos) {\n p.av_setpos = {};\n }\n if (!p.av_setpos[a.position]) {\n p.av_setpos[a.position] = true;\n a.position += \"-\" + Date.now();\n this.create(p, n);\n this.load();\n } else {\n this.track(\"AV_M3\", \"&prbdres=duppos&sn=\" + encodeURIComponent(location.href).slice(0, 400));\n }\n }\n", "isActive": false }, "load": { "value": "var that = this;\n this.getAttr();\n var loadCounter = 0;\n var scp = this.doc.createElement(\"script\");\n scp.src = \"https://player.avplayer.com/script/2/v/avcplayer.js\";\n function checkIfLoad() {\n if(++loadCounter > 1) {\n that.start();\n }\n }\n scp.onload = function() {\n scp.onload = null;\n checkIfLoad();\n };\n scp.async = true;\n this.fetchContent(checkIfLoad);\n this.doc.body.appendChild(scp)", "isActive": false }, "postStart": { "value": "", "isActive": false }, "getAttr": { "value": "if (a.scriptId) {\n var s = document.getElementById(a.scriptId) || document.getElementById(a.scriptId + \"-used\");\n if (s) {\n for (var i = 0, t = s.attributes; i < s.attributes.length; i++) {\n if (t[i].nodeName && t[i].nodeName.indexOf(\"data-\") == 0) {\n var n = t[i].nodeName.replace(/^data-/, \"\").replace(/[-_]+?(\\w)/g, function (_, letter) { return letter.toUpperCase(); }).split(\".\");\n var lastProp = n.pop();\n try {\n var innerConfig = n.reduce(function (a, prop) { return a[prop]; }, a);\n innerConfig[lastProp] = t[i].nodeValue;\n } catch(e) {\n }\n }\n }\n if (s.src) {\n var p = s.src.indexOf(\"?\");\n if (p > 10) {\n var r = (s.src.substring(p + 1, s.src.length));\n a.adConfig.ref1 = (a.adConfig.ref1 || \"\") + \"&\" + (r || \"\");\n }\n }\n }\n }", "isActive": false }, "start": { "value": "var player;\n this.getAttr();\n try {\n if (this.win._avcp) {\n player = new this.win._avcp(a);\n } else if (window._avcp) {\n player = new _avcp(a);\n } else {\n player = new top._avcp(a);\n }\n } catch (exp) {\n player = new _avcp(a);\n }\n this.p = player;\n if (this.pbjs && this.pbjs.preparePlayer) {\n this.pbjs.preparePlayer(player, st);\n }\n if(a.playerApi && typeof this.win[a.playerApi] === \"function\" ) {\n try{\n this.win[a.playerApi](a, player);\n } catch(ex){}\n }\n player.nextContent();\n this.postStart(player);", "isActive": false }, "preRun": { "value": "", "isActive": false }, "run": { "value": " this.config = a = config = this.getConfig();\n this.a = this.config;\n this.getAttr();\n this.preRun();\n this.findWin();\n if (!this.doc.body) {\n this.doc.addEventListener(\"DOMContentLoaded\", function () {\n st.run();\n });\n if (this.bodyRetry > 0) {\n setTimeout(function () {\n st.run();\n }, 250);\n this.domRetry--;\n }\n return;\n }\n if (a.configApi && typeof this.win[a.configApi] === \"function\") {\n try {\n this.win[a.configApi](a);\n } catch (ex) {\n }\n }\n if (this.unique() && !this.loaded) {\n this.loaded = true;\n this.track(\"playerLoaded\");\n this.retryCnt = 0;\n this.timeout = a.posTimeout || 40;\n this.pbjs = window.aniviewRenderer && window.aniviewRenderer.units && window.aniviewRenderer.units[a.scriptId];\n if (this.pbjs && this.pbjs.prepareConfig) {\n this.pbjs.prepareConfig(a, st);\n }\n this.position();\n }", "isActive": false }, "target": { "value": " if (this.sp) {\n return\n }\n var ua = navigator.userAgent || navigator.vendor || window.opera;\n var uav = navigator.appVersion ? navigator.appVersion.toLowerCase() : \"\";\n var op = 2;\n if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(ua) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(ua.substr(0, 4))) {\n op = 1;\n } else {\n if (/web0s|webos|tizen/i.test(uav)) {\n op = 4;\n }\n }\n this.op = op;", "isActive": false }, "track": { "value": " if (!this.trackUrl) {\n this.trackUrl = \"https://\" + (a.trackDomain || \"track1.aniview.com\") + \"/track?pid=\" + a.adConfig.publisherId + \"&cid=\" + a.adConfig.channelId + \"&cb=\" + Date.now() + \"&r=\" + location.host + \"&stagid=\" + (a.tagId || \"\") + \"&stplid=\" + (a.templateId || \"\") + \"&d35=\" + (a.adConfig.sabTest || \"\") + \"&e=\";\n }\n m = m ? m : \"\";\n (new Image()).src = this.trackUrl + e + m;\n", "isActive": false }, "fetchContent": { "value": "if(a.content && (a.content.cmsId && a.content.cmsType)) {\n a.content.contentFeed = \"https://\" + (a.cmsFeedDomain || \"feed.avplayer.com\") + \"/backend/get?cmsType=\" + a.content.cmsType + \"&id=\" + a.content.cmsId\n }\n if (a.content.contentFeed) {\n var xhr = new XMLHttpRequest();\n xhr.open(\"GET\", a.content.contentFeed, true);\n xhr.onload = function () {\n xhr.onload = null;\n try {\n var json = JSON.parse(xhr.responseText);\n if (json && json.playlist) {\n a.content.contents = json.playlist;\n }\n } catch (e) {\n }\n callback();\n };\n xhr.send();\n } else {\n callback();\n }", "isActive": false } }, "overrideExtensions": {}, "position": { "value": "", "number": 1 }, "publisher": "publisher", "posDfp1x1": false, "channel": "channel", "template": "template" }, "content": { "breakingAdsMode": 2, "commonSlots": [ { "time": 0 } ], "type": 0, "order": 1, "breakingAds": 15 }, "name": "test123" } |
...
3.2.3 Generate Tag Script
Short Tag
Short Tag is a script element that can be applied directly on the publisher's site. If the tag created does not include a position the player will open in the location the element is implemented at.
Code Block |
---|
<script async id="AV${Tag_ID}" type="text/javascript" src="https://tg1.aniview.com/api/adserver/spt?AV_TAGID=${Tag_ID}&AV_PUBLISHERID=${Publisher_ID}"></script> |
Full Tag
Full tag is the full script that is loading the player to the page.
Request URL:
https://tg1.aniview.com/api/adserver/spt?AV_PUBLISHERID=${Publisher_ID}&AV_TAGID=${Tag_ID}&id=AV_${Tag_ID}
Request Method:
GET
Status Code:
200 OK
Parameter | Description |
AV_PUBLISHERID | Publisher ID |
AV_TAGID | Tag ID |