VoiceLiveSessionHandlers interface
دوال المعالجة لأحداث جلسة VoiceLive التي تتبع أنماط Azure SDK.
جميع المعالجين اختياريين - نفذ فقط الأحداث التي تهمك! كل معالج يتلقى بيانات أحداث قوية النوع ومعلومات سياقية.
الخصائص
| on |
يتم الاتصال عندما تتصل الجلسة بنجاح بخدمة VoiceLive |
| on |
يتم الاتصال عندما يتم إنشاء عنصر في المحادثة |
| on |
يتم الاتصال عندما يتم حذف عنصر من المحادثة |
| on |
يتم استدعاء ذلك عند اكتمال تسجيل الصوت الداخلي |
| on |
يتم استدعاء ذلك عند استقبال دلتا نقل الصوت الداخلي |
| on |
يتم استدعاؤه عندما يفشل نسخ الصوت الإدخال |
| on |
يتم الاتصال عند استرجاع عنصر من المحادثة |
| on |
يتم الاتصال عندما يتم اقتطاع بند المحادثة |
| on |
يتم استدعاء الجلسة عندما تنفصل الجلسة عن خدمة VoiceLive في وضع الفشل السريع، وهذا يشير إلى أن الجلسة معطلة بشكل دائم |
| on |
يتم استدعاء الجلسة عند حدوث خطأ يجعل الجلسة غير قابلة للاستخدام. في وضع الفشل السريع، هذا يشير إلى أن الجلسة معطلة بشكل دائم |
| on |
يتم الاتصال عندما يتم مسح مخزن الصوت الداخلي |
| on |
يتم الاتصال عندما يتم التزام مخزن الصوت الداخلي |
| on |
يتم استدعاؤه عند اكتشاف الكلام في مدخل الصوت الخاص بالمستخدم |
| on |
يتم استدعاؤه عندما يتوقف اكتشاف الكلام في مدخل الصوت الخاص بالمستخدم |
| on |
يتم استدعاؤه عند اكتمال قائمة أدوات MCP |
| on |
يتم استدعاؤه عندما تفشل قائمة أدوات MCP |
| on |
يتم الاتصال عندما يكون إدراج أدوات MCP قيد التنفيذ |
| on |
يتم استدعاؤه عند استقبال بيانات الدمج المتحرك |
| on |
يتم استدعاؤه عند اكتمال بيانات دمج أشكال الرسوم المتحركة |
| on |
يتم استدعاؤه عند استقبال بيانات viseme للتحريك |
| on |
يتم استدعاؤه عند اكتمال بيانات الرؤية المتحركة. |
| on |
يتم استدعاؤه عند استقبال بيانات الصوت من المساعد (استجابة صوتية متدفقة) |
| on |
يتم الاتصال عند اكتمال الاستجابة الصوتية |
| on |
يتم الاتصال عند استقبال بيانات الطابع الزمني الصوتي |
| on |
يتم استدعاء ذلك عند اكتمال بيانات الطابع الزمني الصوتي |
| on |
يتم الاتصال عند استلام بيانات نص الصوت (كما قال المساعد كنص نصي) |
| on |
يتم الاتصال عند اكتمال نص الصوت |
| on |
يتم استدعاؤه عندما يضاف جزء محتوى جديد إلى الرد |
| on |
يتم استدعاؤه عند إكمال جزء المحتوى |
| on |
يتم استدعاء ذلك عندما يتم إنشاء استجابة من قبل المساعد |
| on |
يتم استدعاؤه عندما يكمل المساعد الرد |
| on |
يتم استدعاؤه عند استقبال وسائط استدعاء الدوال (البث) |
| on |
يتم استدعاؤه عند اكتمال أوساط استدعاء الدوال |
| on |
يتم استدعاؤه عند استقبال أوراقات استدعاء MCP (أثناء البث) |
| on |
يتم استدعاؤه عند اكتمال أورائط استدعاء MCP |
| on |
يتم الاتصال عند اكتمال مكالمة MCP |
| on |
يتم الاتصال عندما تفشل مكالمة MCP |
| on |
يتم الاتصال عندما تكون مكالمة MCP جارية |
| on |
يتم استدعاؤه عندما يضاف عنصر إخراج جديد إلى استجابة |
| on |
يتم استدعاؤه عند إكمال عنصر الإخراج |
| on |
يتم استدعاؤه عند استقبال بيانات نصية من المساعد (استجابة نصية متدفقة) |
| on |
يتم الاتصال عند اكتمال الرد على الرسالة النصية |
| on |
يتم استدعاؤه عند استقبال حدث خطأ من الخادم |
| on |
تم طلب جميع أحداث الخادم من خدمة VoiceLive. هذا معالج شامل يستقبل كل رسالة بروتوكول الخادم. استخدم هذا من أجل:
ملاحظة: هذا يسمى بالإضافة إلى أي معالجين محددين أعلاه. |
| on |
يتم الاتصال عندما يقوم الخادم بإنشاء اتصال وسائط أفاتار |
| on |
يتم استدعاؤه عند إنشاء الجلسة على الخادم |
| on |
يتم استدعاؤه عند تحديث تكوين الجلسة |
تفاصيل الخاصية
onConnected
يتم الاتصال عندما تتصل الجلسة بنجاح بخدمة VoiceLive
onConnected?: (args: ConnectedEventArgs, context: ConnectionContext) => Promise<void>
قيمة الخاصية
(args: ConnectedEventArgs, context: ConnectionContext) => Promise<void>
onConversationItemCreated
يتم الاتصال عندما يتم إنشاء عنصر في المحادثة
onConversationItemCreated?: (event: ServerEventConversationItemCreated, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventConversationItemCreated, context: SessionContext) => Promise<void>
onConversationItemDeleted
يتم الاتصال عندما يتم حذف عنصر من المحادثة
onConversationItemDeleted?: (event: ServerEventConversationItemDeleted, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventConversationItemDeleted, context: SessionContext) => Promise<void>
onConversationItemInputAudioTranscriptionCompleted
يتم استدعاء ذلك عند اكتمال تسجيل الصوت الداخلي
onConversationItemInputAudioTranscriptionCompleted?: (event: ServerEventConversationItemInputAudioTranscriptionCompleted, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventConversationItemInputAudioTranscriptionCompleted, context: SessionContext) => Promise<void>
onConversationItemInputAudioTranscriptionDelta
يتم استدعاء ذلك عند استقبال دلتا نقل الصوت الداخلي
onConversationItemInputAudioTranscriptionDelta?: (event: ServerEventConversationItemInputAudioTranscriptionDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventConversationItemInputAudioTranscriptionDelta, context: SessionContext) => Promise<void>
onConversationItemInputAudioTranscriptionFailed
يتم استدعاؤه عندما يفشل نسخ الصوت الإدخال
onConversationItemInputAudioTranscriptionFailed?: (event: ServerEventConversationItemInputAudioTranscriptionFailed, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventConversationItemInputAudioTranscriptionFailed, context: SessionContext) => Promise<void>
onConversationItemRetrieved
يتم الاتصال عند استرجاع عنصر من المحادثة
onConversationItemRetrieved?: (event: ServerEventConversationItemRetrieved, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventConversationItemRetrieved, context: SessionContext) => Promise<void>
onConversationItemTruncated
يتم الاتصال عندما يتم اقتطاع بند المحادثة
onConversationItemTruncated?: (event: ServerEventConversationItemTruncated, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventConversationItemTruncated, context: SessionContext) => Promise<void>
onDisconnected
يتم استدعاء الجلسة عندما تنفصل الجلسة عن خدمة VoiceLive في وضع الفشل السريع، وهذا يشير إلى أن الجلسة معطلة بشكل دائم
onDisconnected?: (args: DisconnectedEventArgs, context: ConnectionContext) => Promise<void>
قيمة الخاصية
(args: DisconnectedEventArgs, context: ConnectionContext) => Promise<void>
onError
يتم استدعاء الجلسة عند حدوث خطأ يجعل الجلسة غير قابلة للاستخدام. في وضع الفشل السريع، هذا يشير إلى أن الجلسة معطلة بشكل دائم
onError?: (args: ErrorEventArgs, context: ConnectionContext) => Promise<void>
قيمة الخاصية
(args: ErrorEventArgs, context: ConnectionContext) => Promise<void>
onInputAudioBufferCleared
يتم الاتصال عندما يتم مسح مخزن الصوت الداخلي
onInputAudioBufferCleared?: (event: ServerEventInputAudioBufferCleared, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventInputAudioBufferCleared, context: SessionContext) => Promise<void>
onInputAudioBufferCommitted
يتم الاتصال عندما يتم التزام مخزن الصوت الداخلي
onInputAudioBufferCommitted?: (event: ServerEventInputAudioBufferCommitted, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventInputAudioBufferCommitted, context: SessionContext) => Promise<void>
onInputAudioBufferSpeechStarted
يتم استدعاؤه عند اكتشاف الكلام في مدخل الصوت الخاص بالمستخدم
onInputAudioBufferSpeechStarted?: (event: ServerEventInputAudioBufferSpeechStarted, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventInputAudioBufferSpeechStarted, context: SessionContext) => Promise<void>
onInputAudioBufferSpeechStopped
يتم استدعاؤه عندما يتوقف اكتشاف الكلام في مدخل الصوت الخاص بالمستخدم
onInputAudioBufferSpeechStopped?: (event: ServerEventInputAudioBufferSpeechStopped, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventInputAudioBufferSpeechStopped, context: SessionContext) => Promise<void>
onMcpListToolsCompleted
يتم استدعاؤه عند اكتمال قائمة أدوات MCP
onMcpListToolsCompleted?: (event: ServerEventMcpListToolsCompleted, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventMcpListToolsCompleted, context: SessionContext) => Promise<void>
onMcpListToolsFailed
يتم استدعاؤه عندما تفشل قائمة أدوات MCP
onMcpListToolsFailed?: (event: ServerEventMcpListToolsFailed, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventMcpListToolsFailed, context: SessionContext) => Promise<void>
onMcpListToolsInProgress
يتم الاتصال عندما يكون إدراج أدوات MCP قيد التنفيذ
onMcpListToolsInProgress?: (event: ServerEventMcpListToolsInProgress, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventMcpListToolsInProgress, context: SessionContext) => Promise<void>
onResponseAnimationBlendshapeDelta
يتم استدعاؤه عند استقبال بيانات الدمج المتحرك
onResponseAnimationBlendshapeDelta?: (event: ServerEventResponseAnimationBlendshapeDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAnimationBlendshapeDelta, context: SessionContext) => Promise<void>
onResponseAnimationBlendshapeDone
يتم استدعاؤه عند اكتمال بيانات دمج أشكال الرسوم المتحركة
onResponseAnimationBlendshapeDone?: (event: ServerEventResponseAnimationBlendshapeDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAnimationBlendshapeDone, context: SessionContext) => Promise<void>
onResponseAnimationVisemeDelta
يتم استدعاؤه عند استقبال بيانات viseme للتحريك
onResponseAnimationVisemeDelta?: (event: ServerEventResponseAnimationVisemeDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAnimationVisemeDelta, context: SessionContext) => Promise<void>
onResponseAnimationVisemeDone
يتم استدعاؤه عند اكتمال بيانات الرؤية المتحركة.
onResponseAnimationVisemeDone?: (event: ServerEventResponseAnimationVisemeDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAnimationVisemeDone, context: SessionContext) => Promise<void>
onResponseAudioDelta
يتم استدعاؤه عند استقبال بيانات الصوت من المساعد (استجابة صوتية متدفقة)
onResponseAudioDelta?: (event: ServerEventResponseAudioDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAudioDelta, context: SessionContext) => Promise<void>
onResponseAudioDone
يتم الاتصال عند اكتمال الاستجابة الصوتية
onResponseAudioDone?: (event: ServerEventResponseAudioDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAudioDone, context: SessionContext) => Promise<void>
onResponseAudioTimestampDelta
يتم الاتصال عند استقبال بيانات الطابع الزمني الصوتي
onResponseAudioTimestampDelta?: (event: ServerEventResponseAudioTimestampDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAudioTimestampDelta, context: SessionContext) => Promise<void>
onResponseAudioTimestampDone
يتم استدعاء ذلك عند اكتمال بيانات الطابع الزمني الصوتي
onResponseAudioTimestampDone?: (event: ServerEventResponseAudioTimestampDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAudioTimestampDone, context: SessionContext) => Promise<void>
onResponseAudioTranscriptDelta
يتم الاتصال عند استلام بيانات نص الصوت (كما قال المساعد كنص نصي)
onResponseAudioTranscriptDelta?: (event: ServerEventResponseAudioTranscriptDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAudioTranscriptDelta, context: SessionContext) => Promise<void>
onResponseAudioTranscriptDone
يتم الاتصال عند اكتمال نص الصوت
onResponseAudioTranscriptDone?: (event: ServerEventResponseAudioTranscriptDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseAudioTranscriptDone, context: SessionContext) => Promise<void>
onResponseContentPartAdded
يتم استدعاؤه عندما يضاف جزء محتوى جديد إلى الرد
onResponseContentPartAdded?: (event: ServerEventResponseContentPartAdded, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseContentPartAdded, context: SessionContext) => Promise<void>
onResponseContentPartDone
يتم استدعاؤه عند إكمال جزء المحتوى
onResponseContentPartDone?: (event: ServerEventResponseContentPartDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseContentPartDone, context: SessionContext) => Promise<void>
onResponseCreated
يتم استدعاء ذلك عندما يتم إنشاء استجابة من قبل المساعد
onResponseCreated?: (event: ServerEventResponseCreated, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseCreated, context: SessionContext) => Promise<void>
onResponseDone
يتم استدعاؤه عندما يكمل المساعد الرد
onResponseDone?: (event: ServerEventResponseDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseDone, context: SessionContext) => Promise<void>
onResponseFunctionCallArgumentsDelta
يتم استدعاؤه عند استقبال وسائط استدعاء الدوال (البث)
onResponseFunctionCallArgumentsDelta?: (event: ServerEventResponseFunctionCallArgumentsDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseFunctionCallArgumentsDelta, context: SessionContext) => Promise<void>
onResponseFunctionCallArgumentsDone
يتم استدعاؤه عند اكتمال أوساط استدعاء الدوال
onResponseFunctionCallArgumentsDone?: (event: ServerEventResponseFunctionCallArgumentsDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseFunctionCallArgumentsDone, context: SessionContext) => Promise<void>
onResponseMcpCallArgumentsDelta
يتم استدعاؤه عند استقبال أوراقات استدعاء MCP (أثناء البث)
onResponseMcpCallArgumentsDelta?: (event: ServerEventResponseMcpCallArgumentsDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseMcpCallArgumentsDelta, context: SessionContext) => Promise<void>
onResponseMcpCallArgumentsDone
يتم استدعاؤه عند اكتمال أورائط استدعاء MCP
onResponseMcpCallArgumentsDone?: (event: ServerEventResponseMcpCallArgumentsDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseMcpCallArgumentsDone, context: SessionContext) => Promise<void>
onResponseMcpCallCompleted
يتم الاتصال عند اكتمال مكالمة MCP
onResponseMcpCallCompleted?: (event: ServerEventResponseMcpCallCompleted, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseMcpCallCompleted, context: SessionContext) => Promise<void>
onResponseMcpCallFailed
يتم الاتصال عندما تفشل مكالمة MCP
onResponseMcpCallFailed?: (event: ServerEventResponseMcpCallFailed, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseMcpCallFailed, context: SessionContext) => Promise<void>
onResponseMcpCallInProgress
يتم الاتصال عندما تكون مكالمة MCP جارية
onResponseMcpCallInProgress?: (event: ServerEventResponseMcpCallInProgress, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseMcpCallInProgress, context: SessionContext) => Promise<void>
onResponseOutputItemAdded
يتم استدعاؤه عندما يضاف عنصر إخراج جديد إلى استجابة
onResponseOutputItemAdded?: (event: ServerEventResponseOutputItemAdded, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseOutputItemAdded, context: SessionContext) => Promise<void>
onResponseOutputItemDone
يتم استدعاؤه عند إكمال عنصر الإخراج
onResponseOutputItemDone?: (event: ServerEventResponseOutputItemDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseOutputItemDone, context: SessionContext) => Promise<void>
onResponseTextDelta
يتم استدعاؤه عند استقبال بيانات نصية من المساعد (استجابة نصية متدفقة)
onResponseTextDelta?: (event: ServerEventResponseTextDelta, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseTextDelta, context: SessionContext) => Promise<void>
onResponseTextDone
يتم الاتصال عند اكتمال الرد على الرسالة النصية
onResponseTextDone?: (event: ServerEventResponseTextDone, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventResponseTextDone, context: SessionContext) => Promise<void>
onServerError
يتم استدعاؤه عند استقبال حدث خطأ من الخادم
onServerError?: (event: ServerEventError, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventError, context: SessionContext) => Promise<void>
onServerEvent
تم طلب جميع أحداث الخادم من خدمة VoiceLive. هذا معالج شامل يستقبل كل رسالة بروتوكول الخادم.
استخدم هذا من أجل:
- تسجيل ومراقبة مخصص لجميع الأحداث
- التعامل مع الأحداث المستقبلية التي لم يغطيها بعد المسؤولون المحددون
- التصحيح والتطوير
ملاحظة: هذا يسمى بالإضافة إلى أي معالجين محددين أعلاه.
onServerEvent?: (event: ServerEventUnion, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventUnion, context: SessionContext) => Promise<void>
onSessionAvatarConnecting
يتم الاتصال عندما يقوم الخادم بإنشاء اتصال وسائط أفاتار
onSessionAvatarConnecting?: (event: ServerEventSessionAvatarConnecting, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventSessionAvatarConnecting, context: SessionContext) => Promise<void>
onSessionCreated
يتم استدعاؤه عند إنشاء الجلسة على الخادم
onSessionCreated?: (event: ServerEventSessionCreated, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventSessionCreated, context: SessionContext) => Promise<void>
onSessionUpdated
يتم استدعاؤه عند تحديث تكوين الجلسة
onSessionUpdated?: (event: ServerEventSessionUpdated, context: SessionContext) => Promise<void>
قيمة الخاصية
(event: ServerEventSessionUpdated, context: SessionContext) => Promise<void>