2017-12-05 10 views
0

Facebookのメッセンジャー、Alexa、ネイティブアプリ、Webチャットなどの複数のチャンネルに参加して1つのボットを作ってシームレスで摩擦の少ない体験をしたい。ユーザーは別のチャンネル(FacebookメッセンジャーまたはSkype)でチャットを再開できますか?セッションが失われてはならない場所

ユーザーは、アプリ内でチャットセッションを開いて開始でき、セッションを終了できますが、アプリ内からボットやエージェントとチャットセッションを簡単に開始できます。例えばについては

私はFacebookのメッセンジャーボットにチャットユーザーだといつか後、私はそれを閉じて、Webページ上のチャットボットを開くとだから私は、そのチャネル上で同じチャットを再開することができるはずのセッションを意味し、ユーザーのチャットは失われません。

+1

あなたはあなたのバックエンドでのセッションを記録し、コーディング夜のカップルと間違いなく可能、すべての統合のためのアカウント・リンクを結合する必要があります。 –

+0

こんにちは、すべての更新はまだですか?あなたのニュースを楽しみにしています。 –

答えて

0

まず、ボットアプリケーションは複数のチャネルに接続し、各チャネルは他のチャネルとは異なるユーザーを持っています。だから@ christophe-willemsenが言ったように、自分のアカウントシステムを構築し、ボットが接続するすべてのチャンネルにリンクする必要があります。セッションデータをユーザーとペアリングする必要があります。

次に、Manage state dataを利用してユーザーデータを格納してアクセスすることができます。 Advance the waterfallを利用して、ダイアログ内のウォーターフォールステップを管理します。クイックリファレンスについては

let savedSession; 
var bot = new builder.UniversalBot(connector, [(session) => { 
    if (savedSession) { 
     var [savedDialog] = savedSession.dialogStack().slice(-2, -1); 
     console.log(savedDialog); 
     session.replaceDialog(savedDialog.id, savedDialog.state) 
    } else { 
     savedSession = session; 
     session.beginDialog('form'); 
    } 
}]); 

bot.dialog('form', [...waterfall steps...]) 
関連する問題