1339 lines
37 KiB
Lua
1339 lines
37 KiB
Lua
local BIReport = {}
|
||
|
||
-- 客户端的所有的上报事件都要加"client_"前缀
|
||
local EVENT_NAME_TUTORIAL = "client_tutorial"
|
||
local EVENT_NAME_LUA_CRASH = "client_lua_crash"
|
||
local EVENT_NAME_OPEN_UI = "client_open_ui"
|
||
|
||
-- BIReport.FIREBASE_UI_TYPE = {
|
||
-- SHOP = "Shop",
|
||
-- BUY_VIT = "BuyVit",
|
||
-- QUICK_HANG_UP = "QuickHangUp",
|
||
-- SUPER_TURNTABLE = "SuperTurntable",
|
||
-- DAILY_GIFT = "DailyGift",
|
||
-- NEW_WISH_GIFT = "NewWishGift",
|
||
-- NEW_PLAYER_GIFT = "NewPlayerGift",
|
||
-- BALLTE_JEWELRY_SELECT_BUFF = "BallteJewelrySelectBuff",
|
||
-- BALLTE_RESURRECTION = "BallteResurrection",
|
||
-- BALLTE_SELECT_BUFF = "BallteSelectBuff",
|
||
-- }
|
||
|
||
-- BIReport.FIGHT_END_TYPE = {
|
||
-- WIN = "Win",
|
||
-- FAIL = "Fail",
|
||
-- QUIT = "Quit",
|
||
-- }
|
||
-- BIReport.FIGHT_DEATH_TYPE = {
|
||
-- SURVIVE = "Survive",
|
||
-- ELITE_FAIL = "EliteFail",
|
||
-- BOSS_FAIL = "BossFail",
|
||
-- NORMAL_FAIL = "NormalFail",
|
||
-- }
|
||
|
||
-- BIReport.SKILL_REFRESH_TYPE = {
|
||
-- FREE = "Free",
|
||
-- ADS = "Ads",
|
||
-- GEM = "Gem",
|
||
-- }
|
||
|
||
-- 所有需要上报的按钮点击事件
|
||
BIReport.CLICK_BTN_TYPE = {
|
||
EQUIP = "Equip",
|
||
DUNGEON = "Dungeon",
|
||
TRAIN = "Train",
|
||
MALL = "Mall",
|
||
SHOP = "Shop",
|
||
}
|
||
|
||
BIReport.ADS_OPT_TYPE = {
|
||
CLICK = "Click",
|
||
SUC = "Scu",
|
||
RETURN = "Return",
|
||
}
|
||
|
||
BIReport.PAY_OPT_TYPE = {
|
||
POP = "Pop",
|
||
CLICK = "Click",
|
||
BUY = "Buy",
|
||
REWARD = "Reward",
|
||
CANCEL = "Cancel",
|
||
FAILED = "Failed",
|
||
INIT_SUC = "InitSuc",
|
||
INIT_FAILED = "InitFailed",
|
||
}
|
||
|
||
BIReport.EQUIP_OPT_TYPE = {
|
||
EQUIP_GET = "EquipGet",
|
||
EQUIP_LV_UP = "EquipLvUp",
|
||
EQUIP_WEAR = "EquipWear",
|
||
LEGACY_GET = "LegacyGet",
|
||
LEGACY_LV_UP = "LegacyLvUp",
|
||
LEGACY_WEAR = "LegacyWear",
|
||
LEGACY_REMOVE = "LegacyRemove",
|
||
}
|
||
|
||
BIReport.BATTLE_PASS_OPT_TYPE = {
|
||
OPEN = "Open",
|
||
TASK_CLAIM = "TaskClaim",
|
||
REWARD_CLAIM = "RewardClaim",
|
||
EXP_GET = "ExpGet",
|
||
}
|
||
|
||
BIReport.ACCOUNT_OPT_TYPE = {
|
||
LOGIN_CLICK = "LoginClick",
|
||
LOGIN_FINISH = "LoginFinish",
|
||
LOGIN_FAILED = "LoginFailed",
|
||
BIND_CLICK = "BindClick",
|
||
BIND_FINISH = "BindFinish",
|
||
}
|
||
|
||
BIReport.TASK_OPT_TYPE = {
|
||
FINISH = "Finish",
|
||
REWARD = "Reward",
|
||
}
|
||
|
||
BIReport.MAIL_OPT_TYPE = {
|
||
OPEN = "Open",
|
||
CLAIM = "Claim",
|
||
}
|
||
|
||
BIReport.TRAIN_OPT_TYPE = {
|
||
TRAIN = "Train",
|
||
REBORN = "Reborn",
|
||
QUICK_PASS = "QuickPass",
|
||
QUICK_PASS_UP = "QuickPassUp",
|
||
}
|
||
|
||
BIReport.CHAPTER_OPT_TYPE = {
|
||
PASS = "Pass",
|
||
}
|
||
|
||
BIReport.RUNE_OPT_TYPE = {
|
||
GET = "Get",
|
||
LV_UP = "LvUp",
|
||
WEAR = "Wear",
|
||
}
|
||
|
||
BIReport.ITEM_GET_TYPE = {
|
||
NEW_PLAYER_INITIAL = "NewPlayerInitial", -- 新玩家创号自带
|
||
UPGRADE_HERO = "UpgradeHero",
|
||
FIGHT_END = "FightEnd",
|
||
CHAPTER_BOX = "ChapterBox"
|
||
}
|
||
|
||
BIReport.ADS_CLICK_TYPE = {
|
||
BATTLE_SKILL_REFRESH = "BattleSkillRefresh"
|
||
}
|
||
|
||
-- BIReport.OPEN_STORE_TYPE = {
|
||
-- ICON = "Icon",
|
||
-- NO_GOLD = "NoGold",
|
||
-- FIRST_PAY = "FirstPay",
|
||
-- }
|
||
|
||
BIReport.FIGHT_TYPE = {
|
||
START = "Start",
|
||
END = "End",
|
||
}
|
||
|
||
BIReport.BATTLE_TYPE = {
|
||
["1"] = "Stage",
|
||
["2"] = "DungeonGold",
|
||
["3"] = "DungeonGem",
|
||
["4"] = "DungeonMithril",
|
||
["5"] = "DungeonArena",
|
||
}
|
||
|
||
BIReport.GIFT_TYPE = {
|
||
MALL_POP_GIFT = "MallPopGift",
|
||
MALL_SKIP_AD_GIFT = "MallSkipAdGift",
|
||
MALL_SUBSCRIBE_BLESSING_GIFT = "MallSubscribeBlessingGift",
|
||
MALL_MONTH_CARD = "MallMonthCard",
|
||
MALL_LIMIT_GIFT = "MallLimitGift",
|
||
MALL_FIRST_RECHARGE_GIFT = "MallFirstRechargeGift",
|
||
MALL_CHAPTER_FUND = "MallChapterFund",
|
||
MALL_BATTLE_PASS = "MallBattlePass",
|
||
|
||
MALL_TREASURE = "MallTreasure",
|
||
DAILY_GIFT = "DailyGift",
|
||
WEEKLY_GIFT = "WeeklyGift",
|
||
}
|
||
|
||
BIReport.COIN_TYPE = {
|
||
[1] = "Gold",
|
||
[2] = "Gem",
|
||
}
|
||
|
||
-- BIReport.MONTHLY_CARD_TYPE = {
|
||
-- NONE = "None", -- 无月卡
|
||
-- SMALL = "OnlySmall", -- 小月卡
|
||
-- BIG = "OnlyBig", -- 大月卡
|
||
-- BOTH = "Both", -- 大小月卡
|
||
-- NO_TIME = "NoTime", -- 没登录无月卡数据
|
||
-- }
|
||
|
||
-- 割草
|
||
local EVENT_NAME_EXIT = "exit"
|
||
local EVENT_NAME_FIGHT = "fight"
|
||
local EVENT_NAME_CLICK_BTN = "click_btn"
|
||
local EVENT_NAME_ITEM_GET = "item_get"
|
||
local EVENT_NAME_ITEM_USE = "item_use"
|
||
local EVENT_NAME_COIN_GET = "coin_get"
|
||
local EVENT_NAME_COIN_USE = "coin_use"
|
||
local EVENT_NAME_AD_OPT = "ads_opt"
|
||
local EVENT_NAME_PAY_OPT = "pay_opt"
|
||
local EVENT_NAME_EQUIP_OPT = "equip_opt"
|
||
local EVENT_NAME_LOGIN_FINISH = "login_finish"
|
||
local EVENT_NAME_LOGIN = "login"
|
||
local EVENT_NAME_BATTLE_PASS_OPT = "battle_pass_opt"
|
||
local EVENT_NAME_PING_SERVER = "ping_server"
|
||
local EVENT_NAME_ACCOUNT_OPT = "account_opt"
|
||
local EVENT_NAME_SUMMON = "summon"
|
||
local EVENT_NAME_TASK_OPT = "task_opt"
|
||
local EVENT_NAME_MAIL_OPT = "mail_opt"
|
||
local EVENT_NAME_TRAIN_OPT = "train_opt"
|
||
local EVENT_NAME_CHAPTER_OPT = "chapter_opt" -- 章节
|
||
local EVENT_NAME_RUNE_OPT = "rune_opt" -- 符文
|
||
|
||
-- adjust
|
||
function BIReport:postAdjustSimpleTrackEvent(eventName, eventValue)
|
||
if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
return
|
||
end
|
||
if not eventName or not eventValue then
|
||
return
|
||
end
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAdjustSimpleTrackEvent(eventName, json.encode(eventValue))
|
||
end
|
||
|
||
-- Firebase
|
||
-- function BIReport:postFirebaseLog(eventName, eventValue)
|
||
-- if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
-- return
|
||
-- end
|
||
-- if not eventName or not eventValue then
|
||
-- return
|
||
-- end
|
||
-- if CS.UnityEngine.Application.platform == CS.UnityEngine.RuntimePlatform.Android then
|
||
-- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostFireBaseEvent(eventName, json.encode(eventValue))
|
||
-- end
|
||
-- end
|
||
|
||
function BIReport:updateAccountId(id)
|
||
if id == nil then
|
||
return
|
||
end
|
||
self:clearAccountId()
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:SetThinkingAnalyticsAccountId(tostring(id))
|
||
end
|
||
|
||
function BIReport:clearAccountId()
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:ClearThinkingAnalyticsAccountId()
|
||
end
|
||
|
||
function BIReport:report(name, args)
|
||
-- 内网dev包和编辑器模式不上报
|
||
if Platform and Platform:getIsDevChannel() or EDITOR_MODE then
|
||
return
|
||
end
|
||
-- 审核模式不上报
|
||
if CS.BF.BFMain.IsShenhe then
|
||
return
|
||
end
|
||
--@TODO 2023-02-22 17:15:51 开发期间不上报
|
||
if args and type(args) == "table" then
|
||
-- Level_ID 关卡ID Int 事件发生时所处关卡ID
|
||
-- MaxLevel 最大关卡 Int 事件发生时已解锁的最大关卡
|
||
-- IsNew 是否是新用户 Boolean 事件发生时用户是否为新用户
|
||
-- gold 金币数 Int 事件发生后剩余金币数
|
||
-- gem 钻石数 Int 事件发生后剩余钻石数
|
||
-- Energy 体力数 Int 事件发生后剩余体力数
|
||
-- ResourceVersion 热更资源版本 String 事件发生时资源更新版本
|
||
-- WearEquip 当前装备 String 装备id:等级|装备id:等级|装备id:等级|装备id:等级|装备id:等级(按武器盔甲头盔的顺序)
|
||
-- WearCherish 当前传家宝 String 传家宝id:等级|传家宝id:等级|传家宝id:等级|传家宝id:等级|传家宝id:等级
|
||
-- WearRunes 当前符文 String 符文id:等级|符文id:等级|符文id:等级|符文id:等级|符文id:等级
|
||
-- UserGrade 用户等级 int 事件发生后用户等级
|
||
-- Skill 当前精通能力 int 精通能力强化次数
|
||
if DataManager and DataManager:getIsInitWithServer() then
|
||
if DataManager.ChapterData then
|
||
if not args.max_level then
|
||
args.max_level = DataManager.ChapterData:getHistoryChapterId() + 1
|
||
end
|
||
if not args.level_id then
|
||
args.level_id = DataManager.ChapterData:getCurChapterId() + 1
|
||
end
|
||
end
|
||
if DataManager.BagData and DataManager.BagData.ItemData then
|
||
local goldBigBNum = DataManager.BagData.ItemData:getItemBigNumById(GConst.ItemConst.ITEM_ID_GOLD)
|
||
args.gold_value = goldBigBNum.value
|
||
args.gold_unit = goldBigBNum.unit
|
||
|
||
args.gem = DataManager.BagData.ItemData:getItemById(GConst.ItemConst.ITEM_ID_GEM)
|
||
end
|
||
end
|
||
args.current_version = CS.BF.BFMain.Instance.GameLaunchMgr:GetCurrentVersion()
|
||
-- args.is_today_first = LocalData:getTodayFirst()
|
||
args.device_unique_identifier = CS.UnityEngine.SystemInfo.deviceUniqueIdentifier
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostThinkingAnalyticsEvent(name, json.encode(args))
|
||
else
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostThinkingAnalyticsEvent(name)
|
||
end
|
||
end
|
||
|
||
-- 上报引导每一步
|
||
function BIReport:postTutorialStep(id)
|
||
local level = DataManager.PlayerData:getLv()
|
||
local args = {
|
||
client_tutorial_id = id,
|
||
level = level
|
||
}
|
||
self:report(EVENT_NAME_TUTORIAL, args)
|
||
end
|
||
|
||
-- 首页按钮点击
|
||
function BIReport:postHomeBtnCilck(clickType)
|
||
-- -- Type 点击位置 点击首页按钮时 String "Shop=商店、Equip=装备界面、Home=首页、Level=关卡按钮、ChangeLevel=切换关卡、
|
||
-- -- Talent=天赋界面、LevelBox=关卡宝箱"
|
||
-- -- IsNew 是否是新用户 Boolean 是否为当天新用户,True = 是,False = 否
|
||
-- -- MaxChapter 最大章节 Int 已解锁的最大章节
|
||
-- -- Chapter 章节id Int 当前停留的章节id
|
||
-- local chapterId = DataManager.StageData:getChapterId()
|
||
-- local args = {
|
||
-- type = clickType, -- 宝箱类型
|
||
-- chapter = chapterId, -- 章节
|
||
-- max_chapter = DataManager.StageData:getNewChapterId(),
|
||
-- }
|
||
-- self:report(EVENT_NAME_CLICK_HOME_BTN, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_CLICK_HOME_BTN, args)
|
||
end
|
||
|
||
-- Lua crash
|
||
function BIReport:postLuaCrash(logString, stackTrace)
|
||
local msg = logString .. stackTrace
|
||
if #msg > 2000 then
|
||
msg = string.sub(msg, 1, 2000)
|
||
end
|
||
local args = {
|
||
client_lua_crash_msg = msg,
|
||
}
|
||
self:report(EVENT_NAME_LUA_CRASH, args)
|
||
end
|
||
|
||
-- 上报界面打开
|
||
function BIReport:postOpenUI(uiName, childUI)
|
||
if uiName == nil or uiName == "" then
|
||
return
|
||
end
|
||
local args = {
|
||
client_ui_name = uiName,
|
||
client_ui_child_name = childUI,
|
||
}
|
||
self:report(EVENT_NAME_OPEN_UI, args)
|
||
BIReport:printArgsStr(EVENT_NAME_OPEN_UI, args)
|
||
end
|
||
|
||
-- 上报内购事件,单独处理,只上报到AF和FB,不上报数数
|
||
function BIReport:postPurchase(price, content, originOrderId, orderId)
|
||
-- 只有外网正式渠道真机包才上报
|
||
if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
return
|
||
end
|
||
-- 审核模式不上报
|
||
if CS.BF.BFMain.IsShenhe then
|
||
return
|
||
end
|
||
-- 上报AF,AF的所有事件值都是String类型
|
||
local args = {
|
||
af_revenue = tostring(price),
|
||
af_currency = "USD",
|
||
af_quantity = "1",
|
||
af_content_id = content,
|
||
af_order_id = originOrderId,
|
||
af_receipt_id = orderId
|
||
}
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_purchase", json.encode(args))
|
||
|
||
-- 上报FB的付费事件
|
||
local fbArgs = {
|
||
order_id = originOrderId,
|
||
product_id = content
|
||
}
|
||
CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogPurchase(price, "USD", json.encode(fbArgs))
|
||
|
||
-- 上报付费到adjust
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAdjustRevenueTrackEvent("qm803c", price, "USD")
|
||
end
|
||
|
||
-- 上报等级提升事件,单独处理,只上报到AF和FB,不上报数数
|
||
function BIReport:postFirstLoginEvent()
|
||
-- 只有外网正式渠道真机包才上报
|
||
if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
return
|
||
end
|
||
-- 审核模式不上报
|
||
if CS.BF.BFMain.IsShenhe then
|
||
return
|
||
end
|
||
CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_first_login", json.encode({}))
|
||
CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogAppEvent("fb_first_login", json.encode({}))
|
||
end
|
||
|
||
-- 上报等级提升事件,单独处理,只上报到AF和FB,不上报数数
|
||
-- function BIReport:postLvEvent(lv)
|
||
-- -- 只有外网正式渠道真机包才上报
|
||
-- if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
-- return
|
||
-- end
|
||
-- -- 审核模式不上报
|
||
-- if CS.BF.BFMain.IsShenhe then
|
||
-- return
|
||
-- end
|
||
-- if not lv then
|
||
-- return
|
||
-- end
|
||
-- local postLV = {
|
||
-- [1] = true,
|
||
-- [2] = true,
|
||
-- [3] = true,
|
||
-- [5] = true,
|
||
-- [10] = true,
|
||
-- [15] = true,
|
||
-- [20] = true,
|
||
-- [30] = true,
|
||
-- [40] = true,
|
||
-- [50] = true,
|
||
-- [60] = true,
|
||
-- [70] = true,
|
||
-- [80] = true,
|
||
-- [90] = true,
|
||
-- [100] = true,
|
||
-- }
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_Grade", json.encode({}))
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogAppEvent("fb_Grade", json.encode({}))
|
||
-- -- if not postLV[lv] then
|
||
-- -- return
|
||
-- -- end
|
||
-- -- local args = {}
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_Grade_" .. lv, json.encode(args))
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogAppEvent("fb_Grade_" .. lv, json.encode(args))
|
||
-- end
|
||
|
||
-- 上报广告播放提升事件,单独处理,只上报到AF和FB,不上报数数
|
||
-- function BIReport:postAdEvent()
|
||
-- -- 只有外网正式渠道真机包才上报
|
||
-- if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
-- return
|
||
-- end
|
||
-- -- 审核模式不上报
|
||
-- if CS.BF.BFMain.IsShenhe then
|
||
-- return
|
||
-- end
|
||
-- local adCount = DataManager.PlayerData:getAdCount()
|
||
-- if not adCount then
|
||
-- return
|
||
-- end
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_AdRewardAD", json.encode({}))
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogAppEvent("fb_AdRewardAD", json.encode({}))
|
||
-- -- local postAdCount = {
|
||
-- -- [1] = true,
|
||
-- -- [2] = true,
|
||
-- -- [3] = true,
|
||
-- -- [5] = true,
|
||
-- -- [10] = true,
|
||
-- -- [15] = true,
|
||
-- -- [20] = true,
|
||
-- -- [30] = true,
|
||
-- -- [40] = true,
|
||
-- -- [50] = true,
|
||
-- -- [60] = true,
|
||
-- -- }
|
||
-- -- if not postAdCount[adCount] then
|
||
-- -- return
|
||
-- -- end
|
||
-- -- local args = {}
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_AdRewardAD_" .. adCount, json.encode(args))
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogAppEvent("fb_AdRewardAD_" .. adCount, json.encode(args))
|
||
-- end
|
||
|
||
-- 上报部分档位首次付费
|
||
-- function BIReport:postFirstRechargeEvent(id)
|
||
-- -- 只有外网正式渠道真机包才上报
|
||
-- if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
-- return
|
||
-- end
|
||
-- -- 审核模式不上报
|
||
-- if CS.BF.BFMain.IsShenhe then
|
||
-- return
|
||
-- end
|
||
-- local postRechargeID = {
|
||
-- [1] = false, -- 0.99
|
||
-- [2] = false, -- 1.99
|
||
-- [3] = false, -- 2.99
|
||
-- [4] = true, -- 4.99
|
||
-- [5] = true, -- 9.99
|
||
-- [6] = false, -- 14.99
|
||
-- [7] = true, -- 19.99
|
||
-- [8] = false, -- 24.99
|
||
-- [9] = true, -- 29.99
|
||
-- [10] = true, -- 49.99
|
||
-- [11] = false, -- 69.99
|
||
-- [12] = false, -- 99.99
|
||
-- }
|
||
-- if not postRechargeID[id] then
|
||
-- return
|
||
-- end
|
||
-- local cfg = ConfigManager:getConfig("recharge")[id]
|
||
-- if not cfg then
|
||
-- return
|
||
-- end
|
||
-- local args = {}
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_package_" .. cfg.price, json.encode(args))
|
||
-- end
|
||
|
||
-- 上报进入章节事件,单独处理,只上报到AF和FB,不上报数数
|
||
-- function BIReport:postChapterEvent(chapter)
|
||
-- -- 只有外网正式渠道真机包才上报
|
||
-- if not Platform:getIsPublishChannel() or EDITOR_MODE then
|
||
-- return
|
||
-- end
|
||
-- -- 审核模式不上报
|
||
-- if CS.BF.BFMain.IsShenhe then
|
||
-- return
|
||
-- end
|
||
-- if not chapter then
|
||
-- return
|
||
-- end
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_Chapter", json.encode({}))
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogAppEvent("fb_Chapter", json.encode({}))
|
||
-- -- local args = {}
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFThirdReportSDKMgr:PostAppsflyerEvent("af_Chapter_" .. chapter, json.encode(args))
|
||
-- -- CS.BF.BFMain.Instance.SDKMgr.BFLoginSDKMgr.FBSdk:LogAppEvent("fb_Chapter_" .. chapter, json.encode(args))
|
||
-- end
|
||
|
||
-- 以下为数数
|
||
function BIReport:printArgsStr(eventName, args)
|
||
if EDITOR_MODE then
|
||
local tab = clone(args)
|
||
tab.eventName = eventName
|
||
Logger.log("============report %s===========", eventName)
|
||
Logger.printTable(tab or {})
|
||
end
|
||
end
|
||
|
||
-- 开启游戏
|
||
-- function BIReport:postGameLogin(isFirstLogin)
|
||
-- local args = {
|
||
-- first_begin = isFirstLogin,
|
||
-- }
|
||
-- self:report(EVENT_NAME_LOGIN, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_LOGIN, args)
|
||
-- end
|
||
|
||
-- 登录完成
|
||
function BIReport:postGameLoginFinish()
|
||
-- FirstBegin 是否是首次登陆
|
||
-- DailyFirstBegin 是否当日首次登录
|
||
-- LogType 进入类型
|
||
-- PushID 推送id
|
||
-- MaxLevel 已解锁最大关卡
|
||
-- Duration 登录加载时长
|
||
-- MyEquip 拥有装备
|
||
-- MyCherish 拥有传家宝
|
||
-- MyRunes 拥有符文
|
||
-- MaxTrial 副本进度
|
||
-- IsNew 是否是新用户
|
||
local args = {
|
||
is_daily_first = DataManager:getIsTodayFirstLogin(),
|
||
is_first = DataManager:getIsFirstLogin(),
|
||
}
|
||
local equips = DataManager.BagData.EquipData:getAllEquips()
|
||
for k,v in pairs(equips) do
|
||
if not args.my_equip then
|
||
args.my_equip = v:getId() .. ":" .. v:getLv() .. ":" .. v:getCount()
|
||
else
|
||
args.my_equip = args.my_equip .. "|" .. v:getId() .. ":" .. v:getLv() .. ":" .. v:getCount()
|
||
end
|
||
end
|
||
args.my_equip = args.my_equip or ""
|
||
|
||
for i = 1, 4 do
|
||
local info = DataManager.DungeonData:getPassedMaxLevel(i)
|
||
if info then
|
||
if not args.my_dungeon then
|
||
args.my_dungeon = i .. ":" .. info
|
||
else
|
||
args.my_dungeon = args.my_dungeon .. "|" .. i .. ":" .. info
|
||
end
|
||
end
|
||
end
|
||
|
||
args.my_dungeon = args.my_dungeon or ""
|
||
local info = DataManager.ArenaData:getSegment() or 0
|
||
if not args.my_dungeon then
|
||
args.my_dungeon = "5:" .. info
|
||
else
|
||
args.my_dungeon = args.my_dungeon .. "|5:" .. info
|
||
end
|
||
self:report(EVENT_NAME_LOGIN_FINISH, args)
|
||
BIReport:printArgsStr(EVENT_NAME_LOGIN_FINISH, args)
|
||
end
|
||
|
||
-- 游戏退出
|
||
function BIReport:postGameExit()
|
||
local nowTime = Time:getServerTime()
|
||
local args = {}
|
||
-- if DataManager then
|
||
-- args.duration = nowTime - DataManager:getLoginTime()
|
||
-- end
|
||
self:report(EVENT_NAME_EXIT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EXIT, args)
|
||
end
|
||
|
||
-- 进入战斗
|
||
function BIReport:postFightBegin(battleType, currLevelId, maxLevelId)
|
||
-- Level_ID 进入关卡编号
|
||
-- LevelType 进入关卡类型
|
||
-- MaxLevel 已解锁最大关卡
|
||
-- StartTimes 累计进入次数
|
||
-- IsNew 是否是新用户
|
||
|
||
local args = {
|
||
-- level_id = currLevelId + 1,
|
||
-- max_level = maxLevelId + 1,
|
||
battle_type = BIReport.BATTLE_TYPE[battleType],
|
||
event_type = BIReport.FIGHT_TYPE.START,
|
||
}
|
||
self:report(EVENT_NAME_FIGHT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_FIGHT, args)
|
||
end
|
||
|
||
function BIReport:postFightEnd(battleType, currLevelId, maxLevelId, passType)
|
||
-- Level_ID 进入关卡编号
|
||
-- LevelType 进入关卡类型
|
||
-- MaxLevel 已解锁最大关卡
|
||
-- StartTimes 累计进入次数
|
||
-- IsNew 是否是新用户
|
||
|
||
local args = {
|
||
level_id = currLevelId,
|
||
-- max_level = maxLevelId + 1,
|
||
pass_type = passType,
|
||
battle_type = BIReport.BATTLE_TYPE[battleType],
|
||
event_type = BIReport.FIGHT_TYPE.END,
|
||
}
|
||
self:report(EVENT_NAME_FIGHT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_FIGHT, args)
|
||
end
|
||
|
||
function BIReport:postDungeonFightBegin(battleType, currLevelId, maxLevelId)
|
||
-- Level_ID 进入关卡编号
|
||
-- LevelType 进入关卡类型
|
||
-- MaxLevel 已解锁最大关卡
|
||
-- StartTimes 累计进入次数
|
||
-- IsNew 是否是新用户
|
||
|
||
local args = {
|
||
level_id = currLevelId,
|
||
max_dungeon_level = maxLevelId,
|
||
battle_type = BIReport.BATTLE_TYPE[battleType],
|
||
event_type = BIReport.FIGHT_TYPE.START,
|
||
}
|
||
self:report(EVENT_NAME_FIGHT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_FIGHT, args)
|
||
end
|
||
|
||
function BIReport:postDungeonFightEnd(battleType, currLevelId, maxLevelId, passType)
|
||
-- Level_ID 进入关卡编号
|
||
-- LevelType 进入关卡类型
|
||
-- MaxLevel 已解锁最大关卡
|
||
-- StartTimes 累计进入次数
|
||
-- IsNew 是否是新用户
|
||
|
||
local args = {
|
||
level_id = currLevelId,
|
||
max_dungeon_level = maxLevelId,
|
||
pass_type = passType,
|
||
battle_type = BIReport.BATTLE_TYPE[battleType],
|
||
event_type = BIReport.FIGHT_TYPE.END,
|
||
}
|
||
self:report(EVENT_NAME_FIGHT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_FIGHT, args)
|
||
end
|
||
|
||
-- 首页按钮点击
|
||
function BIReport:postBtnCilck(clickType)
|
||
local args = {
|
||
event_type = clickType,
|
||
}
|
||
self:report(EVENT_NAME_CLICK_BTN, args)
|
||
BIReport:printArgsStr(EVENT_NAME_CLICK_BTN, args)
|
||
end
|
||
|
||
-- 道具获取
|
||
function BIReport:postItemGet(bigNum, itemId, getType)
|
||
-- Item 道具id
|
||
-- Type 获得方式
|
||
-- MaxLevel 最大关卡
|
||
-- ItemNum 获取道具数量
|
||
-- ItemAll 获取后道具数量
|
||
-- IsNew 是否是新用户
|
||
local itemBigNum = DataManager.BagData.ItemData:getItemBigNumById(itemId)
|
||
local args = {
|
||
item_value = bigNum.value,
|
||
item_unit = bigNum.unit,
|
||
item_id = itemId,
|
||
item_all_value = itemBigNum.value,
|
||
item_all_unit = itemBigNum.unit,
|
||
type = getType,
|
||
}
|
||
self:report(EVENT_NAME_ITEM_GET, args)
|
||
BIReport:printArgsStr(EVENT_NAME_ITEM_GET, args)
|
||
end
|
||
|
||
-- 道具使用
|
||
function BIReport:postItemUse(bigNum, itemId, getType)
|
||
-- Item 道具id
|
||
-- Type 消耗方式
|
||
-- MaxLevel 最大关卡
|
||
-- ItemNum 消耗道具数量
|
||
-- ItemAll 消耗后道具数量
|
||
-- IsNew 是否是新用户
|
||
local itemBigNum = DataManager.BagData.ItemData:getItemBigNumById(itemId)
|
||
local args = {
|
||
item_value = bigNum.value,
|
||
item_unit = bigNum.unit,
|
||
item_id = itemId,
|
||
item_all_value = itemBigNum.value,
|
||
item_all_unit = itemBigNum.unit,
|
||
type = getType,
|
||
}
|
||
self:report(EVENT_NAME_ITEM_USE, args)
|
||
BIReport:printArgsStr(EVENT_NAME_ITEM_USE, args)
|
||
end
|
||
|
||
-- 钻石增加
|
||
function BIReport:postGemGet(bigNum, getType, itemId)
|
||
-- CoinNum 代币数量
|
||
-- Type 获得类型
|
||
-- CoinsType 代币类型
|
||
-- IsNew 是否是新用户
|
||
-- MaxLevel 最大关卡
|
||
local args = {
|
||
type = getType,
|
||
-- coin_value = bigNum.value,
|
||
-- coin_unit = bigNum.unit,
|
||
coin_type = BIReport.COIN_TYPE[itemId],
|
||
}
|
||
if itemId == GConst.ItemConst.ITEM_ID_GEM then
|
||
-- args.coin_value = BigNumOpt.bigNum2Num(bigNum)
|
||
args.coin_unit = 0
|
||
else
|
||
args.coin_value = bigNum.value
|
||
args.coin_unit = bigNum.unit
|
||
end
|
||
self:report(EVENT_NAME_COIN_GET, args)
|
||
BIReport:printArgsStr(EVENT_NAME_COIN_GET, args)
|
||
end
|
||
|
||
-- 钻石使用
|
||
function BIReport:postGemUse(num, getType, itemId)
|
||
-- CoinNum 代币数量 减少代币时 Int 使用代币数量
|
||
-- Type 使用类型 String Box=开启宝箱、复活=Revive、天赋升级=Talent、Equip=装备升级
|
||
-- CoinsType 代币类型 String Gold=金币、Gems=钻石
|
||
-- IsNew 是否是新用户 Boolean 是否为当天新用户,True = 是,False = 否
|
||
-- MaxChapter 最大章节 Int 已解锁的最大章节
|
||
local args = {
|
||
type = getType,
|
||
coin_num = num,
|
||
coin_type = BIReport.COIN_TYPE[itemId],
|
||
coin_all = DataManager.BagData.ItemData:getItemNumById(itemId),
|
||
-- max_chapter = DataManager.StageData:getNewChapterId(),
|
||
}
|
||
self:report(EVENT_NAME_COIN_USE, args)
|
||
BIReport:printArgsStr(EVENT_NAME_COIN_USE, args)
|
||
end
|
||
|
||
-- 点击广告按钮
|
||
function BIReport:postAdClick(adsType)
|
||
local args = {
|
||
ad_type = adsType,
|
||
event_type = BIReport.ADS_OPT_TYPE.CLICK,
|
||
}
|
||
self:report(EVENT_NAME_AD_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_AD_OPT, args)
|
||
end
|
||
|
||
-- 广告播放视频成功
|
||
function BIReport:postAdPlaySuccess(adsType)
|
||
local args = {
|
||
ad_type = adsType,
|
||
event_type = BIReport.ADS_OPT_TYPE.SUC,
|
||
}
|
||
self:report(EVENT_NAME_AD_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_AD_OPT, args)
|
||
end
|
||
|
||
-- 广告奖励发放成功
|
||
function BIReport:postAdRewardGet(adsType)
|
||
local args = {
|
||
ad_type = adsType,
|
||
event_type = BIReport.ADS_OPT_TYPE.RETURN,
|
||
}
|
||
self:report(EVENT_NAME_AD_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_AD_OPT, args)
|
||
end
|
||
|
||
-- 支付sdk初始化成功
|
||
function BIReport:postPayInitSuccess()
|
||
local args = {
|
||
event_type = BIReport.PAY_OPT_TYPE.INIT_SUC,
|
||
}
|
||
self:report(EVENT_NAME_PAY_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PAY_OPT, args)
|
||
end
|
||
|
||
-- 支付sdk初始化失败
|
||
function BIReport:postPayInitFailed(failedDesc)
|
||
local args = {
|
||
failed_desc = failedDesc or GConst.EMPTY_STRING,
|
||
event_type = BIReport.PAY_OPT_TYPE.INIT_FAILED,
|
||
}
|
||
self:report(EVENT_NAME_PAY_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PAY_OPT, args)
|
||
end
|
||
|
||
-- 点击商品购买按钮
|
||
function BIReport:postPayClick(giftType, id, rechargeId)
|
||
local args = {
|
||
gift_type = giftType,
|
||
commodity_id = id,
|
||
-- commodity_state = payDouble,
|
||
recharge_id = rechargeId,
|
||
event_type = BIReport.PAY_OPT_TYPE.CLICK,
|
||
}
|
||
self:report(EVENT_NAME_PAY_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PAY_OPT, args)
|
||
end
|
||
|
||
-- 跳转购买界面
|
||
function BIReport:postPayTurn(giftType, id, rechargeId)
|
||
local args = {
|
||
gift_type = giftType,
|
||
commodity_id = id,
|
||
-- commodity_state = payDouble,
|
||
recharge_id = rechargeId,
|
||
event_type = BIReport.PAY_OPT_TYPE.BUY,
|
||
}
|
||
self:report(EVENT_NAME_PAY_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PAY_OPT, args)
|
||
end
|
||
|
||
-- 取消购买
|
||
function BIReport:postPayCancel(productId, orderId, rechargeId, giftType)
|
||
local args = {
|
||
pay_product_id = productId,
|
||
pay_order_id = orderId,
|
||
recharge_id = rechargeId,
|
||
gift_type = giftType,
|
||
event_type = BIReport.PAY_OPT_TYPE.CANCEL,
|
||
}
|
||
self:report(EVENT_NAME_PAY_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PAY_OPT, args)
|
||
end
|
||
|
||
-- 购买失败
|
||
function BIReport:postPayFailed(productId, orderId, rechargeId, failedType, giftType)
|
||
local args = {
|
||
pay_product_id = productId,
|
||
pay_order_id = orderId,
|
||
recharge_id = rechargeId,
|
||
pay_failed_type = failedType,
|
||
gift_type = giftType,
|
||
event_type = BIReport.PAY_OPT_TYPE.FAILED,
|
||
}
|
||
self:report(EVENT_NAME_PAY_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PAY_OPT, args)
|
||
end
|
||
|
||
-- -- 获得购买物品
|
||
function BIReport:postPayGet(giftType, id, rechargeId, orderId, originOrderId, buyNum, rewards)
|
||
-- local itemStr = GFunc.getRewardsStr(rewards)
|
||
local args = {
|
||
gift_type = giftType,
|
||
commodity_id = id,
|
||
-- commodity_state = payDouble,
|
||
-- commodity_item = itemStr,
|
||
buy_num = buyNum,
|
||
origin_order_id_new = tostring(originOrderId),
|
||
recharge_id = rechargeId,
|
||
event_type = BIReport.PAY_OPT_TYPE.REWARD,
|
||
}
|
||
self:report(EVENT_NAME_PAY_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PAY_OPT, args)
|
||
|
||
if EDITOR_MODE then
|
||
if not giftType or not id or not rechargeId then
|
||
local params = {
|
||
content = "BI Report postPayGet has no basic params",
|
||
boxType = GConst.MESSAGE_BOX_TYPE.MB_OK,
|
||
okText = I18N:getGlobalText(I18N.GlobalConst.BTN_TEXT_OK),
|
||
}
|
||
GFunc.showMessageBox(params)
|
||
Logger.log("BI Report postPayGet has no basic params")
|
||
end
|
||
end
|
||
end
|
||
|
||
-- 装备穿戴
|
||
function BIReport:postEquipWear(equipPart, equipLv, equipId)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Equip_Lv 装备等级
|
||
-- Equip_ID 装备ID
|
||
|
||
local args = {
|
||
equip_part = equipPart,
|
||
equip_lv = equipLv,
|
||
equip_id = equipId,
|
||
event_type = BIReport.EQUIP_OPT_TYPE.EQUIP_WEAR,
|
||
}
|
||
self:report(EVENT_NAME_EQUIP_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EQUIP_OPT, args)
|
||
end
|
||
|
||
-- 装备升级
|
||
function BIReport:postEquipUp(equipPart, equipLv, equipId)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Equip_Lv 升级后装备等级
|
||
-- Equip_ID 装备ID
|
||
-- Type 消耗类型
|
||
|
||
local args = {
|
||
equip_part = equipPart,
|
||
equip_lv = equipLv,
|
||
equip_id = equipId,
|
||
event_type = BIReport.EQUIP_OPT_TYPE.EQUIP_LV_UP,
|
||
}
|
||
self:report(EVENT_NAME_EQUIP_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EQUIP_OPT, args)
|
||
end
|
||
|
||
function BIReport:postEquipGet(equipId, getType)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Equip_Lv 获取的装备等级
|
||
-- Equip_ID 获取的装备ID
|
||
-- Type 获取类型
|
||
local args = {
|
||
equip_id = equipId,
|
||
type = getType,
|
||
event_type = BIReport.EQUIP_OPT_TYPE.EQUIP_GET,
|
||
}
|
||
self:report(EVENT_NAME_EQUIP_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EQUIP_OPT, args)
|
||
end
|
||
|
||
function BIReport:postLegacyWear(equipPart, equipLv, equipId)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Equip_Lv 装备等级
|
||
-- Equip_ID 装备ID
|
||
|
||
local args = {
|
||
equip_part = equipPart,
|
||
equip_lv = equipLv,
|
||
equip_id = equipId,
|
||
event_type = BIReport.EQUIP_OPT_TYPE.LEGACY_WEAR,
|
||
}
|
||
self:report(EVENT_NAME_EQUIP_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EQUIP_OPT, args)
|
||
end
|
||
|
||
-- 装备升级
|
||
function BIReport:postLegacyUp(equipPart, equipLv, equipId)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Equip_Lv 升级后装备等级
|
||
-- Equip_ID 装备ID
|
||
-- Type 消耗类型
|
||
|
||
local args = {
|
||
equip_part = equipPart,
|
||
equip_lv = equipLv,
|
||
equip_id = equipId,
|
||
event_type = BIReport.EQUIP_OPT_TYPE.LEGACY_LV_UP,
|
||
}
|
||
self:report(EVENT_NAME_EQUIP_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EQUIP_OPT, args)
|
||
end
|
||
|
||
function BIReport:postLegacyGet(equipId, getType)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Equip_Lv 获取的装备等级
|
||
-- Equip_ID 获取的装备ID
|
||
-- Type 获取类型
|
||
local args = {
|
||
equip_id = equipId,
|
||
type = getType,
|
||
event_type = BIReport.EQUIP_OPT_TYPE.LEGACY_GET,
|
||
}
|
||
self:report(EVENT_NAME_EQUIP_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EQUIP_OPT, args)
|
||
end
|
||
|
||
function BIReport:postLegacyRemove(equipPart, equipId)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Equip_Lv 获取的装备等级
|
||
-- Equip_ID 获取的装备ID
|
||
-- Type 获取类型
|
||
local args = {
|
||
equip_part = equipPart,
|
||
equip_id = equipId,
|
||
event_type = BIReport.EQUIP_OPT_TYPE.LEGACY_REMOVE,
|
||
}
|
||
self:report(EVENT_NAME_EQUIP_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_EQUIP_OPT, args)
|
||
end
|
||
|
||
function BIReport:postDataException(itemId, count, getType)
|
||
-- local args = {
|
||
-- item_num = count,
|
||
-- item_id = itemId,
|
||
-- type = getType,
|
||
-- }
|
||
-- self:report(EVENT_NAME_DATA_EXCEPTION, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_DATA_EXCEPTION, args)
|
||
end
|
||
|
||
-- 战令打点
|
||
function BIReport:postBattlePassOpen()
|
||
local args = {
|
||
event_type = BIReport.BATTLE_PASS_OPT_TYPE.OPEN,
|
||
}
|
||
self:report(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
end
|
||
|
||
function BIReport:postBattlePassTaskClaim(id, lv, progress)
|
||
local args = {
|
||
task_id = id,
|
||
task_level = lv,
|
||
task_progress = progress,
|
||
event_type = BIReport.BATTLE_PASS_OPT_TYPE.TASK_CLAIM,
|
||
}
|
||
self:report(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
end
|
||
|
||
function BIReport:postBattlePassRewardClaim(lv, highLv)
|
||
local args = {
|
||
task_level = lv,
|
||
task_high_lv = highLv,
|
||
event_type = BIReport.BATTLE_PASS_OPT_TYPE.REWARD_CLAIM,
|
||
}
|
||
self:report(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
end
|
||
|
||
function BIReport:postBattlePassExpGet(getExp, lv, exp)
|
||
local args = {
|
||
task_get_exp = getExp,
|
||
task_level = lv,
|
||
task_exp = exp,
|
||
event_type = BIReport.BATTLE_PASS_OPT_TYPE.EXP_GET,
|
||
}
|
||
self:report(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_BATTLE_PASS_OPT, args)
|
||
end
|
||
|
||
-- 登录
|
||
-- 点击登录
|
||
function BIReport:postAccountLoginClick(loginType)
|
||
local args = {
|
||
login_type = loginType,
|
||
event_type = BIReport.ACCOUNT_OPT_TYPE.LOGIN_CLICK,
|
||
}
|
||
self:report(EVENT_NAME_ACCOUNT_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_ACCOUNT_OPT, args)
|
||
end
|
||
|
||
-- 登录成功
|
||
function BIReport:postAccountLoginFinish(loginType)
|
||
local args = {
|
||
login_type = loginType,
|
||
event_type = BIReport.ACCOUNT_OPT_TYPE.LOGIN_FINISH,
|
||
}
|
||
self:report(EVENT_NAME_ACCOUNT_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_ACCOUNT_OPT, args)
|
||
end
|
||
|
||
-- 登录失败
|
||
function BIReport:postAccountLoginFailed(loginType, reason)
|
||
local args = {
|
||
login_type = loginType,
|
||
login_reason = reason,
|
||
event_type = BIReport.ACCOUNT_OPT_TYPE.LOGIN_FAILED,
|
||
}
|
||
self:report(EVENT_NAME_ACCOUNT_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_ACCOUNT_OPT, args)
|
||
end
|
||
|
||
-- 点击绑定
|
||
function BIReport:postAccountBindClick(loginType)
|
||
local args = {
|
||
login_type = loginType,
|
||
event_type = BIReport.ACCOUNT_OPT_TYPE.BIND_CLICK,
|
||
}
|
||
self:report(EVENT_NAME_ACCOUNT_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_ACCOUNT_OPT, args)
|
||
end
|
||
|
||
-- 绑定成功
|
||
function BIReport:postAccountBindFinish(loginType)
|
||
local args = {
|
||
login_type = loginType,
|
||
event_type = BIReport.ACCOUNT_OPT_TYPE.BIND_FINISH,
|
||
}
|
||
self:report(EVENT_NAME_ACCOUNT_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_ACCOUNT_OPT, args)
|
||
end
|
||
|
||
-- -- 切换账号
|
||
-- function BIReport:postAccountChange(loginType)
|
||
-- local args = {
|
||
-- loginType = loginType,
|
||
-- }
|
||
-- self:report(EVENT_NAME_ACCOUNT_CHANGE, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_ACCOUNT_CHANGE, args)
|
||
-- end
|
||
|
||
-- -- 删除账号
|
||
-- function BIReport:postAccountDelete(loginType)
|
||
-- local args = {
|
||
-- loginType = loginType,
|
||
-- }
|
||
-- self:report(EVENT_NAME_ACCOUNT_DELETE, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_ACCOUNT_DELETE, args)
|
||
-- end
|
||
|
||
-- 上报ping服务器地址情况
|
||
function BIReport:postPingServer(address, time, resultType)
|
||
local args = {
|
||
address = address,
|
||
time = time,
|
||
type = resultType
|
||
}
|
||
self:report(EVENT_NAME_PING_SERVER, args)
|
||
BIReport:printArgsStr(EVENT_NAME_PING_SERVER, args)
|
||
end
|
||
|
||
-- -- CDKey兑换结果
|
||
-- function BIReport:postCDKeyResult(CDKeyStr, result, code)
|
||
-- local args = {
|
||
-- cdkey = CDKeyStr,
|
||
-- success = result,
|
||
-- code = code
|
||
-- }
|
||
-- self:report(CDKEY_EXCHANGE_RESULT, args)
|
||
-- BIReport:printArgsStr(CDKEY_EXCHANGE_RESULT, args)
|
||
-- end
|
||
|
||
-- -- 网络异常
|
||
-- function BIReport:postNetFail(errorType, msgName, time, failedTime)
|
||
-- local args = {
|
||
-- error_type = errorType,
|
||
-- message_name = msgName,
|
||
-- time = time,
|
||
-- failed_time = failedTime
|
||
-- }
|
||
-- self:report(EVENT_NAME_NET_FAIL, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_NET_FAIL, args)
|
||
-- end
|
||
|
||
-- -- 通信成功
|
||
-- function BIReport:postNetSuccess(msgName, retryTimes, time, code)
|
||
-- local args = {
|
||
-- message_name = msgName,
|
||
-- retry_times = retryTimes,
|
||
-- time = time,
|
||
-- code = code
|
||
-- }
|
||
-- self:report(EVENT_NAME_NET_SUCCESS, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_NET_SUCCESS, args)
|
||
-- end
|
||
|
||
-- -- 重复订单
|
||
-- function BIReport:postRepeatPayOrder(productId, originOrderId, orderId)
|
||
-- local args = {
|
||
-- product_id = productId,
|
||
-- origin_order_id = tostring(originOrderId),
|
||
-- order_id = orderId
|
||
-- }
|
||
-- self:report(EVENT_NAME_PAY_ORDER_REPEAT, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_PAY_ORDER_REPEAT, args)
|
||
-- end
|
||
|
||
-- 召唤
|
||
function BIReport:postSummonSuc(summonType, diamondType)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- Type 召唤类型 Equip=武器召唤、Defense=防具召唤、Cherish=传家宝召唤、Rune=符文召唤
|
||
-- DiamondType 消耗钻石类型 Free=免费召唤、Ad1=当日第1次广告召唤、Ad2=第2次、Ad3=当日第3次、Daimond11=召唤11次、Diamond35=召唤35次
|
||
local args = {
|
||
diamond_type = diamondType,
|
||
type = summonType,
|
||
}
|
||
self:report(EVENT_NAME_SUMMON, args)
|
||
BIReport:printArgsStr(EVENT_NAME_SUMMON, args)
|
||
end
|
||
|
||
-- 任务
|
||
function BIReport:postTaskFinish(taskType, taskId)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- TaskType 任务类型
|
||
-- Task_ID 任务id
|
||
-- FinishTimes 任务完成数
|
||
|
||
local args = {
|
||
task_type = taskType,
|
||
task_id = taskId,
|
||
event_type = BIReport.TASK_OPT_TYPE.FINISH,
|
||
}
|
||
self:report(EVENT_NAME_TASK_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_TASK_OPT, args)
|
||
end
|
||
|
||
function BIReport:postTaskReward(taskType, taskId)
|
||
-- MaxLevel 最大关卡
|
||
-- IsNew 是否是新用户
|
||
-- TaskType 任务类型
|
||
-- Task_ID 任务id
|
||
-- FinishTimes 累计领取奖励数
|
||
|
||
local args = {
|
||
task_type = taskType,
|
||
task_id = taskId,
|
||
event_type = BIReport.TASK_OPT_TYPE.REWARD,
|
||
}
|
||
self:report(EVENT_NAME_TASK_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_TASK_OPT, args)
|
||
end
|
||
|
||
-- 邮箱
|
||
function BIReport:postMailOpen(mailId)
|
||
-- IsNew 是否是新用户
|
||
-- MaxLevel 最大关卡
|
||
-- Email_ID 邮件编号
|
||
|
||
local args = {
|
||
mail_id = mailId,
|
||
event_type = BIReport.MAIL_OPT_TYPE.OPEN,
|
||
}
|
||
self:report(EVENT_NAME_MAIL_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_MAIL_OPT, args)
|
||
end
|
||
|
||
function BIReport:postMailClaim(mailId)
|
||
-- IsNew 是否是新用户
|
||
-- MaxLevel 最大关卡
|
||
-- Email_ID 邮件编号
|
||
|
||
local args = {
|
||
mail_id = mailId,
|
||
event_type = BIReport.MAIL_OPT_TYPE.CLAIM,
|
||
}
|
||
self:report(EVENT_NAME_MAIL_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_MAIL_OPT, args)
|
||
end
|
||
|
||
-- 修炼
|
||
function BIReport:postTrainFinish(trainType, trainLv)
|
||
-- IsNew 是否是新用户
|
||
-- MaxLevel 最大关卡
|
||
-- TrainLv 训练属性等级
|
||
-- TrainType 训练类型
|
||
|
||
local args = {
|
||
type = tostring(trainType),
|
||
train_lv = trainLv,
|
||
event_type = BIReport.TRAIN_OPT_TYPE.TRAIN,
|
||
}
|
||
self:report(EVENT_NAME_TRAIN_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_TRAIN_OPT, args)
|
||
end
|
||
|
||
function BIReport:postTrainReborn()
|
||
local args = {
|
||
event_type = BIReport.TRAIN_OPT_TYPE.REBORN,
|
||
}
|
||
self:report(EVENT_NAME_TRAIN_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_TRAIN_OPT, args)
|
||
end
|
||
|
||
function BIReport:postTrainQuickPass()
|
||
local args = {
|
||
event_type = BIReport.TRAIN_OPT_TYPE.QUICK_PASS,
|
||
}
|
||
self:report(EVENT_NAME_TRAIN_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_TRAIN_OPT, args)
|
||
end
|
||
|
||
function BIReport:postTrainQuickPassUp(level)
|
||
local args = {
|
||
train_lv = level,
|
||
event_type = BIReport.TRAIN_OPT_TYPE.QUICK_PASS,
|
||
}
|
||
self:report(EVENT_NAME_TRAIN_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_TRAIN_OPT, args)
|
||
end
|
||
|
||
-- function BIReport:postChapterPass(oldId, chapterId, passType)
|
||
-- local args = {
|
||
-- old_id = oldId,
|
||
-- chapter_id = chapterId,
|
||
-- pass_type = passType,
|
||
-- event_type = BIReport.CHAPTER_OPT_TYPE.PASS,
|
||
-- }
|
||
|
||
-- self:report(EVENT_NAME_CHAPTER_OPT, args)
|
||
-- BIReport:printArgsStr(EVENT_NAME_CHAPTER_OPT, args)
|
||
-- end
|
||
|
||
-- 符文
|
||
function BIReport:postRuneGet(runeId)
|
||
local args = {
|
||
equip_id = runeId,
|
||
event_type = BIReport.RUNE_OPT_TYPE.GET,
|
||
}
|
||
|
||
self:report(EVENT_NAME_RUNE_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_RUNE_OPT, args)
|
||
end
|
||
|
||
function BIReport:postRuneUp(runeId, runeLv)
|
||
local args = {
|
||
equip_id = runeId,
|
||
equip_lv = runeLv,
|
||
event_type = BIReport.RUNE_OPT_TYPE.LV_UP,
|
||
}
|
||
|
||
self:report(EVENT_NAME_RUNE_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_RUNE_OPT, args)
|
||
end
|
||
|
||
function BIReport:postRuneWear(runeId, runeLv)
|
||
local args = {
|
||
equip_id = runeId,
|
||
equip_lv = runeLv,
|
||
event_type = BIReport.RUNE_OPT_TYPE.WEAR,
|
||
}
|
||
|
||
self:report(EVENT_NAME_RUNE_OPT, args)
|
||
BIReport:printArgsStr(EVENT_NAME_RUNE_OPT, args)
|
||
end
|
||
|
||
return BIReport |