2
私はボットフレームワークとAzure Botサービスを使っていましたが、セッションのpreferredLocaleを設定すると、すべてのプロンプトの言語は変更されますが、送信されるテキストは変更されません。このようにロケールを設定するAzure Botサービスノードでローカライゼーションが動作しない
session.preferredLocale('es', (error) => {
if (typeof error === 'undefined') {
session.send('greeting');
}
});
はスペインに内蔵されたプロンプトを変更しますが、ローカライズされたグリーティングメッセージをロードする代わりに、「挨拶」プレーンテキストメッセージを送信しません。
var bot = new builder.UniversalBot(connector).set('localizerSettings', { botLocalePath: "./locale", defaultLocale: "en" });
私のボットは、この例のように、デフォルトのローカライゼーション設定を使用しますが、私のロケールフォルダではなくcustomLocaleのロケールと呼ばれています。
アイデア?
は、この問題の解決策を見つけた: https://github.com/Microsoft/BotBuilder-Azure/issues/2 簡潔に: ボットサービスの紺碧ノードでローカライゼーションを使用する場合は、手動でボットロケールパスを設定する必要があります。問題は主に、デフォルトロケールパスがLinuxパスとして設定され、システム間で正規化されていないことでした。 path.joinを使用すると、Node.jsプロセスが実行されているシステムが必要になります。 –