Lotus notes 如何为日历/日历事件创建通知-DominoAPI

Lotus notes 如何为日历/日历事件创建通知-DominoAPI,lotus-notes,lotus-domino,Lotus Notes,Lotus Domino,我正在尝试使用DominoAPI版本9.0.1创建日历通知 我尝试了几件事,下面是使用noticetype创建日历事件的示例post请求 POST-https://{host}/{database}/api/calendar/events/ 请求机构: { "x-lotus-charset": { "data": "UTF-8" }, "scheduleMethod": "request", "timezones": [ { "tzid": "

我正在尝试使用DominoAPI版本9.0.1创建日历通知

我尝试了几件事,下面是使用noticetype创建日历事件的示例post请求

POST-https://{host}/{database}/api/calendar/events/

请求机构:

{
  "x-lotus-charset": {
    "data": "UTF-8"
  },
  "scheduleMethod": "request",
  "timezones": [    

  {
      "tzid": "Eastern",
      "standard": {
        "start": {
          "date": "1950-11-05",
          "time": "02:00:00"
        },
        "offsetFrom": "-0400",
        "offsetTo": "-0500",
        "recurrenceRule": "FREQ=YEARLY;BYMONTH=11;BYDAY=1SU;BYHOUR=2;BYMINUTE=0"
      },
      "daylight": {
        "start": {
          "date": "1950-03-12",
          "time": "02:00:00"
        },
        "offsetFrom": "-0500",
        "offsetTo": "-0400",
        "recurrenceRule": "FREQ=YEARLY;BYMONTH=3;BYDAY=2SU;BYHOUR=2;BYMINUTE=0"
      }
    }
  ],
  "events": [
    {
      "summary": "1x1 with Duke",
      "location": "My office",
      "description": "Status updates, etc.",
      "start": {
        "date": "2013-09-16",
        "time": "09:00:00",
        "tzid": "Eastern"
      },
      "end": {
        "date": "2013-09-16",
        "time": "10:00:00",
        "tzid": "Eastern"
      },
      "class": "public",
      "transparency": "opaque",
      "sequence": 0,
      "attendees": [
        {
          "role": "chair",
          "status": "needs-action",
          "rsvp": false,
          "displayName": "Test1 Test1",
          "email": "Test1Test1@test"
        },
        {
          "role": "req-participant",
          "status": "needs-action",
          "rsvp": true,
          "displayName": "Test1 Test1",
          "email": "Test1Test1@test"
        }
      ],
      "organizer": {
        "displayName": "Tester Tester",
        "email": "TesterTester@test"
      },
      "x-lotus-update-subject": {
        "data": "Invitation: 1x1 with Duke (Sep 16 09:00 AM EDT in My office)"
      },
      "x-lotus-broadcast": {
        "data": "FALSE"
      },
      "x-lotus-notesversion": {
        "data": "2"
      },
      "x-lotus-noticetype": {
        "data": "I"
      },
      "x-lotus-appttype": {
        "data": "3"
      },
      "x-lotus-unid": {
        "data": "someid"
      }
    }
  ]
}
在noticetype得到的响应中是“A”标记而不是I,我无法创建通知,也无法创建邀请

期待
获取https://{host}/{Database}/api/calendar/events/{event_id}/notices

发送通知列表。但空体的反应是200

此外,邀请也会抛出空响应


获取https://{host}/{Database}/api/calendar/investments

我刚刚发布了以下JSON正文,它在我的环境中工作:

{
  "timezones": [    
    {
      "tzid": "Eastern",
      "standard": {
        "start": {
          "date": "1950-11-05",
          "time": "02:00:00"
        },
        "offsetFrom": "-0400",
        "offsetTo": "-0500",
        "recurrenceRule": "FREQ=YEARLY;BYMONTH=11;BYDAY=1SU;BYHOUR=2;BYMINUTE=0"
      },
      "daylight": {
        "start": {
          "date": "1950-03-12",
          "time": "02:00:00"
        },
        "offsetFrom": "-0500",
        "offsetTo": "-0400",
        "recurrenceRule": "FREQ=YEARLY;BYMONTH=3;BYDAY=2SU;BYHOUR=2;BYMINUTE=0"
      }
    }
  ],
  "events": [
    {
      "summary": "1x1 with Charles",
      "location": "My office",
      "description": "Status updates, etc.",
      "start": {
        "date": "2019-09-16",
        "time": "09:00:00",
        "tzid": "Eastern"
      },
      "end": {
        "date": "2019-09-16",
        "time": "10:00:00",
        "tzid": "Eastern"
      },
      "class": "public",
      "transparency": "opaque",
      "sequence": 0,
      "attendees": [
        {
          "role": "req-participant",
          "status": "needs-action",
          "rsvp": true,
          "email": "clowe@peaks.com"
        }
      ],
      "organizer": {
        "email": "jdodge@peaks.com"
      }
    }
  ]
}
我所说的“工作”是指它在主席日历上创建了一个会议(jdodge@peaks.com)并自动向与会者发送邀请(clowe@peaks.com)

一些要点:

  • 我将JSON发布到主席的事件资源中——在我的例子中是
    /mail/jdodge.nsf/api/calendar/events
    组织者
    对象中的电子邮件地址必须与邮件文件的所有者匹配(
    /mail/jdodge.nsf
    )。如果组织者电子邮件地址不正确,API将创建约会而不是会议
  • scheduleMethod
    属性是不必要的。您正在创建一个会议;没有通知。API将根据需要自动生成通知
  • 我删除了所有
    x-lotus
    属性。通常,这些是只读的。它们在API的输出中可能很有用,但在输入时会被忽略

我刚刚发布了以下JSON正文,它在我的环境中工作:

{
  "timezones": [    
    {
      "tzid": "Eastern",
      "standard": {
        "start": {
          "date": "1950-11-05",
          "time": "02:00:00"
        },
        "offsetFrom": "-0400",
        "offsetTo": "-0500",
        "recurrenceRule": "FREQ=YEARLY;BYMONTH=11;BYDAY=1SU;BYHOUR=2;BYMINUTE=0"
      },
      "daylight": {
        "start": {
          "date": "1950-03-12",
          "time": "02:00:00"
        },
        "offsetFrom": "-0500",
        "offsetTo": "-0400",
        "recurrenceRule": "FREQ=YEARLY;BYMONTH=3;BYDAY=2SU;BYHOUR=2;BYMINUTE=0"
      }
    }
  ],
  "events": [
    {
      "summary": "1x1 with Charles",
      "location": "My office",
      "description": "Status updates, etc.",
      "start": {
        "date": "2019-09-16",
        "time": "09:00:00",
        "tzid": "Eastern"
      },
      "end": {
        "date": "2019-09-16",
        "time": "10:00:00",
        "tzid": "Eastern"
      },
      "class": "public",
      "transparency": "opaque",
      "sequence": 0,
      "attendees": [
        {
          "role": "req-participant",
          "status": "needs-action",
          "rsvp": true,
          "email": "clowe@peaks.com"
        }
      ],
      "organizer": {
        "email": "jdodge@peaks.com"
      }
    }
  ]
}
我所说的“工作”是指它在主席日历上创建了一个会议(jdodge@peaks.com)并自动向与会者发送邀请(clowe@peaks.com)

一些要点:

  • 我将JSON发布到主席的事件资源中——在我的例子中是
    /mail/jdodge.nsf/api/calendar/events
    组织者
    对象中的电子邮件地址必须与邮件文件的所有者匹配(
    /mail/jdodge.nsf
    )。如果组织者电子邮件地址不正确,API将创建约会而不是会议
  • scheduleMethod
    属性是不必要的。您正在创建一个会议;没有通知。API将根据需要自动生成通知
  • 我删除了所有
    x-lotus
    属性。通常,这些是只读的。它们在API的输出中可能很有用,但在输入时会被忽略

谢谢@Dave,我使用了与解释相同的请求正文替换与会者电子邮件:
Test1Test1@test
和组织者电子邮件:
TesterTester@test
带有POST
https://{host}/mail/ttester.nsf/api/calendar/events
,当我对
mail/ttest1.nsf/api/calendar/events
investments
执行
GET
时,我得到的是空响应,我通过对Test1用户的https://{host}/api/calendar执行
GET
得到的电子邮件是
“email”:Test1Test1@test“
对于测试仪,是
“电子邮件”:”TesterTester@test“
,我哪里做错了?我如何知道它是否通过API创建了约会或会议?默认情况下,对
GET/{db}/API/calendar/events
的响应是从现在开始到一年后的事件列表。我注意到你原来的帖子在过去创造了一个事件(2013-09-16)。所以这不会被列出。您是否尝试过创建未来活动?或者,您可以阅读过去的事件(例如,
GET/{db}/api/calendar/events?since=2013-09-01T00:00:00Z
)。谢谢@Dave,我使用了与所述相同的请求正文替换与会者电子邮件:
Test1Test1@test
和组织者电子邮件:
TesterTester@test
与POST
https://{host}/mail/ttester.nsf/api/calendar/events
,当我在
mail/ttest1.nsf/api/calendar/events
邀请上执行
GET
时,我得到的响应是空的,我通过在https://{host}/api/日历上为Test1用户执行
GET
得到的电子邮件是
“电子邮件”:Test1Test1@test"
对于测试仪,是
“电子邮件”:TesterTester@test“
,我哪里做错了?我如何知道它是否通过API创建了约会或会议?默认情况下,对
GET/{db}/API/calendar/events
的响应是从现在开始到一年后的事件列表。我注意到你原来的帖子在过去创造了一个事件(2013-09-16)。所以这不会被列出。您是否尝试过创建未来活动?或者,您可以读取过去的事件(例如,
GET/{db}/api/calendar/events?since=2013-09-01T00:00:00Z
)。