microsoft-graph-comms-samples icon indicating copy to clipboard operation
microsoft-graph-comms-samples copied to clipboard

Graph API recording duration limitation

Open Githamza opened this issue 6 years ago • 7 comments

I would record a call on teams using Graph API. As mentionned in documentation .

I make a request

POST https://graph.microsoft.com/beta/app/calls/{id}/record
Content-Type: application/json
Content-Length: 394

{
  "bargeInAllowed": true,
  "clientContext": "d45324c1-fcb5-430a-902c-f20af696537c",
  "prompts": [
    {
      "@odata.type": "#microsoft.graph.mediaPrompt",
      "mediaInfo": {
        "uri": "https://cdn.contoso.com/beep.wav",
        "resourceId": "1D6DE2D4-CD51-4309-8DAA-70768651088E"
      },
      "loop": 5
    }
  ],
  "maxRecordDurationInSeconds": 1800,
  "initialSilenceTimeoutInSeconds": 10,
  "maxSilenceTimeoutInSeconds": 2,
  "recordingFormat": "wav",
  "playBeep": true,
  "streamWhileRecording": true,
  "stopTones": [ "#", "11", "*" ]
}

I get the response with file locatop,

{
 [
    {
      "changeType": "deleted",
      "resource": "/app/calls/57DAB8B1894C409AB240BD8BEAE78896/operations/0FE0623FD62842EDB4BD8AC290072CC5",
      "resourceData": {
        "@odata.type": "#microsoft.graph.recordOperation",
        "@odata.id": "/app/calls/57DAB8B1894C409AB240BD8BEAE78896/operations/0FE0623FD62842EDB4BD8AC290072CC5",
        "@odata.etag": "W/\"54451\"",
        "clientContext": "d45324c1-fcb5-430a-902c-f20af696537c",
        "status": "completed",
        "recordResourceLocation": "https://file.location/17e3b46c-f61d-4f4d-9635-c626ef18e6ad",
        "recordResourceAccessToken": "<access-token>",
        "completionReason": "stopToneDetected"
      }
    }
  ]
}

Actual problem

When I request the location url and get the file , the maximum duration of the audio file is 300s

Expected behaviour

Be able to extend the recording time to longer than 300 s ( 5min ) ?

Thanks

Githamza avatar Jan 22 '19 14:01 Githamza

@Githamza

The recording time limit of 300 seconds is by-design. This API is not intended to be able to record an entire call or meeting, but instead capture short user responses to prompts. The application must also download the recording (if it wishes to preserve the audio) shortly after the recording is completed, as the platform will discard its copy of the recording after a few minutes.

ssulzer avatar Jan 25 '19 03:01 ssulzer

Thanks for your reply ,

Any future feature to record an entire call ?

Githamza avatar Jan 25 '19 11:01 Githamza

@Githamza Yes, we do plan on exposing call/meeting recording capabilities in the upcoming quarters.

VinodRavichandran avatar Jan 25 '19 17:01 VinodRavichandran

@VinodRavichandran The plan for "call/meeting recording capabilities" and recordings >300s will be implemented via the Graph API , in the upcoming quarters? or via the Stream public API (roadmap for Q2 2020) ?

stefan2410 avatar Mar 10 '19 13:03 stefan2410

@stefan2410 We will know the answer to your question once we finalize on the details of the design to implement this feature.

VinodRavichandran avatar Mar 14 '19 16:03 VinodRavichandran

+1 for increasing the recording time limit to an entire call.

saraswat40 avatar Jun 04 '19 16:06 saraswat40

Any update on recording entire call, don't know how much the time call takes place

AshokButra avatar Jun 22 '24 15:06 AshokButra