Поделиться через


call: sendDtmfTones

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Отправка тонов DTMF в вызове.

Дополнительные сведения об обработке операций см. в разделе commsOperation.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) Не поддерживается. Не поддерживается.
Делегированные (личная учетная запись Майкрософт) Не поддерживается. Не поддерживается.
Приложение Calls.Initiate.All Calls.AccessMedia.All

Примечание: При создании вызова проверяются разрешения; при вызове этого API дополнительные проверка разрешений не выполняется. Методы Calls.AccessMedia.All необходимы только для вызовов, использующих мультимедиа, размещенные в приложении.

HTTP-запрос

POST /app/calls/{id}/sendDtmfTones
POST /communications/calls/{id}/sendDtmfTones

Примечание. Путь /app является устаревшим. В дальнейшем используйте путь /communications.

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.

Текст запроса

В тексте запроса предоставьте JSON-объект с указанными ниже параметрами.

Параметр Тип Описание
Тонах Коллекция ToneInfo Отправляемые тона.
delayBetweenTonesMs Int32 Задержка в миллисекундах между тонами.
clientContext String Уникальная строка контекста клиента. Может содержать не более 256 символов.

Отклик

В случае успешного выполнения этот метод возвращает код отклика 200 OK и объект sendDtmfTonesOperation в теле отклика.

Примеры

В приведенном ниже примере показано, как вызывать этот API.

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/beta/communications/calls/481f3600-983e-4276-9b59-c1b30ec8d125/microsoft.graph.sendDtmfTones
Content-Type: application/json
Content-Length: 166

{
  "tones": [
    "tone1",
    "tone2",
    "tone3",
    "tone4",
    "tone5",
    "tone6",
    "tone7",
    "tone8",
    "tone9",
    "tone0",
    "star",
    "pound"
  ],
  "delayBetweenTonesMs": 1000,
  "clientContext": "e0be71f1-a14f-4cec-b65a-e7aba5db7c53"
}

Отклик

Ниже показан пример отклика.

Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

HTTP/1.1 200 OK
Location: https://graph.microsoft.com/beta/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896/operations/d36fe651-9f50-484d-bd4b-1e6415eae448

{
  "@odata.type": "#microsoft.graph.sendDtmfTonesOperation",
  "status": "running",
  "clientContext": "e0be71f1-a14f-4cec-b65a-e7aba5db7c53",
  "id": "d36fe651-9f50-484d-bd4b-1e6415eae448"
}

Уведомление — операция завершена

Успешное обращение

POST https://bot.contoso.com/api/calls
Content-Type: application/json
{
  "@odata.type": "#microsoft.graph.commsNotifications",
  "value": [
    {
      "@odata.type": "#microsoft.graph.commsNotification",
      "changeType": "deleted",
      "resourceUrl": "/communications/calls/481f3600-983e-4276-9b59-c1b30ec8d125/operations/d36fe651-9f50-484d-bd4b-1e6415eae448",
      "resourceData": {
        "@odata.type": "#microsoft.graph.sendDtmfTonesOperation",
        "status": "completed",
        "completionReason": "completedSuccessfully",
        "clientContext": "e0be71f1-a14f-4cec-b65a-e7aba5db7c53",
        "id": "d36fe651-9f50-484d-bd4b-1e6415eae448"
      }
    }
  ]
}

Ошибка 1

POST https://bot.contoso.com/api/calls
Content-Type: application/json
{
  "@odata.type": "#microsoft.graph.commsNotifications",
  "value": [
    {
      "@odata.type": "#microsoft.graph.commsNotification",
      "changeType": "deleted",
      "resourceUrl": "/communications/calls/481f3600-983e-4276-9b59-c1b30ec8d125/operations/d36fe651-9f50-484d-bd4b-1e6415eae448",
      "resourceData": {
        "@odata.type": "#microsoft.graph.sendDtmfTonesOperation",
        "status": "completed",
        "completionReason": "mediaOperationCanceled",
        "clientContext": "e0be71f1-a14f-4cec-b65a-e7aba5db7c53",
        "id": "d36fe651-9f50-484d-bd4b-1e6415eae448"
      }
    }
  ]
}

Ошибка 2

POST https://bot.contoso.com/api/calls
Content-Type: application/json
{
  "@odata.type": "#microsoft.graph.commsNotifications",
  "value": [
    {
      "@odata.type": "#microsoft.graph.commsNotification",
      "changeType": "deleted",
      "resourceUrl": "/communications/calls/481f3600-983e-4276-9b59-c1b30ec8d125/operations/d36fe651-9f50-484d-bd4b-1e6415eae448",
      "resourceData": {
        "@odata.type": "#microsoft.graph.sendDtmfTonesOperation",
        "status": "completed",
        "completionReason": "unknown",
        "clientContext": "e0be71f1-a14f-4cec-b65a-e7aba5db7c53",
        "id": "d36fe651-9f50-484d-bd4b-1e6415eae448"
      }
    }
  ]
}