イベント
クライアントアプリケーションをさらに細かく制御したり、デジタルヒューマンの状態とウェブサイトを同期させたりしたい場合があります。そのために、デジタルヒューマンアプリケーションからのメッセージイベントを提供しており、これをウェブクライアントで利用することができます。そのためには、window
イベントUneeqMessage
をリッスンします。
例
以下のコード例では、セッションがライブになるとbody
要素のクラスリストを更新するために、どのようにメッセージをリッスンできるかを示しています。リッスンすることができるその他のメッセージイベントについては、以下に記載されています。
window.addEventListener( 'UneeqMessage', (event) => { const msg = event.detail; console.log('UneeQ Message: ', msg); switch( msg.uneeqMessageType ){ case 'SessionStateUpdate': if( msg.live ) { document.body.classList.add('uneeq-session-live'); } else { document.body.classList.remove('uneeq-session-live'); } break; // Add additional event handlers here... default: break; } });
Messages
以下に、リッスン可能なメッセージの完全なリストを定義しています:
AvatarAnswerContent
NLPシステムからレンダリングされるコンテンツが提供されました
AvatarStartedSpeaking
デジタルヒューマンが発話を開始しました
AvatarStoppedSpeaking
デジタルヒューマンの発話が終了しました
AvatarUnavailable
利用可能なデジタルヒューマンがありません
CallToActionDismissed
ユーザーによってコールトゥアクションボックスが閉じられました
CustomData
NLPシステムから「instructions」フィールドで提供されたJSONデータ。このデータは、NLPシステムからフロントエンドアプリケーションにカスタム指示を渡すために使用できます。 例えば、ウェブサイトに表示したい製品のカスタムデータを設定するなどです。
CustomMetadataUpdated
チャットメタデータが正常に更新されました。メッセージには新しく設定されたメタデータの値が含まれています
DeviceError
デジタルヒューマンのビデオでエラーが発生しました。詳細はメッセージの内容を参照してください
DigitalHumanPlayedInMutedModeSuccess
ブラウザの自動再生ポリシーにより、デジタルヒューマンの音声を再生できませんでした。デジタルヒューマンは音声がミュートされた状態で起動しました。ユーザーのインタラクション後にuneeqUnmuteDigitalHuman()を呼び出すとミュートが解除される場合があります
DigitalHumanUnmuted
デジタルヒューマンのミュートが解除されました
EnableMicrophoneUpdated
マイクの有効状態が更新されました。enabled値がtrueの場合はマイクが有効、falseの場合はマイクが解放されています
FrameReady
アプリケーションがロードされ、設定が検証されました。セッションはuneeqInstance.startSession()を呼び出すことで開始できます
Instructions
指示ペイロードがNLPから送信されました。指示はNLP内でJSONとして設定されている場合があります
MicPermissionDenied
ユーザーがページにマイクの使用許可を与えていませんが、音声入力をプロンプトとして使用しようとしています
Notification
通知がありました
PromptRequest
会話プラットフォームに送信されるユーザーの入力テキスト/音声(メタデータを含む)です。各要求には追跡用の一意のUUID(requestId)が含まれています
PromptResult
会話プラットフォームからの応答です。初期要求/userInputと応答メタデータが含まれています
RecordingStarted
音声認識のための録音が開始されました
RecordingStopped
音声認識のための録音が終了しました
ServiceUnavailable
問題が発生しました。詳細については含まれているメッセージを参照してください
SessionDisconnected
セッションが再接続できなかった場合、SessionDisconnectedメッセージとともにセッションが終了します。
SessionEnded
セッションが正常に終了しました
SessionError
セッション中に発生したエラーを含むメッセージです(例:TTS呼び出しの失敗、ネットワーク中断など)
SessionLive
セッションがライブ状態になり、アバタービデオがアクティブになりました
SessionReconnecting
ユーザーとバックエンド間で切断が発生し、セッションの再接続を試みています
SessionStateUpdate
セッションの状態が更新されました
SpeechEvent
ウェブページにトリガーを組み込んで、デジタルヒューマンに話すコマンドを送信できます。詳細はスピーチイベントを参照してください
SpeechTranscription
ユーザーの音声の暫定的または最終的な書き起こしが受信されました。
UserStartedSpeaking
ユーザーの音声入力アクティビティの開始が検出されました
UserStoppedSpeaking
ユーザーの音声入力アクティビティが停止または一定間隔で一時停止しました
VadInterruptionAllowed
デジタルヒューマンの発話中に割込みがありました
WaitingInQueue
ユーザーが待機列にいることを示します。ユーザーがデジタルヒューマンと対話できるようになるまでの待機状態を管理し、進行状況をカウントダウンします
最終更新日 April 14, 2025