BBASMMultiVRVideoPlugin.h 4.56 KB
//
//  BBASMMultiVRVideoPlugin.h
//  BBAMNP
//
//  Created by baidu on 2019/10/14.
//  Copyright © 2019 Baidu. All rights reserved.
//

#import <BBASchemeDispatcher/BBASchemeDispatcher.h>

NS_ASSUME_NONNULL_BEGIN

FOUNDATION_EXPORT NSString *const BBASMPluginKeyVideoIsVRKey;

@interface BBASMMultiVRVideoPlugin : BBASDPluginBase

/**
 * 描  述: 调起小程序VR视频组件
 * 示  例: baiduboxapp://swanAPI/vrvideo/open?params={"videoId":"1","src":"https://xxx.com","position":{"left":"0","top":"0","width":"375","height":"20"},"initialTime":"xxx","duration":"xxx","controls":"xx","autoplay":"xx","loop":"xx","muted":"xx","poster":"xx"}&callback=_bdbox_js_186&upgrade=0
 * 文  档: http://es.baidu-int.com/#/apidetail/936
 * 备  注:
 * ********** description ************
 * @name:      boxjs.vrVideoOpen
 * @authority: swanAPI
 * @path:      /vrvideo/open
 * @args:      [{"name": "gesture", "value": "string="}, {"name": "videoId", "value": "string="},{"name": "componentId","value": "string="},{"name": "viewId", "value": "string="}, {"name": "parentId", "value": "string="}, {"name": "src", "value": "string="}, {"name": "initialTime", "value": "string="}, {"name": "poster", "value": "string="}, {"name": "slaveId", "value": "string="}, {"name": "position", "value": "Object="}, {"name": "controls", "value": "boolean="}, {"name": "autoplay", "value": "boolean="}, {"name": "loop", "value": "boolean="}, {"name": "muted", "value": "boolean="}, {"name": "showPlayBtn", "value": "boolean="}, {"name": "showNoWifiTip", "value": "boolean="}, {"name": "showCenterPlayBtn", "value": "boolean="}, {"name": "hide", "value": "boolean="}, {"name": "showProgress", "value": "boolean="}, {"name": "direction", "value": "string="}, {"name": "showFullscreenBtn", "value": "boolean="},{"name": "vrVideoMode","value": {"type": {"projectionMode": "string","displayMode": "string","interactiveMode": "string"},"isRequired": false}}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
 */
- (void)open:(BBASchemeDispatcher *)dispatcher;

/**
 * 描  述: 小程序VR视频组件update
 * 示  例: baiduboxapp://swanAPI/vrvideo/update?params={"slaveId":"1","videoId":"1","src":"https://m.baidu.com","position":{"left":"0","top":"0","width":"375","height":"20"},"initialTime":"xxx","duration":"xxx","controls":"xx","autoplay":"xx","loop":"xx","muted":"xx","poster":"xx"}&callback=_bdbox_js_186&upgrade=0
 * 文  档: http://es.baidu-int.com/#/apidetail/941
 * 备  注:
 * ********** description ************
 * @name:      boxjs.vrVideoUpdate
 * @authority: swanAPI
 * @path:      /vrvideo/update
 * @args:      [{"name": "gesture", "value": "string="}, {"name": "videoId", "value": "string="},{"name": "componentId","value": "string="},{"name": "viewId", "value": "string="}, {"name": "parentId", "value": "string="}, {"name": "src", "value": "string="}, {"name": "initialTime", "value": "string="}, {"name": "poster", "value": "string="}, {"name": "slaveId", "value": "string="}, {"name": "position", "value": "Object="}, {"name": "controls", "value": "boolean="}, {"name": "autoplay", "value": "boolean="}, {"name": "loop", "value": "boolean="}, {"name": "muted", "value": "boolean="}, {"name": "showPlayBtn", "value": "boolean="}, {"name": "showNoWifiTip", "value": "boolean="}, {"name": "showCenterPlayBtn", "value": "boolean="}, {"name": "hide", "value": "boolean="}, {"name": "showProgress", "value": "boolean="}, {"name": "direction", "value": "string="}, {"name": "showFullscreenBtn", "value": "boolean="},{"name": "vrVideoMode","value": {"type": {"projectionMode": "string","displayMode": "string","interactiveMode": "string"},"isRequired": false}}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
 */
- (void)update:(BBASchemeDispatcher *)dispatcher;

/**
 * 描  述: 移除vrvideo组件
 * 示  例: baiduboxapp://swanAPI/vrvideo/remove?params=$params
 * 文  档: http://es.baidu-int.com/#/apidetail/938
 * 备  注:
 * ********** description ************
 * @name:      boxjs.vrVideoRemove
 * @authority: swanAPI
 * @path:      /vrvideo/remove
 * @args:      [{"name": "videoId", "value": "string="},{"name": "componentId","value": "string="},{"name": "slaveId", "value": "string="}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.url", "method": "_naSwan.bridge.postMessage"}}}
 */
- (void)remove:(BBASchemeDispatcher *)dispatcher;

@end

NS_ASSUME_NONNULL_END