microsoftgraph / microsoftgraph/microsoft-graph-comms-samples

Join Meeting as ApplicationInstance fails with 400

Open
#419 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
253
Forks
275
Avg merge
1d 5h
Merged PRs (30d)
1

Description

Describe the issue
We are trying to join an existing group call as an ApplicationInstance but the call cannot be established.

Code Snippet

{
    "callbackUri": "{{callbackUri}}",
    "source": {
        "identity": {
            "@odata.type": "microsoft.graph.identitySet",
            "applicationInstance": {
                "id": "{{applicationInstanceId}}",
                "@odata.type": "microsoft.graph.identity",
                "tenantId": "{{tenantId}}"
            },
            "tenantId": "{{tenantId}}"
        },
        "tenantId": "{{tenantId}}",
        "@odata.type": "microsoft.graph.participantInfo"
    },
    "requestedModalities": [
        "audio"
    ],
    "mediaConfig": {
        "@odata.type": "microsoft.graph.serviceHostedMediaConfig"
    },
    "meetingInfo": {
        "token": "ey...",
        "@odata.type": "microsoft.graph.tokenMeetingInfo"
    },
    "tenantId": "{{tenantId}}",
    "@odata.type": "microsoft.graph.call"
}

Call fails with this response:

{
  "@odata.type": "#microsoft.graph.commsNotifications",
  "value": [
    {
      "@odata.type": "#microsoft.graph.commsNotification",
      "changeType": "deleted",
      "resource": "/app/calls/e81f5d00-971f-46c0-9075-7a5d83bd5500",
      "resourceUrl": "/communications/calls/e81f5d00-971f-46c0-9075-7a5d83bd5500",
      "resourceData": {
        "@odata.type": "#microsoft.graph.call",
        "state": "terminated",
        "resultInfo": {
          "@odata.type": "#microsoft.graph.resultInfo",
          "code": 400,
          "subcode": 9999,
          "message": "Enterprise Caller has no TenantId.. DiagCode: 400#10203"
        },
        "meetingInfo": {
          "@odata.type": "#microsoft.graph.tokenMeetingInfo",
          "token": "eyJh..."
        },
        "callChainId": "652489f9-7e1f-4c13-a449-c19053e4bd01"
      }
    }
  ]
}

Expected behavior
I expect to be able to join the meeting, and see the ApplicationInstance as a new participant in the call.

Call ID
CallId: e81f5d00-971f-46c0-9075-7a5d83bd5500
CallChainId: 652489f9-7e1f-4c13-a449-c19053e4bd01
Time: 2021-03-01 09:45:51 UTC

Additional context
I can join the call if I don't set any source or if I set "guest" as a source. Also I tried to add tenantId basically anywhere but I could not get it to work.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the provided call request's source.identity.applicationInstance and tenantId fields with the working cases where source is omitted or set to guest. Trace the terminated call notification and its resultInfo message; done means an ApplicationInstance joins the existing group call as a participant without the 400 termination.

Written by the indexing model from the issue text.

Assessment

Domain
api
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.