2017-06-21 12 views
1

私のサービスは、ユーザーインターフェイス(スラック、Skypeなど)に表示されている要求の後、api.aiに非同期応答を送り返しています。5秒後にapi.aiからサービスへの応答を提供します

しかし、要求された操作が完了した後(5秒後)にインターフェイスへの応答を送信できません。オブジェクトresp2

const apiai = require('apiai'); 

module.exports = (server, config) => { 
    const app = apiai('<Client access token>'); 
    server.post('/', (req, resp) => { 

    let body = ''; 
    req.on('data', function(data) { 
     body += data; 
    }); 
    req.on('end', function() { 
     body = JSON.parse(body); 
     resp.send({ 
     speech: 'Please wait...', 
     }); 

     const sessionId = body.sessionId; 

     setTimeout(() => { 
     const evt = app.eventRequest({ 
      name: 'testevent', data: { }, 
     }, { sessionId }); 

     evt.on('response', resp2 => { 
      debugger; 
     }); 
     evt.on('error', err => { 
      debugger; 
     }); 
     evt.end(); 

     }, 10 * 1000); 
    }); 
    }); 
}; 

、私はresult.fulfillment.speechがインターフェイスに送信されている必要があります応答テキストを持っている参照してください。そうではありません。

これを達成する方法はありますか?

答えて

0

あなたの質問のコードはApi.aiのAPIを使用しており、Api.aiエージェントを独自のアプリケーションに埋め込むために使用されます。この背後にある意図は、あなた自身のチャット/メッセージングシステムを実装/使用して、このAPIを介してあなたのユーザーとの会話からのイベントやテキストをApi.aiに送信することです。 https://docs.api.ai/docs/query

あなたのApi.aiエージェントをSlackやSkypeのようなチャット・プラットフォームと直接統合することに興味があるように聞こえますが、APIからの応答を使用して自分のチャット/ 。その場合は、Api.aiの統合ドキュメントをご覧ください。https://docs.api.ai/docs/integrations

関連する問題