Быстрый старт

<< Показать Оглавление >>

Прямое подключение к серверу      

Быстрый старт

info

Пример иллюстрирует работу с единственным сервером.

Функциональность примера можно проверить с помощью плагина Simple WebSocket Client или приложения Postman.

Подключение

Подключите ваше приложение к известному вам серверу Dictation Server через WS (или WSS, если на сервере используется шифрование трафика). При этом в заголовке в Cookies или в GET-параметрах запроса передайте информацию о вашей информационной системе и пользователе.

Ключ

Пример значения

Описание

MIS_TYPE

MUSSY

Тип МИС

MIS_ID

MUSSY-1

Идентификатор МИС

MIS_VERSION

1.0

Версия МИС (необязательно)

MIS_USER

Ivanov

Идентификатор пользователя МИС

DESKTOP_ID

e64b131a-4bd2-4bcb-835a-e1408d32fbe3

Идентификатор экземпляра МИС

Авторизация

Обмен сообщениями между вашим приложением и Dictation Server не требует авторизации.

При подключении обязательно должен быть указан пользователь, так как он используется при биллинге и, кроме того, может оставлять обратную связь. Пользователь должен быть однозначно идентифицируемым.

Выбор словаря

Перед запуском распознавания должен быть в явном виде указан словарь, который будет использоваться для распознавания. Список установленных словарей передаётся от сервера сразу после подключения.

 

{
   "MessageType": 9,
   "Data":{
      "Id":"common-med_7.1.18:eos"
   }
}

Здесь common_med_7.1.18:eos — один из словарей, имеющихся на сервере. Указан в качестве примера. На реальном сервере может быть другой словарь или иная его версия.

Сбор данных сервером

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

 

{
    "MessageType": 13,
    "Data": { 
        "SendingMode": false
    }
}

Запуск распознавания

В простейшем случае запуск распознавания запускается сразу после получения описания формы.

Передача описания формы ведётся в сообщении с MessageType = 106.

 

{
    "MessageType": 106,
    "Data": {
        "Key": "a0bc1744-010c-4414-84e6-acabeff7b517",
        "Name": "Форма №1",
        "Childs": [
            {
                "DateTimeFormat": "dd.MM.yyyy",
                "Type": 4,
                "Synonyms": [
                    "Плановая дата следующего осмотра",
                    "Cледующий осмотр",
                    "Дата осмотра",
                    "Дата следующего осмотра"
                ],
                "Key": "0d2f0d70-be6a-4f02-b71f-b3e2adc80542"
            }
        ],
        "CultureCode": "ru-RU"
    }
}

 

В качестве подтверждения получения запроса и начала распознавания Dictation Server возвращает сообщение с MessageType = 2.

 

{
    "MessageType": 2,
    "Data": {
        "Mode": 3,
        "State": 1,
        "Info": "a0bc1744-010c-4414-84e6-acabeff7b517"
    }
}

Диктовка

После этого произнесите в микрофон одну из фраз:

•Следующий осмотр пятого января;

•Дата осмотра пятого января;

•Плановая дата следующего осмотра пятое января;

•Дата следующего осмотра пятое января.

В ответ Voice2Med  присылает сообщение:

 

{
  "MessageType": 201,
  "Data": {
    "Type": 4,
    "Value": "05.01.2019",
    "Key": "0d2f0d70-be6a-4f02-b71f-b3e2adc80542"
  }
}

 

Остановка распознавания

Для остановки распознавания формы следует отправить сообщение с MessageType = 107.

 

{
  "MessageType": 107
}

 

В ответ Voice2Med Client присылает сообщение:

 

{
  "MessageType": 2,
  "Data": {
    "Mode": 0,
    "State": 1
  }
}