iOS開發之BusinessChat框架使用
iOS開發之BusinessChat框架使用
BusinessChat是iOS11.3後引入的新框架,這個框架配合iMessage應用將商家與使用者更加緊密的結合起來,並且為商家提供了另外一種非常方便的客服系統。
我們知道,在iOS10中新引入了iMessage擴充套件,iMessage擴充套件除了豐富了表情包外,開發者也可以開發一些功能獨立的iMessage應用,關於iMessage擴充套件的相關應用,如下部落格中有著完整的介紹。
https://my.oschina.net/u/2340880/blog/749331
隨著iMessage擴充套件使得iMessage功能的越來越強大,其為使用者提供能力和與第三方APP互動能力也越來越強,BusinessChat框架是提供給應用程式呼叫iMessage來與商家的客服系統聯絡的功能框架。
許多服務類的應用程式都有客服系統,例如當用戶使用電商類應用程式時通常會需要聯絡商家。要使用BusinessChat相關功能,首先需要註冊成為Apple商家,在如下網站進行商家註冊:
介面如下:
使用AppleID登入後,填寫必要的商家資訊和成員資訊,即可進行申請,提交申請後,需要Apple進行稽核,如果稽核通過會分配商戶ID給我們,我們需要使用這個商戶ID來進行我們的開發。
BusinessChat框架中有兩個類:BCChatButton類和BCChatAction類,BCChatButton類是單純的UI支援類,它提供了同意的聯絡客服按鈕樣式,BCChatAction類用來處理行為邏輯。示例程式碼如下:
@implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; BCChatButton * btn = [[BCChatButton alloc]initWithStyle:BCChatButtonStyleDark]; btn.frame = CGRectMake(50, 100, 200,100); [btn addTarget:self action:@selector(click) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:btn]; } -(void)click{ NSLog(@"message"); [BCChatAction openTranscript:@"8d7f4b79-bf77-45ab-86b5-b74f56d47737" intentParameters:@{BCParameterNameIntent:@"buy",BCParameterNameGroup:@"custom",BCParameterNameBody:@"Hello World"}]; } @end
執行程式碼,按鈕樣式如下圖:
點選按鈕後,會調起iMessage應用,使用者可以直接與商戶進客服行聯絡。
BCChatButton是一個純UI的按鈕類,其繼承自UIControl,使用方式和正常的UIButton一樣,需要注意,其中並沒有封裝互動邏輯,按鈕的觸發事件需要開發者自己定義。BCChatAction來進行互動邏輯的處理,這個類中只有一個方法,如下:
/*
businessIdentifier為商戶ID
intentParameters為意圖引數字典,其中可定義鍵值如下:
BCParameterNameIntent 定義意圖 使用者傳送訊息時可以讓商戶更清楚使用者的問題領域
BCParameterNameGroup 定義組 幫助商戶將問題分發明確的組
BCParameterNameBody 資訊內容
*/
+ (void)openTranscript:(NSString *)businessIdentifier
intentParameters:(NSDictionary<BCParameterName, NSString *> *)intentParameters;