Как написать фильтр периода времени odata в приложении logi c для доступа к событиям календаря Outlook? - PullRequest
0 голосов
/ 19 марта 2020

Я бы хотел получать события, которые начинаются сегодня, из календаря Outlook. Я не знаю, как перевести формат запросов, используемых в вызовах API, в то, что ожидает приложение Logi c.

Я пробовал что-то вроде

  • 'start' ge '2020-03-19-T07:33:33.707Z' and 'start' le '2020-03-26T07:33:33.707Z' который я в основном составил
  • ряд вариантов на основе этого ответа .
  • и этого ответа было слишком рано для поддержки одат запросы

enter image description here

Данные представляют собой список объектов, которые выглядят следующим образом, согласно просмотру после запуска приложения logi c:

{
    "subject": "Working elsewhere (Not in the office)",
    "start": "2020-03-18T21:00:00.0000000",
    "end": "2020-03-18T21:00:00.0000000",
    "body": "plenty of writing",
    "isHtml": true,
    "responseType": "notResponded",
    "responseTime": "0001-01-01T00:00:00+00:00",
    "id": "AAMkAGJkMGY5MTQzLWVhNDAzzAAAHYoGQAAA=",
    "createdDateTime": "2020-03-19T02:44:49.558788+00:00",
    "lastModifiedDateTime": "2020-03-19T02:44:49.7419829+00:00",
    "organizer": "Clazbo@bvn.com.au",
    "timeZone": "UTC",
    "seriesMasterId": null,
    "categories": [],
    "webLink": "https://outlook.office365.com/owa/?itemid=AAxxD&exvsurl=1&path=/calendar/item",
    "requiredAttendees": "clazbo@bvn.com.au;",
    "optionalAttendees": "wherebot@bvn.com.au;",
    "resourceAttendees": "",
    "location": "",
    "importance": "low",
    "isAllDay": false,
    "recurrence": "none",
    "recurrenceEnd": null,
    "numberOfOccurences": null,
    "reminderMinutesBeforeStart": 960,
    "isReminderOn": true,
    "showAs": "free",
    "responseRequested": false
  },

С этим вопросом связаны две части:

  • Как структурировать запрос? Каков его синтаксис?
  • Как мне поддерживать работу окна даты (я предполагаю, что это что-то вроде start ge formatDateTime(utcnow(),'yyyy-MM-dd') and start le formatDateTime(utcnow() + 1,'yyyy-MM-dd'))

1 Ответ

1 голос
/ 20 марта 2020

Вы можете просто использовать запрос фильтра, как показано ниже для выполнения этой операции:

Start/DateTime ge '2020-03-01T08:00' and Start/DateTime le '2020-03-25T08:00'

Если вам не нужно время, все в порядке, если использовать запрос ниже:

Start/DateTime ge '2020-03-01' and Start/DateTime le '2020-03-25'

Если вы хотите использовать utcnow () в приложении logi c, см. Скриншот ниже:

enter image description here

Два выражения formatDateTime () на скриншоте:

formatDateTime(utcnow(),'yyyy-MM-dd')
formatDateTime(adddays(utcnow(), 7),'yyyy-MM-dd')

Обратите внимание на символ ' до и после выражения formatDateTime() на скриншоте.

Надеюсь, это поможет ~

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