#javascript #microsoft-graph-api
Вопрос:
Я пытался публиковать повторяющиеся события ежегодно с помощью API Microsoft graph, с помощью этой простой полезной нагрузки я хочу публиковать события, которые повторяются ежегодно во вторник 3-й недели августа,
Я размещаю это так:
async function simplePost(){
event = {
body: {
content: "<p>Post from console</p>",
contentType: "html"
},
end: {
dateTime: "2021-08-17",
timeZone: "Asia/Bangkok"
},
recurrence: {
pattern: {
daysOfWeek: ["Tuesday"],
interval: 1,
month: 8,
type: "relativeYearly"
},
range:{
endDate: "2025-08-17",
startDate: "2021-08-17",
type: "endDate",
}
},
start:{
dateTime: "2021-08-17",
timeZone: "Asia/Bangkok"
},
subject: "No title - testing"
}
try {
console.log(event)
post = await graphClient
.api('/me/events')
.post(event);
console.log(post)
} catch (error) {
console.log(error)
}
}
Это событие было успешно опубликовано, однако дата начала была указана неверно из полезной нагрузки, которую я опубликовал; дата начала события стала 2022-08-02T00:00:00.0000000
, но данные даты начала, которые я опубликовал, были "2021-08-17"
. Я задался вопросом, почему это так неправильно; и я хочу, чтобы он правильно публиковался в качестве моих полезных данных. Спасибо.
Ответ №1:
Из полезной нагрузки вы создаете событие, которое: Происходит каждый год в первый вторник августа с Пн 8/1/2022 до Сб 8/16/2025. Вы можете увидеть больше о свойствах типа ресурсов RecurrencePattern и
Для начала я предлагаю вам указать метку времени события, потому что ваша дата начала совпадает с датой окончания. Например, есть 2021-08-17T12:00:00 до 2021-08-17T13:00:00 для одночасового события вместо 2021-08-17 до 2021-08-17.
Тем не менее, конечная точка возвращает следующее событие в вашей серии, которое в вашем случае 2022-08-02T00:00:00.0000000 и ожидается, что 2 августа 2021 года уже в прошлом.
Вот версия вашей полезной нагрузки, которая может дать вам желаемый результат. Не то чтобы даты начала и окончания будут определять продолжительность вашего мероприятия.
{
"subject": "Reapetes Yearly",
"body": {
"contentType": "HTML",
"content": "Repeating Eevent"
},
"start": {
"dateTime": "2021-08-17T12:00:00",
"timeZone": "Asia/Bangkok"
},
"end": {
"dateTime": "2021-08-17T13:00:00",
"timeZone": "Asia/Bangkok"
},
"recurrence": {
"pattern": {
"daysOfWeek": [
"Tuesday"
],
"interval": 1,
"month": 8,
"type": "relativeYearly"
},
"range": {
"endDate": "2025-08-17",
"startDate": "2021-08-17",
"type": "endDate"
}
},
"location": {
"displayName": "Harry's Bar"
},
"attendees": [
{
"emailAddress": {
"address": "chris@contoso.com",
"name": "Chris Green"
},
"type": "required"
}
]
}