当前位置: 首页 > 知识库问答 >
问题:

使用iCal4j库(Java-Spring)发送日历事件(邀请)

吕钧
2023-03-14

这个问题与iCal4j库与Java(Spring)应用程序的集成有关。

用例--在我的应用程序中,当用户从UI创建一个事件时,受邀者应该收到一个日历邀请,他们可以通过简单地单击该事件将其添加到他们的个人日历(Google calendar,Outlook calendar,甚至是Thundarbird calendar)中。此外,活动组织者应收到同一活动的日历邀请。

关注-当与会者通过电子邮件以正确的格式(谷歌日历、Outlook和Thundarbird)收到创建活动的日历邀请时,组织者收到了一封带有附件的空电子邮件(invite.ics)。请注意,此问题只在Gmail邮件和Outlook邮件客户端中出现。在Thunderbird中,甚至组织者也会收到一个完整的活动请求。(请参考附加的代码片段和图像以进一步澄清)。

StringBuffer buffer = sb.append( "BEGIN:VCALENDAR\n" +
     "PRODID:-//PROD_NAME//PROD_ORG//EN\n" +
     "VERSION:2.0\n" +
     "X-WR-RELCALID:"+calendarEmail.getxWrRelcalid()+"\n" +
     "METHOD:REQUEST\n" +
     "BEGIN:VEVENT\n" +
     calendarEmail.getAttendeeString() +
     calendarEmail.getOrganizerString() +
     "DTSTART:" + calendarEmail.getDtStart() + "\n" +
     calendarEmail.getRruleString() +
     "DTEND:" + calendarEmail.getDtEnd() + "\n" +
     "LOCATION:" + calendarEmail.getLocation() + "\n" +
     "TRANSP:OPAQUE\n" +
     "SEQUENCE:"+calendarEmail.getSequence()+"\n" +
     "UID:" + calendarEmail.getUid() + "\n" +
     "DTSTAMP:" + calendarEmail.getDtStamp() + "\n" +
     "STATUS:"+calendarEmail.getEventStatusString()+"\n" +
     "CATEGORIES:" + calendarEmail.getCategory() + "\n" +
     "DESCRIPTION:" + calendarEmail.getDescription() + "\n" +
     "SUMMARY:" + calendarEmail.getSummary() + "\n" +
     "PRIORITY:5\n" +
     "CLASS:" + calendarEmail.getPublicity() + "\n" +
     "BEGIN:VALARM\n" +
     "TRIGGER:" + calendarEmail.getAlarmTrigger() + "\n" +
     "ACTION:" + calendarEmail.getAlarmAction() + "\n" +
     "DESCRIPTION:Reminder\n" +
     "END:VALARM\n" +
     "END:VEVENT\n" +
     "END:VCALENDAR" );

共有1个答案

邵旺
2023-03-14

我认为这更多的是iCalendar规范如何工作的问题。具体来说,您可能想看看:

https://www.rfc-editor.org/RFC/RFC5546#Section-3.2.2

在您的情况下,您的程序是代表组织者的,所以我不确定您是否可以向组织者用户发送“请求”。

 类似资料:
  • 我试图使用Spring Boot/Spring数据,遵循DDD体系结构准则来实现一个应用程序。我有一个聚合根,它使用方法AbstractAggregateRoot::RegisterEvent()发布域事件。此外,为了日志/跟踪的目的,我需要截获这些事件,所以我决定做一个实验: 首先,实现自定义ApplicationEvent发布服务器 然后注册为bean 一旦我用注入的ApplicationEv

  • 我一直在使用curl和Outlook REST API v1.0(具有基本身份验证)在Outlook日历中创建日历事件。基本身份验证即将被弃用,因此我现在正在尝试迁移到带有OAuth 2的Microsoft Graph v1.0。我已经走了一段路,但在运行 POST 以创建事件时卡在“错误访问被拒绝”上。这是我到目前为止所做的: > < li> 在此注册我的应用程序(curl):https://a

  • 事件可以由Hyperledger Composer发出并由外部应用程序订阅。事件在业务网络定义的模型文件中定义,并由交易处理器函数文件中的交易JavaScript发出。 在你开始之前 在开始将事件添加到您的业务网络之前,您应该对业务网络的建模语言以及构成完整的业务网络定义的内容有深入的了解。 过程 1.事件在业务网络定义的模型文件(.cto)中定义,与资产和参与者相同。事件使用以下格式: e

  • 我是Google日历API和PHP的新手,我似乎不知道如何实现我想做的事情。基本上,我想从calendarID为的google日历中检索事件webapps098@gmail.com.我当前的代码是这样的 我收到错误: 异常Google_ServiceException消息错误调用GEThttps://www.googleapis.com/calendar/v3/calendars/webapps0

  • 我从快速入门开始(https://developers.google.com/google-apps/calendar/quickstart/python)而且效果很好。然后我尝试用这个指南插入事件(https://developers.google.com/google-apps/calendar/create-events)。我将此代码添加到quickstart的代码中,但出现错误。如何查看我

  • 我试图从域发送邮件,但得到一些错误。