BBASMPlugin+Calendar.h 3.01 KB
//
//  BBASMPlugin+Calendar.h
//  BBAMNP
//
//  Created by baidu on 2019/12/3.
//  Copyright © 2019 Baidu. All rights reserved.
//

#import "BBASMPlugin.h"

NS_ASSUME_NONNULL_BEGIN

@interface BBASMPlugin (Calendar)

/**
 * 描  述: 在系统日历中添加事件
 * 示  例: baiduboxapp://swanAPI/addEventOnCalendar?params={"startTime":1575557035,"endTime":1575560635,"title":"test","location":"test","url":"baiduboxapp://swan","cb":"cb"}&callback=_bdbox_js_547&upgrade=0
 * 文  档: http://es.baidu-int.com/index?#/apidetail/982
 * 备  注:
 * ********** description ************
 * @name:      addEventOnCalendar
 * @authority: swanAPI
 * @path:      /addEventOnCalendar
 * @args:      [{"name": "cb", "value": "string"}, {"name": "url",  "value": "string="}, {"name": "location",  "value": "string="}, {"name": "title",  "value": "string"}, {"name": "remindMinutesBefore",  "value": "number="}, {"name": "startTime",  "value": "number"}, {"name": "endTime",  "value": "number"}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.calendarBridge.addEventOnCalendar"}}}
 */
- (void)addEventOnCalendar:(BBASchemeDispatcher *)dispatcher;

/**
 * 描  述: 在系统日历中删除事件
 * 示  例: baiduboxapp://swanAPI/deleteEventOnCalendar?params={"eventId":"D7A92F8B-8AE0-4466-B1B2-EF8EC56CCF27:73E94BED-627A-4FBE-A3BD-7FA1C51F9C46","cb":"cb"}&callback=_bdbox_js_547&upgrade=0
 * 文  档: http://es.baidu-int.com/index#/apidetail/983
 * 备  注:
 * ********** description ************
 * @name:      deleteEventOnCalendar
 * @authority: swanAPI
 * @path:      /deleteEventOnCalendar
 * @args:      [{"name": "cb", "value": "string"}, {"name": "eventId",  "value": "string"}]
 * @config:    {"swan": {"web": {"invoke": "swan.message.url", "handler": "bridge"}, "jsc": {"invoke": "swan.method.json", "method": "_naSwan.bridge.calendarBridge.deleteEventOnCalendar"}}}
 */
- (void)deleteEventOnCalendar:(BBASchemeDispatcher *)dispatcher;

#pragma mark - not API

/**
 
 进行鉴权检查并尝试添加日历事件.
 
 @param appID 调用来源的小程序 appID
 @param params 日历相关参数
 @param completion 执行二级回调的 block
 @return 返回一级回调的状态信息 (status, message).
 */
+ (NSDictionary *)checkScopeAndAddEventOnCalendarWithAppID:(NSString *)appID
                                                    params:(NSDictionary *)params
                                                completion:(void (^)(NSDictionary *data))completion;

/**
 
 检查鉴权并删除事件
 
 @param appID 调用来源的 appID
 @param params 端能力的 option 相关参数
 @param completion 执行二级回调的 callback
 @return 一级回调信息
 */
+ (NSDictionary *)checkScopeAndDeleteEventOnCalendarWithAppID:(NSString *)appID
                                                       params:(NSDictionary *)params
                                                   completion:(void (^)(NSDictionary *data))completion;

@end

NS_ASSUME_NONNULL_END