نظرة عامة على تسجيل المكالمات

يمكنك تسجيل المكالمات من تسجيل سيناريوهات استدعاء متعددة متوفرة في Azure Communication Services من خلال تزويدك بمجموعة من واجهات برمجة التطبيقات لبدء التسجيل وإيقافه وإيقافه مؤقتا واستئنافه. سواء كانت مكالمة PSTN أو WebRTC أو SIP، يمكن الوصول إلى واجهات برمجة التطبيقات هذه من منطق العمل من جانب الخادم. أيضا، يمكن تشغيل التسجيلات بواسطة إجراء مستخدم يخبر تطبيق الخادم ببدء التسجيل.

اعتمادا على احتياجات عملك، يمكنك استخدام تسجيل المكالمات لتطبيقات مكالمات Azure Communication Services المختلفة.

على سبيل المثال، يمكنك تسجيل مكالمات صوت وفيديو 1:1 أو 1:N:

رسم تخطيطي يوضح مكالمة يتم تسجيلها.

يمكنك أيضا استخدام تسجيل المكالمات لتسجيل مهام سير عمل مكالمات PSTN أو VoIP المعقدة الواردة والصادرة التي تديرها أتمتة المكالمات.

بغض النظر عن كيفية إنشاء المكالمة، يمكنك "تسجيل المكالمات" من إنتاج ملفات وسائط مختلطة أو غير مدمجة يتم تخزينها لمدة 24 ساعة على تخزين مؤقت مضمن. يمكنك استرداد الملفات، ونقلها في مخزن Azure Blob الخاص بك إحضار التخزين الخاص بك، أو حل تخزين من اختيارك. يدعم تسجيل المكالمات جميع مناطق بيانات Azure Communication Services.

رسم تخطيطي يوضح بنية تسجيل المكالمات.

تسجيل المكالمات الذي يدعم احتياجات عملك

يدعم تسجيل المكالمات مخرجات وسائط وأنواع محتويات متعددة لتلبية احتياجات عملك وحالات الاستخدام. يمكنك استخدام تنسيقات مختلطة لسيناريوهات مثل الاحتفاظ بالسجلات أو ملاحظات الاجتماع أو التدريب أو حتى الامتثال والالتزام. أو يمكنك استخدام تنسيق صوت غير مختلط لمعالجة حالات استخدام ضمان الجودة أو حتى سيناريوهات أكثر تعقيدا مثل التحليلات المتقدمة أو العمليات المتطورة لما بعد المكالمة المستندة إلى الذكاء الاصطناعي (الذكاء الاصطناعي).

فيديو

نوع القناة تنسيق المحتوى نوع الحل معدل أخذ العينات معدل البت معدل البيانات المخرجات ‏‏الوصف
مختلطه mp4 1920x1080، 16 إطارا في الثانية (إطارات في الثانية) 16 كيلوهرتز 1 ميغابت في الثانية 7.5 ميغابايت/دقيقة* ملف واحد، قناة واحدة فيديو مختلط بترتيب افتراضي للوحة 3x3 (السماعات الأكثر نشاطا) مع دعم اسم العرض

الصوت

نوع القناة تنسيق المحتوى معدل أخذ العينات معدل البت معدل البيانات المخرجات ‏‏الوصف
مختلطه mp3 16 كيلوهرتز 48 كيلوبت في الثانية 0.36 ميغابايت/دقيقة* ملف واحد، قناة واحدة صوت مختلط لجميع المشاركين
مختلطه wav 16 كيلوهرتز 256 كيلوبت في الثانية 1.92 ميغابايت/دقيقة ملف واحد، قناة واحدة صوت مختلط لجميع المشاركين
غير مixed wav 16 كيلوهرتز 256 كيلوبت في الثانية 1.92 ميغابايت/دقيقة* لكل قناة ملف واحد، ما يصل إلى 5 قنوات wav صوت غير مixed، مشارك واحد لكل قناة، ما يصل إلى خمس قنوات

[*ملاحظة] تستخدم تنسيقات Mp3 وMp4 ضغط الخسارة الذي يؤدي إلى معدل البت المتغير؛ لذلك، تعكس قيم معدل البيانات في الجداول السابقة الحد الأقصى النظري. تنسيق WAV غير مضغوط ويتم إصلاح معدل البت، لذلك تكون حسابات معدل البيانات دقيقة.

التحكم الكامل في تسجيلاتك باستخدام واجهات برمجة التطبيقات لتسجيل المكالمات

يمكنك استخدام واجهات برمجة تطبيقات تسجيل المكالمات لإدارة التسجيل عبر مشغلات منطق العمل الداخلية، مثل تطبيق يقوم بإنشاء مكالمة جماعية وتسجيل المحادثة. أيضا، يمكن تشغيل التسجيلات بواسطة إجراء مستخدم يخبر تطبيق الخادم ببدء التسجيل. تستخدم واجهات برمجة تطبيقات تسجيل المكالمات حصريا serverCallId لبدء التسجيل. لمعرفة كيفية الحصول على serverCallId، تحقق من التشغيل السريع لتسجيل المكالمات. recordingId يتم إرجاع عند بدء التسجيل، والذي يمكن استخدامه بعد ذلك لعمليات المتابعة مثل الإيقاف المؤقت والاستئناف.

العملية تشغيل التعليقات
بدء تشغيل التسجيل serverCallId رجوع recordingId
الحصول على حالة التسجيل recordingId رجوع RecordingStateResult
إيقاف التسجيل مؤقتاً recordingId يتيح لك إيقاف تسجيل المكالمات مؤقتاً واستئنافه تخطي تسجيل جزء من مكالمة أو اجتماع، واستئناف التسجيل إلى ملف واحد.
استئناف التسجيل recordingId استئناف عملية تسجيل متوقف مؤقتا. يتم تضمين المحتوى في نفس الملف، مثل المحتوى من قبل الإيقاف المؤقت.
إيقاف التشغيل recordingId إيقاف التسجيل وبدء معالجة الوسائط النهائية لتنزيل الملف.

إعلامات شبكة الأحداث

يستخدم تسجيل المكالمات Azure Event Grid لتزويدك بالإعلامات المتعلقة بالوسائط وبيانات التعريف.

إشعار

توفر خدمات Azure Communication Services تخزين الوسائط قصيرة الأجل للتسجيلات. التسجيلات متاحة للتنزيل لمدة 24 ساعة. بعد 24 ساعة، لم تعد التسجيلات متوفرة.

يتم نشر إعلام Microsoft.Communication.RecordingFileStatusUpdated Event Grid عندما يكون التسجيل جاهزا للاسترداد، عادة بعد بضع دقائق من اكتمال عملية التسجيل، مثل انتهاء الاجتماع أو إيقاف التسجيل. تسجيل إخطارات الأحداث تشمل contentLocation وmetadataLocation، والتي تستخدم لاسترداد كل من الوسائط المسجلة وملف تسجيل البيانات الوصفية.

مرجع مخطط الإخطارات

{
    "id": string, // Unique guid for event
    "topic": string, // /subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}
    "subject": string, // /recording/call/{call-id}/serverCallId/{serverCallId}/recordingId/{recordingId}
    "data": {
        "recordingStorageInfo": {
            "recordingChunks": [
                {
                    "documentId": string, // Document id for retrieving from storage
                    "index": int, // Index providing ordering for this chunk in the entire recording
                    "endReason": string, // Reason for chunk ending: "SessionEnded", "ChunkMaximumSizeExceeded”, etc.
                    "metadataLocation": <string>,  // url of the metadata for this chunk
                    "contentLocation": <string>,   // url of the mp4, mp3, or wav for this chunk
                    "deleteLocation": <string>     // url of the mp4, mp3, or wav to delete this chunk
                }
            ]
        },
        "recordingStartTime": string, // ISO 8601 date time for the start of the recording
        "recordingDurationMs": int, // Duration of recording in milliseconds
        "sessionEndReason": string // Reason for call ending: "CallEnded", "InitiatorLeft", etc.
    },
    "eventType": string, // "Microsoft.Communication.RecordingFileStatusUpdated"
    "dataVersion": string, // "1.0"
    "metadataVersion": string, // "1"
    "eventTime": string // ISO 8601 date time for when the event was created
}

مرجع مخطط بيانات التعريف

{
  "resourceId": <string>,           // stable resource id of the Azure Communication Services resource recording
  "callId": <string>,               // id of the call
  "chunkDocumentId": <string>,      // object identifier for the chunk this metadata corresponds to
  "chunkIndex": <number>,           // index of this chunk with respect to all chunks in the recording
  "chunkStartTime": <string>,       // ISO 8601 datetime for the start time of the chunk this metadata corresponds to
  "chunkDuration": <number>,        // [Chunk duration has a maximum of 4 hours] duration of the chunk this metadata corresponds to in milliseconds
  "pauseResumeIntervals": [
              "startTime": <string>,          // ISO 8601 datetime for the time at which the recording was paused
              "duration": <number>            // duration of the pause in the recording in milliseconds
                          ],
  "recordingInfo": {
               "contentType": <string>,        // content type of recording, e.g. audio/audioVideo
               "channelType": <string>,        // channel type of recording, e.g. mixed/unmixed
               "format": <string>,             // format of the recording, e.g. mp4/mp3/wav
               "audioConfiguration": {
                   "sampleRate": <number>,       // sample rate for audio recording
                   "bitRate": <number>,          // bitrate for audio recording
                   "channels": <number>          // number of audio channels in output recording
                                     }
                    },
  "participants": [
    {
      "participantId": <string>,    // participant identifier of a participant captured in the recording
      "channel": <number>           // channel the participant was assigned to if the recording is unmixed
    }
  ]
}

المخاوف التنظيمية والخصوصية

لدى العديد من البلدان/المناطق والولايات قوانين وأنظمة تنطبق على تسجيل المكالمات. غالبا ما تتطلب مكالمات PSTN والصوت والفيديو موافقة المستخدمين على تسجيل اتصالاتهم. تقع على عاتقك مسؤولية استخدام إمكانيات تسجيل المكالمات بما يطابق القانون. يجب عليك الحصول على موافقة من أطراف الاتصالات المسجلة بطريقة تتوافق مع القوانين المطبقة على كل مشارك.

تتطلب اللوائح المتعلقة بالحفاظ على البيانات الشخصية القدرة على تصدير بيانات المستخدم. من أجل دعم هذه المتطلبات، يتضمن participantId تسجيل ملفات بيانات التعريف لكل مشارك في المكالمة في participants الصفيف. يمكنك الرجوع إلى هوية مستخدم Azure Communication Services في participants الصفيف مع هويات المستخدم الداخلية لتحديد المشاركين في مكالمة.

الخطوات التالية

فيما يلي بعض المقالات التي تهمك: