| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | 
| dpi:dpi_components:dpiui:vascloud:ads_provider [2021/02/10 13:50]  – [1 Описание для контент-провайдера рекламы]  arusnak | dpi:dpi_components:dpiui:vascloud:ads_provider [2023/08/31 08:54] (текущий)  – удалено elena.krasnobryzh | 
|---|
| ====== 1 Описание для контент-провайдера рекламы ====== |   | 
| {{indexmenu_n>1}} |   | 
 |  | 
| Для интеграции с облаком VAS Cloud потенциальный контент-провайдер рекламы должен уметь |   | 
 |   | 
|   - Загружать с помощью Javascript рекламный контент своих партнеров |   | 
|   - Собирать ежедневную статистику по кликам/конверсиям/начислениям и возвращать ее через API интерфейс по запросу VAS Cloud |   | 
 |   | 
 |   | 
| ===== Требования к загрузке рекламного контента через Javascript ===== |   | 
 |   | 
| Запускаемый на веб-странице рекламополучателя скрипт от VAS Cloud создает на странице контейнеры для рекламы и загружает (вызывает ссылку для загрузки) Javascript код контент-провайдера для показа рекламы. |   | 
 |   | 
| Пример вызываемой сссылки: |   | 
 |   | 
| <code>http://provider.com/service/promo/?bid=1526343&size=728x90&cid=49c479c957953b478efd791f050fc26e&bt=19&dv=123456789&sa=TestSubaccount</code> |   | 
 |   | 
| Среди прочих параметров, VAS Cloud передает  |   | 
|   * dv - обязательный параметр, определяющий идентификатор контейнера (div), куда следует вставить рекламный контент |   | 
|   * sa - обязательный параметр, определяющий subaccount. Собираемая контент-провайдером статистика кликов и конверсия, должна содержать группировку по subaccount. |   | 
 |   | 
|  URL, наименования и состав параметров определяет контент провайдер. |   | 
 |   | 
| Пример возвращаемой контент-провайдером цепочки скриптов на примере CityAds |   | 
 |   | 
| <code> |   | 
| //Скрипт возвращаемый по ссылке http://cityads.com/service/promo/?bid=446095&size=728x90&cid=44c2189481de2001a2602b4ea86a271f&bt=19&dv=123456789?sa=TestSubaccount |   | 
| function syscount() { |   | 
| 	var f=0; |   | 
| 	var fv=0; |   | 
| 	var d=document; |   | 
| 	var w=window; |   | 
| 	var n=navigator; |   | 
| 	var s=screen; |   | 
| 	var stat_ref=null; |   | 
| 	var mt="application/x-shockwave-flash"; |   | 
| 	var stat_data="n="+n.appName+";"; |   | 
| 	if(parent!=w){try {stat_ref=parent.document.referrer;} catch(e){}} |   | 
| 	if(!stat_ref){stat_ref=d.referrer} |   | 
| 	if(s.colorDepth){stat_data+="cd="+s.colorDepth+";" |   | 
| 	} else {if(s.pixelDepth){stat_data+="cd="+s.pixelDepth+";"}} |   | 
| 	if(s.width&&s.height){stat_data+="s="+s.width+"x"+s.height+";"} |   | 
| 	var stat_loc=d.referrer; |   | 
| 	stat_data+="t="+ (new Date()).getTimezoneOffset(); |   | 
| 	var a2 = "&loc="+escape(stat_loc)+"&ref="+escape(stat_ref)+"&dat="+escape(stat_data); |   | 
| 	if(window.ActiveXObject){ |   | 
| 		var l=["",".3",".4",".5",".6",".7"]; |   | 
| 		for(i=0; i < l.length; i++){ |   | 
| 			try{new ActiveXObject("ShockwaveFlash.ShockwaveFlash"+l[i]);f=1;fv=l[i]} |   | 
| 			catch(e){} |   | 
| 		} |   | 
| 	}else if(n.mimeTypes&&n.mimeTypes[mt]&&n.mimeTypes[mt].enabledPlugin) { |   | 
| 		f=1 |   | 
| 		if (n.mimeTypes[mt].enabledPlugin.description) { |   | 
| 			fv = n.mimeTypes[mt].enabledPlugin.description; |   | 
| 		} |   | 
| 	} |   | 
 |   | 
| 	var monitoring_request = 0; |   | 
 |   | 
| 	return a2+'&f='+f+'&fv='+fv+"&rn="+Math.random() + ((monitoring_request == 1) ? '&monitoring_request=' + monitoring_request : ''); |   | 
| } |   | 
 |   | 
| 	a = syscount(); |   | 
| 	a = a+'&dv=123456789?sa=TestSubaccount'; |   | 
| 	var d=document; var s=d.createElement('script'); s.type = 'text/javascript';s.async = true; |   | 
| 	s.src = '//cityads.com/service/banner?bid=446095&dv=123456789?sa=TestSubaccount&size=728x90&cid=44c2189481de2001a2602b4ea86a271f&bt=19'+a; |   | 
| 	var x=d.getElementsByTagName('script')[0]; x.parentNode.insertBefore(s, x); |   | 
| </code> |   | 
 |   | 
| <code> |   | 
| //Скрипт возвращаемый по ссылке из предыдущего скрипта //cityads.com/service/banner?bid=446095&dv=123456789?sa=TestSubaccount&size=728x90&cid=44c2189481de2001a2602b4ea86a271f&bt=19'+a |   | 
| nd = document.createElement("div"); |   | 
| nd.innerHTML = "<!-- default --><div id='ca-block-7743' class='ca-block'><OBJECT classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0' WIDTH='728' HEIGHT='90'><PARAM NAME=movie VALUE='//promo.cityads.com/graph/s/446/095_20542-728x90.swf?clickTAG=http%3A%2F%2Fhskwq.com%2Fclick%3Fcid%3D44c2189481de2001a2602b4ea86a271f%26im%3DNDA4NS0wLTE1NTg5Nzg3NjAtOTIwMDcxMzgtLTRxamdsdTZsaGhsb2tqaG5xNTEwNWxpM2Q1%26sa%3D%26%26bid%3D446095%26bt%3D19%26pt%3D1%26tid%3D%26lt%3D%26tl%3D%26url%3Dhttps%253A%252F%252Fcity.travel%252Fhotels%253Fpartner%253Dcityads%2526marker%253D%2523tc_id%2523%2526wm_id%253D%2523wm_id%2523%2526click_id%253D%2523click_id%2523'><PARAM NAME=quality VALUE=best><PARAM NAME=flashVars VALUE='link1=http%3A%2F%2Fhskwq.com%2Fclick%3Fcid%3D44c2189481de2001a2602b4ea86a271f%26im%3DNDA4NS0wLTE1NTg5Nzg3NjAtOTIwMDcxMzgtLTRxamdsdTZsaGhsb2tqaG5xNTEwNWxpM2Q1%26sa%3D%26%26bid%3D446095%26bt%3D19%26pt%3D1%26tid%3D%26lt%3D%26tl%3D%26url%3Dhttps%253A%252F%252Fcity.travel%252Fhotels%253Fpartner%253Dcityads%2526marker%253D%2523tc_id%2523%2526wm_id%253D%2523wm_id%2523%2526click_id%253D%2523click_id%2523&clickTAG=http%3A%2F%2Fhskwq.com%2Fclick%3Fcid%3D44c2189481de2001a2602b4ea86a271f%26im%3DNDA4NS0wLTE1NTg5Nzg3NjAtOTIwMDcxMzgtLTRxamdsdTZsaGhsb2tqaG5xNTEwNWxpM2Q1%26sa%3D%26%26bid%3D446095%26bt%3D19%26pt%3D1%26tid%3D%26lt%3D%26tl%3D%26url%3Dhttps%253A%252F%252Fcity.travel%252Fhotels%253Fpartner%253Dcityads%2526marker%253D%2523tc_id%2523%2526wm_id%253D%2523wm_id%2523%2526click_id%253D%2523click_id%2523'><PARAM NAME=wmode VALUE=transparent><EMBED src='//promo.cityads.com/graph/s/446/095_20542-728x90.swf?clickTAG=http%3A%2F%2Fhskwq.com%2Fclick%3Fcid%3D44c2189481de2001a2602b4ea86a271f%26im%3DNDA4NS0wLTE1NTg5Nzg3NjAtOTIwMDcxMzgtLTRxamdsdTZsaGhsb2tqaG5xNTEwNWxpM2Q1%26sa%3D%26%26bid%3D446095%26bt%3D19%26pt%3D1%26tid%3D%26lt%3D%26tl%3D%26url%3Dhttps%253A%252F%252Fcity.travel%252Fhotels%253Fpartner%253Dcityads%2526marker%253D%2523tc_id%2523%2526wm_id%253D%2523wm_id%2523%2526click_id%253D%2523click_id%2523' flashVars='link1=http%3A%2F%2Fhskwq.com%2Fclick%3Fcid%3D44c2189481de2001a2602b4ea86a271f%26im%3DNDA4NS0wLTE1NTg5Nzg3NjAtOTIwMDcxMzgtLTRxamdsdTZsaGhsb2tqaG5xNTEwNWxpM2Q1%26sa%3D%26%26bid%3D446095%26bt%3D19%26pt%3D1%26tid%3D%26lt%3D%26tl%3D%26url%3Dhttps%253A%252F%252Fcity.travel%252Fhotels%253Fpartner%253Dcityads%2526marker%253D%2523tc_id%2523%2526wm_id%253D%2523wm_id%2523%2526click_id%253D%2523click_id%2523&clickTAG=http%3A%2F%2Fhskwq.com%2Fclick%3Fcid%3D44c2189481de2001a2602b4ea86a271f%26im%3DNDA4NS0wLTE1NTg5Nzg3NjAtOTIwMDcxMzgtLTRxamdsdTZsaGhsb2tqaG5xNTEwNWxpM2Q1%26sa%3D%26%26bid%3D446095%26bt%3D19%26pt%3D1%26tid%3D%26lt%3D%26tl%3D%26url%3Dhttps%253A%252F%252Fcity.travel%252Fhotels%253Fpartner%253Dcityads%2526marker%253D%2523tc_id%2523%2526wm_id%253D%2523wm_id%2523%2526click_id%253D%2523click_id%2523' wmode='transparent' quality=best WIDTH='728' HEIGHT='90'  TYPE='application/x-shockwave-flash' PLUGINSPAGE='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash'></EMBED></OBJECT></div>"; |   | 
| var xelem=document.getElementById("x"+'123456789?sa=TestSubaccount'); |   | 
| var prot="http://cityads.com"; |   | 
| xelem.appendChild(nd); |   | 
 |   | 
 |   | 
| var id = Math.floor(Math.random() * 999); |   | 
| var rsc=document.createElement('script'); |   | 
| rsc.id='caRotation'; |   | 
| rsc.type='text/javascript'; |   | 
| rsc.language='javascript'; |   | 
| rsc.encoding='UTF-8'; |   | 
| rsc.className="ca-script" |   | 
| rsc.src=prot+'/res/js/promo/comp.js'; |   | 
| xelem.appendChild(rsc); |   | 
 |   | 
| </code> |   | 
 |   | 
| ===== Требования к собираемой статистике и API ===== |   | 
 |   | 
| Статистику по кликам / конверсиям собирает контент провайдер. В статистике также должна присутствовать сумма комиссии, подтвержденная рекламодателем. |   | 
 |   | 
| Статистика должна быть сгруппирована по дате (по дням), идентификатору и названию оффера рекламодателя, по полю subbaccount. |   | 
 |   | 
| API может быть либо JSON-RPC, либо JSON REST на выбор контент провайдера. SOAP поддерживается, но не приветствуется. |   | 
 |   | 
| Поля статистики |   | 
 |   | 
|   * date(Timestamp) - дата-время (сгруппированное поле) |   | 
|   * offer_id(Int) - идентификатор оффера(сгруппированное поле) |   | 
|   * subaccount(Varchar) - субаккаунт (сгруппированное поле) |   | 
|   * offer_name(Varchar) - наименования оффера |   | 
|   * traffic_shows(Int) - кол-во показов |   | 
|   * traffic_hits(Int) - кол-во кликов |   | 
|   * traffic_clicks(Int) - кол-во уникальных кликов |   | 
|   * traffic_back_url |   | 
|   * leads_total |   | 
|   * leads_approved |   | 
|   * leads_opened |   | 
|   * leads_rejected |   | 
|   * leads_paid_targets |   | 
|   * effectivity_cr |   | 
|   * effectivity_ar |   | 
|   * effectivity_ecpc |   | 
|   * effectivity_ecpl |   | 
|   * commission_approved(Float) - подтвержденная рекламодателем комиссия |   | 
|   * commission_opened(Float) - открытая комиссия |   | 
|   * commission_rejected(Float) - отклоненная комиссия |   |