BBASMPlugin+UBCFlow.h 4.08 KB
//
//  BBASMPlugin+UBCFlow.h
//  SWAN
//
//  Created by baidu on 2018/3/22.
//  Copyright © 2018年 baidu. All rights reserved.
//

#import "BBASMPlugin.h"

@interface BBASMPlugin (UBCFlow)

/**
 * 描  述: 前端向NA发布一个ubc流式打点数据采集包
 * 示  例: baiduboxapp://swanAPI/openStatisticFlowJar?params={"flowId":"123""data":[{"actionId":"action", "timestamp"1111111111111}]}&callback=$callback
 * 文  档: http://ft.baidu.com/#/scheme/swan_ubcflowjar
 * 备  注:
 * ********** description ************
 * @name:      statisticFlowJar
 * @authority: swanAPI
 * @path:      /openStatisticFlowJar
 * @args:      [{"name": "groupId", "value": "string"}, {"name": "bizId", "value": "string"}, {"name": "data", "value": "Array"}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
 */
- (void)openStatisticFlowJar:(BBASchemeDispatcher *)dispatcher;

/**
 * 描  述: 前端向NA发布一个ubc流式打点数据采集包
 * 示  例: baiduboxapp://swanAPI/ubcFlowJar?params={"flowId":"670","data":[{"actionId":"master_js_parsed","timestamp":"1536292058429"},{"actionId":"fe_master_dispatch_start","timestamp":"1536292550669"},{"actionId":"fe_slave_preload_end","timestamp":"1536292058464"}]}&callback=_bdbox_js_419&upgrade=0
 * 文  档: http://ft.baidu.com/#/scheme/swan_ubcflowjar
 * 备  注:
 * ********** description ************
 * @name:      ubcFlowJar
 * @authority: swanAPI
 * @path:      /ubcFlowJar
 * @args:      [{"name": "flowId", "value": "string"}, {"name": "ext", "value": "Object="}, {"name": "data", "value": "Array"}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "webdegrade": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.utils.ubcFlowJar"}}}
 */
- (void)ubcFlowJar:(BBASchemeDispatcher *)dispatcher;

/**
 * 描  述: 前端向NA发布一个UBC事件打点
 * 示  例: baiduboxapp://swanAPI/openStatisticEvent?params={"flowId":"123","data":[{"actionId":"action", "timestamp"1111111111111}]}&callback=$callback
 * 文  档: http://ft.baidu.com/#/scheme/swan_openstatisticevent
 * 备  注:
 * ********** description ************
 * @name:      statisticEvent
 * @authority: swanAPI
 * @path:      /openStatisticEvent
 * @args:      [{"name": "groupId", "value": "string"}, {"name": "bizId", "value": "string"}, {"name": "eventName", "value": "string"}, {"name": "content", "value": "Object"}, {"name": "appVersion", "value": "string="}, {"name": "swanType", "value": "string="}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
 */
- (void)openStatisticEvent:(BBASchemeDispatcher *)dispatcher;

/**
 * 描  述: 对ubc和ceres两个平台上报打点信息
 * 示  例: baiduboxapp://swanAPI/ubcAndCeresStatisticEvent?params={"xxx}]}&callback=_bdbox_js_419&upgrade=0
 * 文  档: http://es.baidu-int.com/index#/apidetail/1243
 * 备  注:
 * ********** description ************
 * @name:      ubcAndCeresStatisticEvent
 * @authority: swanAPI
 * @path:      /ubcAndCeresStatisticEvent
 * @args:      [{"name": "content", "value": "Object"}, {"name": "bizId", "value": "string"}, {"name": "ubcId", "value": "string"}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.statisticEventBridge.ubcAndCeresStatisticEvent"}}}
 */
- (void)ubcAndCeresStatisticEvent:(BBASchemeDispatcher *)dispatcher;

#pragma mark - not API
/**
 * @brief ubc和Ceres点式,scheme和jsbanding调用
 *
 * @param params 打点参数
 * @param appid xcxid
 * @return 返回结果
*/
+ (NSDictionary *)ubcAndCeresStatisticEventParams:(NSDictionary *)params appid:(NSString *)appid;

/**
 * @brief ubc和Ceres流式打点,scheme和jsbanding调用
 *
 * @param param  打点参数
 * @param appid xcxid
 * @return 返回结果
 */
+ (NSDictionary *)ubcFlowJarWithParam:(NSDictionary *)param appid:(NSString *)appid;

@end