@ -5,12 +5,8 @@ import cn.hutool.core.util.StrUtil;
import com.baiyee.adcallback.api.common.CommonResponse ;
import com.baiyee.adcallback.api.common.ResponseCode ;
import com.baiyee.adcallback.api.vo.* ;
import com.baiyee.adcallback.config.pojo.BdBackdataDTO ;
import com.baiyee.adcallback.config.pojo.JlBackdataDTO ;
import com.baiyee.adcallback.config.pojo.UcBackdataDTO ;
import com.baiyee.adcallback.config.pojo.convert.BdBackdataConvert ;
import com.baiyee.adcallback.config.pojo.convert.JlBackdataConvert ;
import com.baiyee.adcallback.config.pojo.convert.UcBackdataConvert ;
import com.baiyee.adcallback.config.pojo.* ;
import com.baiyee.adcallback.config.pojo.convert.* ;
import com.baiyee.adcallback.service.AdOriginalityManageService ;
import lombok.extern.slf4j.Slf4j ;
import org.springframework.beans.factory.annotation.Autowired ;
@ -35,7 +31,7 @@ public class MobileMonitorCallbackAPI {
/ * *
* julaing 身 份 验 证 回 调 url 请 求
*
* < p >
* API 文 档 :
* < a href = "https://open.oceanengine.com/doc/index.html?key=ad&type=api&id=1696710655781900#item-link-%E6%8E%A5%E5%8F%A3%E7%AE%80%E4%BB%8B" > < / a >
*
@ -74,21 +70,23 @@ public class MobileMonitorCallbackAPI {
@RequestParam ( value = "TIMESTAMP" , defaultValue = "" ) Long ts ,
@RequestParam ( value = "callback_url" , defaultValue = "" ) String callbackUrl ,
@RequestParam ( value = "model" , defaultValue = "" ) String model ,
@RequestParam ( value = "caid1" , defaultValue = "" ) String caid12
@RequestParam ( value = "caid1" , defaultValue = "" ) String caid12 ,
@RequestParam ( value = "tag" , defaultValue = "" ) String tag
) {
JuliangMobileMonitorCallbackRequestVO vo = new JuliangMobileMonitorCallbackRequestVO (
aid , aidName , advertiserId , cid , ctype , csite , imei , idfa , oaid , os , mac , mac1 , ip , geo , ts , callbackUrl , model , caid12
aid , aidName , advertiserId , cid , ctype , csite , imei , idfa , oaid , os , mac , mac1 , ip , geo , ts , callbackUrl , model , caid12
) ;
if ( ObjectUtil . isNull ( vo ) ) {
return CommonResponse . createByErrorMessage ( ResponseCode . EMPTY_ARGUMENT . getDesc ( ) ) ;
}
// 请求过滤规则,过滤掉不用的数据
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
return CommonResponse . createBySuccess ( ) ;
}
log . info ( "================================= [one request comming, JuliangMobileMonitorCallbackAPI|julaingMonitorUrlCallbackReqUrl, vo is {} ] =================================" , vo ) ;
setTag ( tag , vo ) ;
log . info ( "================================= [one request comming, julaingMonitorUrlCallbackReqUrl|MobileMonitorCallbackAPI, vo is {} ] =================================" , vo ) ;
JlBackdataDTO jlBackdataDTO = new JlBackdataDTO ( ) ;
JlBackdataConvert . voCovertToDTO ( vo , jlBackdataDTO ) ;
adOriginalityManageService . handleMonitorUrlCallbackDataThenSave ( ) ;
@ -103,28 +101,24 @@ public class MobileMonitorCallbackAPI {
private boolean preRuleForReq ( JuliangMobileMonitorCallbackRequestVO vo ) {
String imei = vo . getImei ( ) ;
if ( StrUtil . isBlank ( imei ) ) {
if ( StrUtil . isBlank ( imei ) ) {
return Boolean . TRUE ;
}
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
return Boolean . TRUE ;
}
return Boolean . FALSE ;
}
/ * *
* 百 度 链 接 监 测 API :
* < a href = "https://dev2.baidu.com/content?sceneType=0&pageId=101214&nodeId=15&subhead=" > < / a >
*
*
* < p >
* < p >
* 监 测 示 例 URL - 广 告 主 填 写 : < br / >
* http : //www.test.com/notice?imei_md5={{IMEI_MD5}}&os={{OS}}&ip={{IP}}&ua={{UA}}&ts={{TS}}&userid={{USER_ID}}&pid={{PLAN_ID}}&uid={{UNIT_ID}}&aid={{IDEA_ID}}&click_id={{CLICK_ID}}&callback_url={{CALLBACK_URL}}
*
* http : //www.test.com/notice?tag=test123&imei_md5={{IMEI_MD5}}&os={{OS}}&ip={{IP}}&ua={{UA}}&ts={{TS}}&userid={{USER_ID}}&pid={{PLAN_ID}}&uid={{UNIT_ID}}&aid={{IDEA_ID}}&click_id={{CLICK_ID}}&callback_url={{CALLBACK_URL}}
* /
@RequestMapping ( value = "/bd/monitor" )
public CommonResponse baiduMonitorUrlCallbackReqUrl (
@ -144,23 +138,23 @@ public class MobileMonitorCallbackAPI {
@RequestParam ( value = "device_info" , defaultValue = "" ) String deviceInfo ,
@RequestParam ( value = "interactionsType" , defaultValue = "" ) String interactionsType ,
@RequestParam ( value = "ext_info" , defaultValue = "" ) String extInfo ,
@RequestParam ( value = "callType" , defaultValue = "" ) String callType
@RequestParam ( value = "callType" , defaultValue = "" ) String callType ,
@RequestParam ( value = "tag" , defaultValue = "" ) String tag
) {
BaiduMobileMonitorCallbackRequestVO vo = new BaiduMobileMonitorCallbackRequestVO (
userId , aid , pid , uid , callbackUrl , clickId , idfa , imei , oaid , mac , ip , os , ts , deviceInfo , interactionsType , extInfo , callType
userId , aid , pid , uid , callbackUrl , clickId , idfa , imei , oaid , mac , ip , os , ts , deviceInfo , interactionsType , extInfo , callType
) ;
if ( ObjectUtil . isNull ( vo ) ) {
return CommonResponse . createByErrorMessage ( ResponseCode . EMPTY_ARGUMENT . getDesc ( ) ) ;
}
// 请求过滤规则,过滤掉不用的数据
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
return CommonResponse . createBySuccess ( ) ;
}
log . info ( "================================= [one request comming, BaiduMobileMonitorCallbackAPI|baiduMonitorUrlCallbackReqUrl , vo is {} ] =================================", vo ) ;
setTag ( tag , vo ) ;
log . info ( "================================= [one request comming, baiduMonitorUrlCallbackReqUrl|MobileMonitorCallbackAPI , vo is {} ] =================================", vo ) ;
BdBackdataDTO bdBackdataDTO = new BdBackdataDTO ( ) ;
BdBackdataConvert . voCovertToDTO ( vo , bdBackdataDTO ) ;
@ -178,11 +172,11 @@ public class MobileMonitorCallbackAPI {
private boolean preRuleForReq ( BaiduMobileMonitorCallbackRequestVO vo ) {
String imei = vo . getImeiMd5 ( ) ;
if ( StrUtil . isBlank ( imei ) ) {
if ( StrUtil . isBlank ( imei ) ) {
return Boolean . TRUE ;
}
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
return Boolean . TRUE ;
}
return Boolean . FALSE ;
@ -191,7 +185,7 @@ public class MobileMonitorCallbackAPI {
/ * *
* UC 监 控 链 接 - 目 前 只 监 测 Android 设 备
*
* < p >
* 监 控 配 置
* http : //xxx.xxxx.com?imei={IMEI_SUM1}&oaid={OAID}&time={TS}&callback={CALL
* BACK_URL } & androidid = { ANDROIDID_SUM1 } & mac = { MAC_SUM2 } & ip = { IP } & ua = { U
@ -210,28 +204,26 @@ public class MobileMonitorCallbackAPI {
@RequestParam ( value = "acid" , defaultValue = "" ) String acid ,
@RequestParam ( value = "gid" , defaultValue = "" ) String gid ,
@RequestParam ( value = "aid" , defaultValue = "" ) String aid ,
@RequestParam ( value = "cid" , defaultValue = "" ) String cid
@RequestParam ( value = "cid" , defaultValue = "" ) String cid ,
@RequestParam ( value = "tag" , defaultValue = "" ) String tag
) {
UcMobileMonitorCallbackRequestVO vo = new UcMobileMonitorCallbackRequestVO (
imei , oaid , ts , callbackUrl , androidId , mac , ip , ua , acid , gid , gid , a id
imei , oaid , ts , callbackUrl , androidId , mac , ip , ua , acid , gid , aid , c id
) ;
if ( ObjectUtil . isNull ( vo ) ) {
return CommonResponse . createByErrorMessage ( ResponseCode . EMPTY_ARGUMENT . getDesc ( ) ) ;
}
// 请求过滤规则,过滤掉不用的数据
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
return CommonResponse . createBySuccess ( ) ;
}
log . info ( "================================= [one request comming, BaiduMobileMonitorCallbackAPI|baiduMonitorUrlCallbackReqUrl, vo is {} ] =================================" , vo ) ;
setTag ( tag , vo ) ;
log . info ( "================================= [one request comming, ucMonitorUrlCallbackReqUrl|MobileMonitorCallbackAPI, vo is {} ] =================================" , vo ) ;
UcBackdataDTO ucBackdataDTO = new UcBackdataDTO ( ) ;
UcBackdataConvert . voCovertToDTO ( vo , ucBackdataDTO ) ;
adOriginalityManageService . handleMonitorUrlCallbackDataThenSave2 ( ) ;
return CommonResponse . createBySuccess ( ) ;
}
@ -244,11 +236,11 @@ public class MobileMonitorCallbackAPI {
private boolean preRuleForReq ( UcMobileMonitorCallbackRequestVO vo ) {
String imei = vo . getImei ( ) ;
if ( StrUtil . isBlank ( imei ) ) {
if ( StrUtil . isBlank ( imei ) ) {
return Boolean . TRUE ;
}
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
return Boolean . TRUE ;
}
return Boolean . FALSE ;
@ -256,16 +248,79 @@ public class MobileMonitorCallbackAPI {
/ * *
* vivo 互 联 网 检 测
* 快 手 点 击 监 测 API
* https : //docs.qingque.cn/d/home/eZQBTWKAahwgCU4YeU_bRW5B_#
* /
@RequestMapping ( value = "/ks/monitor" )
public CommonResponse kuaishouMonitorUrlCallbackReqUrl (
@RequestParam ( value = "accountid" , defaultValue = "" ) String accountid ,
@RequestParam ( value = "aid" , defaultValue = "" ) String aid ,
@RequestParam ( value = "cid" , defaultValue = "" ) String cid ,
@RequestParam ( value = "did" , defaultValue = "" ) String did ,
@RequestParam ( value = "dname" , defaultValue = "" ) String dName ,
@RequestParam ( value = "imeiMD5" , defaultValue = "" ) String imei ,
@RequestParam ( value = "oaid" , defaultValue = "" ) String oaid ,
@RequestParam ( value = "mac" , defaultValue = "" ) String mac ,
@RequestParam ( value = "androidid" , defaultValue = "" ) String androidid ,
@RequestParam ( value = "os" , defaultValue = "" ) String os ,
@RequestParam ( value = "ts" , defaultValue = "" ) String ts ,
@RequestParam ( value = "ip" , defaultValue = "" ) String ip ,
@RequestParam ( value = "ua" , defaultValue = "" ) String ua ,
@RequestParam ( value = "csite" , defaultValue = "" ) String cSite ,
@RequestParam ( value = "model" , defaultValue = "" ) String model ,
@RequestParam ( value = "ac_creative" , defaultValue = "" ) String acCreative ,
@RequestParam ( value = "tag" , defaultValue = "" ) String tag
) {
KuaiShouMobileMonitorCallbackRequestVO vo = new KuaiShouMobileMonitorCallbackRequestVO (
accountid , aid , cid , did , dName , imei , oaid , mac , androidid , os , ts , ip , ua , cSite , model , acCreative
) ;
if ( ObjectUtil . isNull ( vo ) ) {
return CommonResponse . createByErrorMessage ( ResponseCode . EMPTY_ARGUMENT . getDesc ( ) ) ;
}
// 请求过滤规则,过滤掉不用的数据
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
return CommonResponse . createBySuccess ( ) ;
}
setTag ( tag , vo ) ;
log . info ( "================================= [one request comming, vivoMonitorUrlCallbackReqUrl|MobileMonitorCallbackAPI, vo is {} ] =================================" , vo ) ;
KuaiShouBackdataDTO kuaiShouBackdataDTO = new KuaiShouBackdataDTO ( ) ;
KuaiShouBackdataConvert . voCovertToDTO ( vo , kuaiShouBackdataDTO ) ;
adOriginalityManageService . handleMonitorUrlCallbackDataThenSave3 ( ) ;
return CommonResponse . createBySuccess ( ) ;
}
/ * *
* 之 前 的 规 则 要 求
*
* @return boolean
* /
private boolean preRuleForReq ( KuaiShouMobileMonitorCallbackRequestVO vo ) {
String imei = vo . getImei ( ) ;
if ( StrUtil . isBlank ( imei ) ) {
return Boolean . TRUE ;
}
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
return Boolean . TRUE ;
}
return Boolean . FALSE ;
}
/ * *
* vivo 互 联 网 检 测
* < p >
* API 文 档 地 址 : https : //ad.vivo.com.cn/help?id=353
*
*
*
* /
@RequestMapping ( value = "/vivo/monitor" )
public CommonResponse baiduMonitorUrlCallbackReqUrl (
public CommonResponse vivoMonitorUrlCallbackReqUrl (
@RequestParam ( value = "os" , defaultValue = "" ) String os ,
@RequestParam ( value = "imei" , defaultValue = "" ) String imei ,
@RequestParam ( value = "ip" , defaultValue = "" ) String ip ,
@ -284,21 +339,56 @@ public class MobileMonitorCallbackAPI {
@RequestParam ( value = "lang" , defaultValue = "" ) String lang ,
@RequestParam ( value = "resolution" , defaultValue = "" ) String resolution ,
@RequestParam ( value = "nettype" , defaultValue = "" ) String nettype ,
@RequestParam ( value = "ts" , defaultValue = "" ) String ts
@RequestParam ( value = "ts" , defaultValue = "" ) Long ts ,
@RequestParam ( value = "tag" , defaultValue = "" ) String tag
) {
VivoMobileMonitorCallbackRequestVO vo = new VivoMobileMonitorCallbackRequestVO (
os , imei , ip , oaid , oaidplain , ua , androidid , location , requestid , requesttime , advertiserId , adName , creativeid , osversion , model , lang , resolution , nettype , ts
) ;
if ( ObjectUtil . isNull ( vo ) ) {
return CommonResponse . createByErrorMessage ( ResponseCode . EMPTY_ARGUMENT . getDesc ( ) ) ;
}
// 请求过滤规则,过滤掉不用的数据
if ( preRuleForReq ( vo ) ) {
log . error ( "================================= [not right imei data ,{} ] =================================" , vo ) ;
return CommonResponse . createBySuccess ( ) ;
}
setTag ( tag , vo ) ;
log . info ( "================================= [one request comming, vivoMonitorUrlCallbackReqUrl|MobileMonitorCallbackAPI, vo is {} ] =================================" , vo ) ;
VivoBackdataDTO vivoBackdataDTO = new VivoBackdataDTO ( ) ;
VivoBackdataConvert . voCovertToDTO ( vo , vivoBackdataDTO ) ;
adOriginalityManageService . handleMonitorUrlCallbackDataThenSave4 ( ) ;
return CommonResponse . createBySuccess ( ) ;
}
/ * *
* 之 前 的 规 则 要 求
*
* @return boolean
* /
private boolean preRuleForReq ( VivoMobileMonitorCallbackRequestVO vo ) {
String imei = vo . getImei ( ) ;
if ( StrUtil . isBlank ( imei ) ) {
return Boolean . TRUE ;
}
if ( StrUtil . isNotBlank ( imei ) & & StrUtil . equalsIgnoreCase ( IMEI_TAG , imei ) ) {
return Boolean . TRUE ;
}
return Boolean . FALSE ;
}
/ * *
* vivo 营 销 链 接 点 击 监 控
* < p >
* API 文 档 : https : //ad.vivo.com.cn/help?id=352
* < p >
*
* < p >
* 配 置
* 直 接 配 置 链 接 即 可 https : //cb.tuoz.net/vivo/monitor
*
* /
@PostMapping ( value = "/vivo/p/monitor" )
public CommonResponse vivoMonitorUrlCallbackReqUrl ( @RequestBody VivoMobileMonitorPointCallbackRequestVO vo ) {
@ -307,9 +397,20 @@ public class MobileMonitorCallbackAPI {
}
/ * *
* 进 行 特 殊 标 识 处 理
*
* @param tag 标 识
* @param base 基 类
* /
private void setTag ( String tag , MobileMonitorCallbackRequestBase base ) {
if ( StrUtil . isNotBlank ( tag ) ) {
base . setTag ( tag ) ;
} else {
base . setTag ( "" ) ;
}
}
}