Документация для разработчиков
Темная тема

calendar.event.add

Scope: calendar Права на выполнение: для всех

Описание

Добавляет новое событие.

Возвращаемое значение

Возвращает id нового события.

Параметры

Параметр Описание
* type Тип календаря:
  • user;
  • group.
* ownerId Идентификатор владельца календаря.
* from Дата начала выборки.
* to Дата окончания выборки.
from_ts Может быть установлен вместо from.
to_ts Может быть установлен вместо to.
* section Идентификатор раздела.
* name Наименование события.
skip_time [Y|N] Указывает, что значение даты передается без времени. Формат даты по стандарту ISO-8601.
timezone_from Часовой пояс даты и времени начала события. Значение по умолчанию - таймзона текущего пользователя. Указывается в строковом виде, например: Europe/Riga.
timezone_to Часовой пояс даты и времени окончания события. Значение по умолчанию - таймзона текущего пользователя. Указывается в строковом виде, например: Europe/Riga.
description Описание события.
color Цвет фона события. При передачи цвета добавляемого события символ # необходимо передавать в unicode, как %23.
text_color Цвет текста события. При передачи цвета добавляемого события символ # необходимо передавать в unicode, как %23.
accessibility Доступность на время события:
  • busy (занят);
  • absent (отсутствую);
  • quest (под вопросом);
  • free (свободен).
importance Важность события:
  • high (высокая);
  • normal (средняя);
  • low (низкая).
private_event [Y|N] Отметка частного события.
rrule Повторяемость события.
is_meeting [Y|N] Признак встречи с участниками события.
location Место проведения.
remind Напоминание о событии:
  • type - временной тип напоминания (min, hour, day);
  • count - числовое значение временного промежутка.
attendees Список участников события (если is_meeting == "Y").
host Организатор события (если is_meeting == "Y").
meeting Массив параметров, включающий в себя:
  • text - текст приглашения;
  • open - признак открытой встречи;
  • notify - флаг оповещения о подтверждении\отказе участников;
  • reinvite - флаг запроса повторного подтверждения участия (при редактировании события).
* - обязательные параметры

Пример

BX24.callMethod("calendar.event.add",
	{
		type: 'user',
		ownerId: '2',
		name: 'New Event Name',
		description: 'Description for event',
		from: '2013-06-14',
		to: '2013-06-14',
		skipTime: 'Y',
		section: 5,
		color: '#9cbe1c',
		text_color: '#283033',
		accessibility: 'absent',
		importance: 'normal',
		is_meeting: 'Y',
		private_event: 'N',
		remind: [{type: 'min', count: 20}],
		location: 'Kaliningrad',
		attendees: [1, 2, 3],
		host: 2,
		meeting: {
			text: 'inviting text',
			open: true,
			notify: true,
			reinvite: false
		}
	}
);


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
1
Дмитрий Бабенков
Сообщение не промодерировано, возможны ошибки и неточности.
rrule если ежегодно  надо указывать большими буквами в формате
     "RRULE": {
        "FREQ": "YEARLY",
        "INTERVAL": 1,
        "UNTIL": "01.01.2038",
        "~UNTIL": ""
     },
0
Вадим Бричалов
В версии модуля calendar 21.1000.0, чтобы забронировать переговорную комнату для события, в параметре location нужно передать строку вида 'calendar_#ID#'. Где #ID# - это id календаря нужной переговорной комнаты. Как вариант, найти идентификатор можно в таблице b_calendar_location или b_calendar_section.
Код
Map response = await CRest().call(
    'calendar.event.add',
    methodParams: {
      'type': 'user',
      'ownerId': NavMomentConst.botId,
      'from': '08.02.2022 16:00:00',
      'to': '08.02.2022 18:00:00',
      'section': '28', //id календаря пользователя в таблице b_calendar_section
      'name': eventName,
      'description': 'Описание события',
      'accessibility': 'busy',
      'location': 'calendar_26' //id календаря переговорной комнаты
    }
);
В таком запросе создаётся в базе два события, одно для переговорки (type location), другое для пользователя (type user)
0
Сергей Востриков
Потому что нужен массив массивов
Код
'remind' => array(
 array( 
  'type' => 'min', 
  'count' => 40 
 ),
)
3
Максим Стрекалов
Пытаюсь добавить к событию напоминание через php, но ничего не помогает,   абсолютно идентичный код пишу в javascript и напоминание добавляется.   Что за магия?

PHP
Цитата

'remind' => array(
  'type' => 'min',
  'count' => 40
),

JS
Цитата

remind: [
{
   type: 'min',
   count: 20
}
  ],
Что делать? Событие создаётся в обоих случаях, только напоминание добавляется, если создаю из js. Параметры передаю везде одни и те же, работает приложение от одного пользователя.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024