Как использовать диалог потока SDK в машинописи? - PullRequest
0 голосов
/ 12 октября 2018

Я создаю приложение chatbot с angular 6 и хочу использовать диалоговый поток SDK.Поскольку sdk предназначен только для javascript, я также добавил набранные для диалогового потока.

package.json:

dependencies: {
    [...]
    "@types/dialogflow": "0.6.3",
    "dialogflow": "0.6.0
}

Я пробовал много разных импортов:

import { SessionsClient } from 'dialogflow';
import { SessionsClient, v2 } from 'dialogflow';
import * as dialogflow from 'dialogflow';
import 'dialogflow'

Но я всегда получаю сообщение об ошибке

MODULE_NOT_FOUND

Когда я пытаюсь его использовать

this.dialogflowSessionsClient = new SessionsClient();
this.dialogflowSessionsClient = new v2.SessionsClient();
this.dialogflowSessionsClient = new dialogflow.SessionsClient();

Среда IDE может разрешить ссылку.Итак, что я делаю не так?

ОБНОВЛЕНИЕ

Я попробовал это также в новом угловом проекте, и теперь у меня есть лучшее сообщение об ошибке.К сожалению, мне это тоже не поможет.

. / Node_modules / dialogflow / src / v2 / agents_client.js

Модуль не найден: Ошибка: не удается разрешить './ agents_client_config 'in' / Users / [my-project-path] / node_modules / dialogflow / src / v2 '

1 Ответ

0 голосов
/ 28 октября 2018

Я делаю то же самое, есть клиентская библиотека JS, доступная по этой ссылке .Все, что мне нужно было сделать, это использовать npm, чтобы установить его, а затем импортировать его в мой Ionic-проект, но очень мало обслуживания, поэтому, честно говоря, я бы предложил использовать более новую библиотеку HttpClient или другую хорошую библиотеку REST и сделатьREST вызывает с использованием справочных документов v2 .

Google описывает, как они сопоставляют вызовы REST со своим протоколом gRPC в своем http protobuf , они называют это "транскодированием".

Я знаю, что это более сложный способ, чем использование клиентской библиотеки, но, честно говоря, это будет гораздо более выгодным, чем использование библиотеки с минимальной поддержкой (по крайней мере, до тех пор, пока не будет лучше поддержана клиентская библиотека).

...