Опросы

обновленный
Cover image for: Опросы

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

Атрибуты

название тип описание
id poll ID Resource identifier.
resource string, always poll Resource type specifier.
organisation organisation ID The organisation associated with this resource.
key key ID The key associated with this resource.
user user ID The user associated with this resource.
source source ID The source the poll is targeting. This can be a child source of the session's source.
session session ID The session the poll is using.
subscription optional subscription ID The associated subscription object ID, if applicable.
tasks_pending list of task IDs The tasks associated with the poll that are awaiting processing.
tasks_processing list of task IDs The tasks associated with the poll that are being processed.
tasks_succeeded list of task IDs The tasks associated with the poll that have succeeded.
tasks_failed list of task IDs The tasks associated with the poll that have failed.
tasks_suspended list of task IDs The tasks associated with the poll that are suspended.
results list object containing result objects List of result objects generated by the poll's tasks.
errors list object containing error objects List of error objects generated by the poll's tasks.
state string One of: pending, processing, completed.
date_created datetime When the resource was created.
date_started optional datetime When processing of the poll began.
date_completed optional datetime When processing of the poll finished.

Задачи

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

Результаты

Все результаты, опубликованные задачами, запущенными в опросе, отображаются в атрибуте results опроса. Это позволяет использовать результаты до завершения опроса.

ошибки

Любые ошибки, вызванные задачами, запущенными в опросе, появятся в атрибуте errors опроса.

состояния

Состояние опроса отражает только то, ожидает ли инициализация ( pending ), находится в процессе ( processing ) или все задачи завершены ( completed ).

Опрос не отражает никаких состояний ошибок, кроме как через связанные с ним задачи.

полезная нагрузка

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

название тип описание
info_types list of info_type objects Specifies which info types should be retrieved. Supports wildcard *.
data_types list of data_type objects Specifies which data types should be retrieved.
files list of file IDs. Specifies which files to retrieve.
filters nested filters object Specifies which filters to apply to retrieved data.

Например, полезная нагрузка опроса для извлечения всех типов информации из источника учетной записи iCloud будет выглядеть так:

{
  "info_types": ["*"]
}

Чтобы получить различные данные для обмена сообщениями из резервной копии iCloud или источника Reincubate Relay, но только с определенной даты:

{
  "data_types": ["ios_messages.messages", "whatsapp.messages", "viber.messages"],
  "filters": {
    "since": "2019-09-15T22:04:12Z",
    "until": "2021-06-02T12:00:00Z"
  }
}

Чтобы получить данные файла для изображений, на которые есть ссылки в библиотеке фотографий iCloud:

{
  "files": ["icpl://xyz123", "icpl://abc321"]
}

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

{
  "info_types": ["*"],
  "data_types": ["ios_phone.calls"]
}

Filters

Filters allow the client to reduce the amount of data returned to only that which is likely to be of interest. For example, you might filter a poll for SMS data to only the last month of data.

name type description
since optional datetime Filter to only data that was created after this datetime.
until optional datetime Filter to only data that was created before this datetime.

Filters in subscription poll payloads

When using subscriptions to generate regular polls, any filters set in the poll payload will only be used on the initial poll of the subscription. Thereafter, the API will do the following:

  • Any value for until is ignored as to avoid simply re-polling the same interval repeatedly
  • If until was set, the next poll will fetch data from that point in time forward
  • If until was not set, the next poll will fetch data from the time of the initial poll forward (i.e. the API will poll progressively as normal)

Создать POST /polls

Создайте опрос для данных против определенного сеанса.

Параметр source следует использовать только при нацеливании на дочерний источник первичного источника сеанса. Например, при получении данных из rirelay.source параметр source должен быть идентификатором этого источника.

название тип описание
key optional, key ID Optionally override the key used for this poll. This is useful when letting users trial new functionality.
source optional, source ID Optionally target a child source of the session-linked source.
session session ID The session to be used to authenticate data retrieval.
subscription subscription ID The subscription to use to perform the poll. If this is provided, source and session can be omitted.
payload nested poll payload The poll payload used to specify poll

Использование cURL

curl https://ricloud-api.reincubate.com/polls \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "session": "<session ID>",
  "payload": {
    "info_types": ["*"]
  }
}'

Использование ricloud-py

import ricloud

poll_payload = {
  'info_types': ['*'],
}

poll = ricloud.Poll.create(
  session='<session ID or ricloud.Session instance>',
  payload=poll_payload,
)

Образец ответа

{
  "id": "54554389-5f1a-4ccf-9bb8-024a031cf948",
  "resource": "poll",
  "organisation": 1,
  "key": 1,
  "user": 1,
  "source": 1,
  "session": "f5a7a7ef-ff21-47fe-9aa6-7ebd08123623",
  "subscription": null,
  "tasks_pending": [],
  "tasks_processing": [],
  "tasks_succeeded": [],
  "tasks_failed": [],
  "tasks_suspended": [],
  "results": {
      "data": [],
      "has_more": false,
      "total_count": 0,
      "url": "/polls/54554389-5f1a-4ccf-9bb8-024a031cf948/results"
  },
  "errors": {
    "data": [],
      "has_more": false,
      "total_count": 0,
      "url": "/polls/54554389-5f1a-4ccf-9bb8-024a031cf948/errors"
  },
  "state": "pending",
  "date_created": "2020-02-20T11:59:14.694337Z",
  "date_started": null,
  "date_completed": null
}

Получить GET /polls/{poll ID}

Использование cURL

curl https://ricloud-api.reincubate.com/polls/<poll ID> \
  -H 'Authorization: Token <your key_token>'

Использование ricloud-py

import ricloud

poll = ricloud.Poll.retrieve(<poll ID>)

Список GET /polls

название тип описание
key key ID Filter by associated key. This is the key used by the user at the time.
user user ID Filter by associated user.
source source ID Filter by the target source.
session session ID Filter by the target session.
subscription subscription ID Filter by the associated subscription.
state string Filter by session state.
date_created datetime filter Filter by when the resource was created.
date_started datetime filter Filter by when the poll started.
date_completed datetime filter Filter by when the poll was finished.

Использование cURL

curl https://ricloud-api.reincubate.com/polls \
  -H 'Authorization: Token <your key_token>'

Использование ricloud-py

import ricloud

polls = ricloud.Poll.list()

Изменения

2022-07-08

  • Support for the until filter in poll payloads was added for SMS extraction. This complements the since filter to allow clients to specify an exact datetime range to retrieve data from.

2020-05-05

  • Атрибут errors был добавлен в объект опроса. Это объект вложенного списка, содержащий объекты ошибок, связанные с опросом.

2020-02-20

  • Важнейший : атрибут results объекта опроса теперь является вложенным списком, а не простым списком. Это позволяет разбивать результаты на страницы, когда опрос публикует большое количество результатов.

2019-10-16

  • Добавляет атрибут subscription в объект опроса, чтобы указать, был ли опрос инициирован подпиской.

2019-06-01

  • Атрибут payload объекта опроса теперь может состоять из нескольких типов операций. Это означает, что опрос может быть создан с любым или всеми info-types data-types и files в полезной нагрузке.
  • Major Атрибут type в объекте poll устарел в пользу составных полезных нагрузок опроса.

Как мы можем помочь?

Наша служба поддержки здесь, чтобы помочь!

Наш офис работает с понедельника по пятницу с 9:00 до 17:00 по Гринвичу. Время в настоящее время 6:45 ДП с GMT.

Мы стремимся отвечать на все сообщения в течение одного рабочего дня.

Наша отличная команда поддержки

© 2008 - 2022 Reincubate Ltd. Все права защищены. Зарегистрировано в Англии и Уэльсе #5189175, VAT GB151788978. Reincubate® и Camo® являются зарегистрированными товарными знаками. Политика конфиденциальности & условия. Построен с в Лондоне.