2016-12-20 5 views
0

すべてのプラットフォームでbotフレームワークを使用してGIFイメージを送信しようとしています。私は別々に各プラットフォームを介してカスタムGIFSを送信するためにsourceEventを使いたいとは思わない。現在のコードは次のようになりますsourceEventを使わずにbotフレームワークでgifイメージを送信する方法

こんにちは、まずはこのライブラリを維持してくれたことに感謝します。私は

ドキュメントレポ内のすべてのチャネルでGIFを送信し、AnimationCardについて読みたい私のコードは、私はこのエラーはあると思わ

TypeError: builder.AnimationCard is not a constructor 
    at createAnimationCard (D:\bots\fastrivia\index.js:65:12) 
    at Array.onMessage (D:\bots\fastrivia\index.js:60:58) 
    at SimpleDialog.waterfallAction [as fn] (D:\bots\fastrivia\node_modules\botbuilder\lib\dialogs\DialogAction.js:131:25) 
    at SimpleDialog.begin (D:\bots\fastrivia\node_modules\botbuilder\lib\dialogs\SimpleDialog.js:15:14) 
    at Session.beginDialog (D:\bots\fastrivia\node_modules\botbuilder\lib\Session.js:180:16) 
    at routeToDialog (D:\bots\fastrivia\node_modules\botbuilder\lib\Session.js:421:23) 
    at D:\bots\fastrivia\node_modules\botbuilder\lib\Session.js:449:29 
    at D:\bots\fastrivia\node_modules\botbuilder\lib\Session.js:505:25 
    at ActionSet.recognizeAction (D:\bots\fastrivia\node_modules\botbuilder\lib\dialogs\ActionSet.js:44:9) 
    at D:\bots\fastrivia\node_modules\botbuilder\lib\Session.js:501:43 

を言ってもらう方法この

function onMessage(session) { 
    var msg = new builder.Message(session).addAttachment(createAnimationCard(session, 'title', 'subtitle', 'text')); 
    session.send(msg); 
} 

function createAnimationCard(session, title, subtitle, text) { 
    return new builder.AnimationCard(session) 
     .title(title) 
     .subtitle(subtitle) 
     .text(text) 
     .media([ 
      new builder.MediaUrl() 
       .profile('GIF test') 
       .url('http://media2.giphy.com/media/FiGiRei2ICzzG/giphy.gif') 
     ]) 
} 

のように見えますnode_modulesの下でチェックしたとき、botframework libのカードの下にAnimationCardはありません。ボットフレームワーク上のすべてのプラットフォームでGIFを送信する最善の方法は何ですか?

答えて

1

私はここでの問題は、私はあなたがBotBuilderのプレリリース版をインストールする必要があります信じてNode.jsAnimationCardを使用するためのビットがまだパブリックではないということであると信じて:

npm install --save [email protected] 
+0

おかげで、入力のために、私はそれをしたとAnimationCardを使用することができ、1つの問題があるが、それはhttps://docs.botframework.comに思わMediaUrl配列を受け入れる関数メディアを()あり/ en-us/core-concepts/reference /#animationcardしかし、MediaUrlクラスはどこでも、どんなアイデアでも見つけることができません – PirateApp

1

あなたのコードは完全に罰金ですnew builder.MediaUrl()をオブジェクトに置き換えてください。 MediaUrlのような単純な構造は、直接初期化されなければならず、フレームワークにコンストラクタを持たないことがよくあります。

function createAnimationCard(session, title, subtitle, text) { 
    return new builder.AnimationCard(session) 
     .title(title) 
     .subtitle(subtitle) 
     .text(text) 
     .media([{ profile: 'GIF test', 
        url: 'http://media2.giphy.com/media/FiGiRei2ICzzG/giphy.gif' 
     }]) 
} 
関連する問題