IBM Domino - meeting document reschedule (in db) chair receives email but doesn't update

89 Views Asked by At

I'm running a java XPage rest api that operates on the rooms & resource reservation database. It's executed by a single designated user which has full access to the database. What I want to do, is to re-schedule someone's else meeting directly via the database. It works when I view it in the database, the meeting is updated successfully, however in the chair's notes client calendar, the meeting still appears as it was, despite receiving an "Accepted: " e-mail with new meeting date (I think it should be "Rescheduled:" though..)

Here's my code that creates a response document & sends it:

        DateTime dt_startDateUTC = session.createDateTime(dtStart);
        DateTime dt_endDateUTC = session.createDateTime(dtEnd);

        Document docNew = reDatabase.createDocument(); // response doc
        docAppointment.copyAllItems(docNew, true); // copy items from origianl doc
        docNew.replaceItemValue("NoticeType", "U"); // update notice
        docNew.replaceItemValue("CalendarDateTime", dt_startDateUTC);
        docNew.replaceItemValue("SequenceNum", docAppointment.getItemValueInteger("SequenceNum") + 1); // bump SequenceNum

        docNew.replaceItemValue("RmNameUpdated", "");
        docNew.replaceItemValue("ResNameUpdated", "");
        docNew.replaceItemValue("$RnRVersion", "2");
        docNew.replaceItemValue("$CSVersion", "2");
        docNew.replaceItemValue("Form", "Notice");
        docNew.replaceItemValue("$NoPurge", dt_endDateUTC.getLocalTime());
        docNew.replaceItemValue("StartDateTime", dt_startDateUTC);
        docNew.replaceItemValue("StartDate", dt_startDateUTC);
        docNew.replaceItemValue("StartTime", dt_startDateUTC);
        docNew.replaceItemValue("RepeatInstanceDates", dt_startDateUTC);
        docNew.replaceItemValue("EndDateTime", dt_endDateUTC);
        docNew.replaceItemValue("EndDate", dt_endDateUTC);
        docNew.replaceItemValue("EndTime", dt_endDateUTC);

        docNew.removeItem("ReserveDate");
        docNew.removeItem("step");
        docNew.removeItem("$BusyPriority");
        docNew.removeItem("$BusyName");
        docNew.replaceItemValue("wgcIGNORE", "1");
        docNew.replaceItemValue("$CSFlags", "w"); // taken from c&s workflow schema
        docNew.replaceItemValue("Form", "Notice");
        docNew.replaceItemValue("_ViewIcon", "33");
        docNew.makeResponse(docAppointment);

        docNew.send();
        docNew.save();
        docNew.recycle();

In my server log I see:

Router: Message 00325BD6, 0027FEE7 delivered to Room 1/Organization
Router: Message 00325C92 delivered to testuser/Organization

In my user's notes client I can see a new received mail from Room 1 titled "Accepted: Meeting subject" and when I enter it, the dates are correct (rescheduled), but when I click "Open meeting" the meeting still has old dates.

Am I doing something wrong? How can I enforce an update of that meeting? I already tried many different ways but without luck. I cannot modify user's calendar directly because I'd need to assign access to every user's mail database and that wouldn't be secure.

0

There are 0 best solutions below