call resource type

Namespace: microsoft.graph

The call resource is created when there's an incoming call for the application or the application creates a new outgoing call via a POST on communications/calls.

Calls can be set up as a peer-to-peer or as a group call. To create or join a group call, supply the chatInfo and meetingInfo. If these values aren't supplied, a new group call is created automatically. For an incoming call, record these values in a highly available store so that your application can rejoin the call if your application crashes.

Although the same identity can't be invited multiple times, it's possible for an application to join the same meeting multiple times. Each time the application wants to join a call, a separate identity must be provided in order for the clients to display them as different participants.

Note: You can get the join URL from a meeting scheduled with Microsoft Teams. Extract the data from the URL as shown to populate chatInfo and meetingInfo.

https://teams.microsoft.com/l/meetup-join/19%3ameeting_NTg0NmQ3NTctZDVkZC00YzRhLThmNmEtOGQ3M2E0ODdmZDZk%40thread.v2/0?context=%7b%22Tid%22%3a%2272f988bf-86f1-41af-91ab-2d7cd011db47%22%2c%22Oid%22%3a%224b444206-207c-42f8-92a6-e332b41c88a2%22%7d

Becomes:

https://teams.microsoft.com/l/meetup-join/19:meeting_NTg0NmQ3NTctZDVkZC00YzRhLThmNmEtOGQ3M2E0ODdmZDZk@thread.v2/0?context={"Tid":"72f988bf-86f1-41af-91ab-2d7cd011db47","Oid":"4b444206-207c-42f8-92a6-e332b41c88a2"}

Methods

Method Return Type Description
Create call Create call enables your bot to create a new outgoing peer-to-peer or group call, or join an existing meeting.
Get call Read properties of the call object.
Delete/hang up None Delete or Hang-up an active call.
Keep alive None Ensure that the call remains active.
Call handling
Answer None Answer an incoming call.
Reject None Reject an incoming call.
Redirect None Redirect an incoming call.
Transfer None Transfer a call
Group calls
List participant collection Get a participant object collection.
Invite participants commsOperation Invite participants to the active call.
Mute participant muteParticipantOperation Mute a participant in the group call.
Create audioRoutingGroup Create a new audioRoutingGroup by posting to the audioRoutingGroups collection.
List audio routing groups audioRoutingGroup collection Get an audioRoutingGroup object collection.
Add large gallery view addLargeGalleryViewOperation Add the large gallery view to a call.
Interactive-voice-response
Play prompt playPromptOperation Play prompt in the call.
Record response recordOperation Records a short audio response from the caller.
Cancel media processing commsOperation Cancel media processing.
Subscribe to tone commsOperation Subscribe to DTMF tones.
Send DTMF tone commsOperation Send DTMF tones in a call.
Self participant operations
Mute application muteParticipantOperation Mute self in the call.
Unmute application unmuteParticipantOperation Unmute self in the call.
Change screen sharing role None Start and stop sharing screen in the call.
Recording Operations
Update recording status updateRecordingStatusOperation Updates the recording status.
Logging operations
Log teleconference device quality data teleconferenceDeviceQuality Log video teleconferencing device quality data.

Properties

Property Type Description
callbackUri String The callback URL on which callbacks are delivered. Must be an HTTPS URL.
callChainId String A unique identifier for all the participant calls in a conference or a unique identifier for two participant calls in a P2P call. This identifier must be copied over from Microsoft.Graph.Call.CallChainId.
callOptions outgoingCallOptions Contains the optional features for the call.
callRoutes callRoute collection The routing information on how the call was retargeted. Read-only.
chatInfo chatInfo The chat information. Required information for joining a meeting.
direction callDirection The direction of the call. The possible values are incoming or outgoing. Read-only.
id String The unique identifier for the call. Read-only.
incomingContext incomingContext Call context associated with an incoming call.
mediaConfig appHostedMediaConfig or serviceHostedMediaConfig The media configuration. Required.
mediaState callMediaState Read-only. The call media state.
meetingInfo organizerMeetingInfo, tokenMeetingInfo, or joinMeetingIdMeetingInfo The meeting information. Required information for meeting scenarios.
myParticipantId String Read-only.
requestedModalities modality collection The list of requested modalities. Possible values are: unknown, audio, video, videoBasedScreenSharing, data.
resultInfo resultInfo The result information. For example, the result can hold termination reason. Read-only.
source participantInfo The originator of the call.
state callState The call state. Possible values are: incoming, establishing, ringing, established, hold, transferring, transferAccepted, redirecting, terminating, terminated. Read-only.
subject String The subject of the conversation.
targets invitationParticipantInfo collection The targets of the call. Required information for creating peer to peer call.
toneInfo toneInfo Read-only.
transcription callTranscriptionInfo The transcription information for the call. Read-only.

Relationships

Relationship Type Description
contentSharingSessions contentSharingSession collection Read-only. Nullable.
operations commsOperation collection Read-only. Nullable.
participants participant collection Read-only. Nullable.

JSON representation

The following JSON representation shows the resource type.

{
  "callbackUri": "String",
  "callChainId": "String",
  "callOptions": {"@odata.type": "#microsoft.graph.outgoingCallOptions"},
  "chatInfo": {"@odata.type": "#microsoft.graph.chatInfo"},
  "contentSharingSessions": [{ "@odata.type": "microsoft.graph.contentSharingSession" }],
  "direction": "String",
  "id": "String (identifier)",
  "mediaConfig": {"@odata.type": "#microsoft.graph.mediaConfig"},
  "mediaState": {"@odata.type": "#microsoft.graph.callMediaState"},
  "meetingInfo": {"@odata.type": "#microsoft.graph.meetingInfo"},
  "myParticipantId": "String",
  "requestedModalities": ["String"],
  "resultInfo": {"@odata.type": "#microsoft.graph.resultInfo"},
  "source": {"@odata.type": "#microsoft.graph.participantInfo"},
  "state": "String",
  "subject": "String",
  "targets": [{"@odata.type": "#microsoft.graph.invitationParticipantInfo"}],
  "toneInfo": {"@odata.type": "#microsoft.graph.toneInfo"},
  "transcription": {"@odata.type": "#microsoft.graph.callTranscriptionInfo"},
}