Как опубликовать событие в календаре участника

StackOverflow https://stackoverflow.com/questions/1406069

  •  05-07-2019
  •  | 
  •  

Вопрос

Я работаю с Calendar API (Java). Мое конкретное требование - я хочу добавить участника к событию и в то же время указать календарь участников.

Допустим, у меня 2 пользователя. Пользователь-A и Пользователь-B

Пользователь-A создает событие календаря и добавляет пользователя-B в качестве участника Календарь пользователя A - это Cal-A, а календарь пользователя B - это Cal-B.

Теперь, когда пользователь A добавляет пользователя B в качестве участника, событие создается в календаре пользователя B, но создается в его / ее статическом календаре. Есть ли способ, как я могу указать (используя Java API), что приглашение / событие, созданное пользователем B, должно идти в календарь пользователя B в B?

Примечание. В прикладной программе у меня есть доступ к календарю пользователя A и календаря пользователя B.

Заранее спасибо.

Это было полезно?

Решение

Я считаю, что короткий ответ - нет ...

Календарь Google, независимо от API или языка, который вы используете, основан на стандарте iCalendar, который, исходя из моих прочтений, не имеет понятия " Пригласить участника и опубликовать приглашение на мероприятие в этом конкретном календаре. этого участника. " Если я ошибаюсь, самый быстрый способ получить ваш ответ и доказать, что я не прав, - это найти подтверждение такой возможности в документации iCalendar.

Я подумал, что у меня есть обходной путь, который "Привет, если у вас есть доступ к календарю человека B, почему бы просто не создать событие в их календаре и добавить человека A в качестве участника?" Я сделал это, поделившись одним из моих вложенных календарей одной из моих учетных записей Календаря Google с другой. Но, конечно же, вы получите ту же проблему в обратном порядке. Теперь у человека B есть событие в нужном месте, но у человека A это в календаре по умолчанию.

Таким образом, в зависимости от того, какой ваш " основной " аккаунт, вы можете пойти по этому пути, но я предполагаю, что вы найдете его таким же привлекательным, как и то, с чем вы уже имеете дело.

Единственный другой обходной путь, который я нашел (который был не так уж и хорош), - вы можете получить доступ к календарю Person-B и скопировать приглашение в другой календарь (тот, который вам нужен), а затем удалить его из основного календаря. Это сработает (я пробовал), но, очевидно, это не так грациозно, как вы имели в виду. Если вам нужны подробности о том, как копировать / удалять или как получить доступ к определенному календарю не по умолчанию, дайте мне знать, и я выложу несколько примеров.

Другие советы

Это возможно (даже если решение не очень хорошее). Если человек знает идентификатор вашего другого календаря (который является действительным адресом электронной почты), он может отправить приглашение на адрес электронной почты. Идентификатор можно найти в настройках календаря и имеет форму ... @ group.calendar.google.com .

Посмотрите мой другой ответ на аналогичный вопрос, чтобы получить список недостатков этого решения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top