2017-08-17 5 views
1

ボットに送信されるすべてのメッセージとともにカスタムデータを渡そうとしています。これを達成する方法があるようですが、サンプルコードが不完全で、Javascriptでn00bなので、私はこの権利を得る手がかりがありません:-)ボットフレームワークでWebチャットクライアントを使用する際のカスタムチャネルデータの送信方法

これは私がすべてを設定するために使用しているスクリプトです:私はここに示されているものを適用しようとしています

const botConnection = new BotChat.DirectLine({ 
    secret: '@directLineSecret', 
}); 

BotChat.App({ 
    bot: bot, 
    botConnection: botConnection, 
    user: user, 
    resize: 'detect' 
}, document.getElementById('bot')); 

var dl = new BotChat.DirectLine({secret}); 

BotChat.App({botConnection: { 
    … dl, 
    postActivity: activity => dl.postActivity({ 
     … activity, 
     channelData: // your data goes here 
    }), 
     // other Chat props 
}); 

を上記のコードはpostActivityに対するすべての呼び出しをインターセプトしているようだとカスタムチャネルのデータを追加します。しかし、これらの不幸な "..."も含まれています。初期化コードを変更して呼び出しを傍受し、channelDataオブジェクトにいくつかのキー/値を追加する必要がありますか?

答えて

2

ウェブチャットクライアントのGithubページから回答を見つけました。 「...」は、任意のコードを省略したがJavascript spread syntax

正しいコードですされていません。

BotChat.App({ 
    botConnection: 
    { 
    ...botConnection, 
    postActivity: activity => { 
     // Add whatever needs to be added.     
     activity.channelData.MyKey = "MyValue"; 
     return botConnection.postActivity(activity) 
    } 
    }, 
    bot: bot, 
    user: user, 
    resize: 'detect', 
}, document.getElementById('bot')); 
関連する問題