Каково определение ответа на уведомление для Movesense / Algo / ECGRR? - PullRequest
0 голосов
/ 18 марта 2020

Каков контент и формат ответа на уведомление для /Algo/ECGRR?

Я подписался на него на оборудовании movesense, используя слегка измененную версию приложения DataLoggerSample Android из Movesense-mobile-lib репозитория с датчиком, работающим с прошивкой устройства по умолчанию. Я могу вытащить .json журнал из сенсора через некоторое время.

(Это было упомянуто в другой вопрос SO Я столкнулся, пытаясь выяснить, как регистрировать данные на устройстве.)

Но я не вижу встроенного ПО устройства по умолчанию в Movesense-device-lib репозитарии , и в 10101 * нет перечисленных API /Algo онлайн документы .

Я ищу конкретные c единицы и внутренние представления ответа на уведомление. Единицы измерения обычно указываются в определении yaml API, например, здесь это для /Meas/HR:

  /Meas/HR/Subscription:
post:
  description: |
    Combined subscription to average HR and R-R data.
  responses:
    200:
      description: Operation completed successfully
      schema:
        $ref: 'types.yaml#/definitions/HRData'
    x-notification:
      description: |
        Notifications comprise average HR (Hz) with the latest RR (ms) data
      schema:
        $ref: 'types.yaml#/definitions/HRData'

, а поле post/x-notification/description сообщает нам единицы измерения.

Из вывода .json с нормативными ответами для /Algo/ECGRR, например:

{"Algo":[
  {"RR":742,"SNR":16,"Timestamp":14326776},
  {"RR":743,"SNR":16,"Timestamp":14327521},
  {"RR":726,"SNR":17,"Timestamp":14328240},
  {"RR":720,"SNR":14,"Timestamp":14328961},
  ...
  {"RR":660,"SNR":12,"Timestamp":20613697}]

Мы можем принять единицы измерения:

  1. миллисекунды для Интервал RR
  2. без единиц измерения для SNR
  3. миллисекунды для метки времени

, и мы можем сделать обоснованное предположение, что внутренние представления:

  1. uint16 для интервала RR
  2. uint8 для SNR
  3. uint32 для метки времени

но я предпочел бы увидеть подтверждение где-то вместо при условии .

И какой нулевой ссылкой является поле Timestamp относительно?

другой вопрос SO говорит нам

Если вы храните / Меры / HR, тогда сгенерированный формат хранения имеет длину 6 байтов.

и вывод .json является плавающей точкой с входом teger:

"Meas":{"HR":[
  {"average":98.791664123535156,"rrData":[720]},
  {"average":97.158706665039062,"rrData":[712]},
  ...

так что образованным предположением будет внутреннее представление float32 & uint16, но это все еще только предположение.

Как долго формат хранения для /Algo/ECGRR? и где я могу найти эту информацию для других типов? так как я не вижу его в API.

1 Ответ

0 голосов
/ 18 марта 2020

ИЗМЕНЕНО для ответа на измененный вопрос

Вы правы относительно структуры уведомления / Algo / ECGRR. Я приложил определение из файла yaml ниже для вас:

definitions:
  ECGRRData:
    required:
      - Timestamp
      - RR
      - SNR
    properties:
      Timestamp:
        description: Local timestamp of RR detection.
        type: integer
        format: uint32
        x-unit: millisecond
      RR:
        description: RR interval
        type: integer
        format: uint16
        x-unit: millisecond
      SNR:
        description: Estimated SNR of ECG signal (dB)
        type: integer
        format: int8

Оригинальный ответ

Вопрос можно перефразировать как «Как я могу включить / Algo / ECGRR сервис для моей собственной прошивки? " и наша текущая документация не содержит эту информацию слишком хорошо (она будет добавлена).

Краткий ответ : Служба ECGRR представляет собой отдельно лицензированный программный модуль, который доступно разработчикам, которым это нужно. Чтобы получить его, нужно запросить его у команды Movesense (info (at) movesense.com), и он может понести лицензионные сборы при заказе объемов производства (по решению ответственных за ценообразование).

Полное раскрытие: я работаю в команде Movesense

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...