Modules
説明
Code Nodeでは、定義済みのNPMモジュールを使用することができます。このページでは、Code Nodeでこれらのモジュールを実行するために必要なすべての情報をご覧いただけます。
moment.js
moment.jsモジュールを使用すると、日付の解析、検証、操作、表示を行うことができます。
使用方法
Code Node内で以下の関数を呼び出します:
moment(inp?:any, format?: any, strict?: boolean);
例
次の例は、現在のUTC時刻と日付を取得し、コンタクトに出力します。
const utc = moment.utc();
actions.output(utc);
Lodash
Cognigy.AIはCode Node内でユーティリティライブラリLodashもサポートしています。
使用方法
_.keys(<OBJECT>);
Code Node内でLodash関数を使用できます。詳細については、それぞれのドキュメントをご覧ください。
例
次の例は、Lodashモジュールの典型的な使用例と構文を示しています。
const favouriteFoods = ["pizza", "spaghetti", "burger"];
const last = _.last(favouriteFoods);
actions.output(last);
この例では、favoriteFoods配列の最後の要素を取り出し、出力メッセージとして送信しています。
Messengerプラットフォーム
Facebook Messengerメッセージ(クイック返信、ボタン、リスト、汎用テンプレートなど)を作成するには、Code Node内でfacebook-bot-messengerモジュールを使用できます。
使用方法
Code Node内でMessengerPlatformネームスペースを使用することで、メッセージタイプを作成することができます。可能なメッセージタイプのリストについては、facebook-bot-messengerのドキュメントをご参照ください。
例
以下のスニペットは、クイック返信メッセージを生成するために使用できます。ビルドされたメッセージbuilder.buildMessage()は、_facebookオブジェクトのmessageプロパティの値でなければならないことにご注意ください。
// use facebook-bot-messenger to compile reply
const builder = new MessengerPlatform.QuickRepliesMessageBuilder('Pick a color:');
builder.addImageOption('Red', 'DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_RED', 'https://cognigy.com/img/red.png')
.addImageOption('Green', 'DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_GREEN', 'https://cognigy.com/img/green.png');
// output the reply
actions.output("test", { "_cognigy": { "_facebook": {"message": builder.buildMessage() }}});
Messengerプラットフォーム
XMLデータを解析したい場合、このモジュールを使うことができます。
使用方法
Code Node内で以下のメソッドを呼び出すことができます:
const xml =
'<?xml version="1.0" encoding="utf-8"?>' +
'<note importance="high" logged="true">' +
' <title>Happy</title>' +
' <todo>Work</todo>' +
' <todo>Play</todo>' +
'</note>';
const result = xmljs.xml2json(xml, { compact: true, spaces: 4 });
// result will now contain a JSON representation of the xml above
Text Cleaner
使用方法
Code Node内で、Text Cleanerクラスのインスタンスを取得するgetTextCleaner関数を呼び出すことができます。このクラスは、様々なテキストクリーニング関数へのアクセスを可能にします。
パラメータ
パラメータ | タイプ | 説明 |
---|---|---|
locale | 文字列 | クラスをインスタンス化するロケール。例:’de’ や ‘en’ |
options | オブジェクト | 設定オプションについては、以下をご覧ください。 |
設定オプション
{
// additional characters which won't be cleaned by cleanDisallowedSymbols
additionalAllowedCharacters: string[],
// additional symbols which are replace (for example, "minus": "-")
additionalMappedSymbols: { [key: string]: string },
// additional phrases which are replaced
additionalSpecialPhrases: { [key: string]: string },
// additions to the phonetic alphabet (for example, "cognigy": "c")
additionalPhoneticAlphabet: { [key: string]: string }
}
戻り値
Text Cleanerクラスのインスタンス。