BBASMPlugin+GetFormId.h 2.46 KB
//
//  BBASMPlugin+GetFormId.h
//  SWAN
//
//  Created by baidu on 2018/8/20.
//  Copyright © 2018年 baidu. All rights reserved.
//

#import "BBASMPlugin.h"

@interface BBASMPlugin (GetFormId)

/**
 * 描  述: 获取表单FormId,提供给前端使用,并不对外暴露
 * 示  例: baiduboxapp://swanAPI/getFormId?params=%7B%22cb%22%3A%22formCallback_1534911820061__3ad3%22%7D&callback=_bdbox_js_751&upgrade=0
 * 文  档: http://ft.baidu.com/#/scheme/swan_getformid
 * 备  注:
 * ********** description ************
 * @name:      getFormId
 * @authority: swanAPI
 * @path:      /getFormId
 * @args:      [{"name": "cb", "value": "string="}, {"name": "reportType", "value": "string"}, {"name": "templateId", "value": "string|Array="}, {"name": "subscribeId", "value": "string="}, {"name": "invokeFrom", "value": "string="}, {"name": "skipSubscribeAuthorize","value": "boolean="}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
 */
- (void)getFormId:(BBASchemeDispatcher *)dispatcher;

/**
 * 描  述: 调起客户端小程序订阅消息界面,返回用户订阅消息的操作结果。
 * 示  例: baiduboxapp://swanAPI/subscription/requestSubscribeFormId?params={}&callback=_bdbox_js_186&upgrade=0
 * 文  档: http://es.baidu-int.com/index#/apidetail/1441
 * 备  注:
 * ********** description ************
 * @name:      requestSubscribeFormId
 * @authority: swanAPI
 * @path:      /subscription/requestSubscribeFormId
 * @args:      [{"name": "cb", "value": "string"}, {"name": "subscribeId", "value": "string"}, {"name": "skipSubscribeAuthorize", "value": "boolean="}, {"name": "templateId", "value": "string[]"}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.subscription.requestSubscribeFormId"}}}
 */
- (void)requestSubscribeFormId:(BBASchemeDispatcher *)dispatcher;

/// 调起订阅消息入口
/// @param params 端能力参数
/// @param appId appId
/// @param invokeFrom 调起来源
/// @param completion 二级回调
+ (NSDictionary *)subscribeEntrance:(NSDictionary *)params
                              appId:(NSString *)appId
                         invokeFrom:(NSString *)invokeFrom
                           complete:(void(^)(NSDictionary *))completion;

+ (NSString *)rasignByDelta:(NSInteger)delta
                  timestamp:(int64_t)timestamp;

@end