Gerir eventos do calendário com o Microsoft 365 ou o Google em 4D: Criar, atualizar, eliminar

Tradução automática de Deepl

Trabalhar com eventos de calendário é uma parte essencial de muitas aplicações empresariais. Se está organizando uma reunião de equipe ou gerenciando o ciclo de vida de um evento, ser capaz de criar, atualizar e deletar eventos programaticamente é essencial.

Nesse post do blog, vamos mostrar como realizar essas operações usando as classes Office365.calendar ou Google.calendar fornecidas em 4D 20 R10, alimentadas pelas APIs Microsoft Graph e Google Calendar.

Gerenciamento de Eventos de Calendário HDI

Vamos explorar como é simples criar, atualizar, e deletar uma reunião no Microsoft ou Google Calendar usando 4D NetKit, com o exemplo abaixo.

Conexão de conta

Como de costume, antes de usar Google ou Microsoft APIs, vamos criar um objeto de conexão OAuth 2.0:

Para Google API:

var $oAuth2:=cs.NetKit.OAuth2Provider.new($googleCredentials)
var $google:=cs.NetKit.Google.new($oAuth2)

Para Microsoft API:

var $oAuth2:=cs.NetKit.OAuth2Provider.new($microsoftCredentials)
var $office365:=cs.NetKit.Office365.new($oAuth2)

Criar um evento

A função calendar.createEvent() permite-lhe criar um novo evento num calendário, quer no calendário predefinido do utilizador atual quer num calendário especificado.

para a API do Google:

var $myEvent:={start: {}; end: {}}
// Create a one-hour meeting
$myEvent.start.date:=Current date
$myEvent.start.time:=Current time
$myEvent.end.date:=Current date
$myEvent.end.time:=Current time+3600

$myEvent.summary:="My event"
$myEvent.description:="This is an invitation"
$myEvent.attendees:=[{email: "myAttendeeAddress@mail.com"}]
// Meeting creation
$event:=$google.calendar.createEvent($myEvent)

para a API MICROSOFT:

var $myEvent:={start: {}; end: {}}
// Create a one-hour meeting
$myEvent.start.date:=Current date
$myEvent.start.time:=Current time
$myEvent.end.date:=Current date
$myEvent.end.time:=Current time+3600
$myEvent.isAllDay:=False

$myEvent.attendees:=[{emailAddress: {address: "myAttendeeAddress@mail.com"}; type: "required"}]
$myEvent.subject:="My event"
$myEvent.body:={content: "This is an invitation body"; contentType: "text"}
// Meeting creation
$event:=$office365.calendar.createEvent($myEvent)

Atualizar um evento

A função calendar.updateEvent() permite-lhe modificar um evento existente. Só precisa de fornecer as propriedades que pretende atualizar – as propriedades existentes não incluídas permanecem inalteradas.

para a API do Google:

var $myUpdateEvent:={}
$myUpdateEvent.summary:="My updated subject"
// Meeting update
$event:=$google.calendar.updateEvent($myUpdateEvent)

para a API MICROSOFT:

var $myUpdateEvent:={}
$myUpdateEvent.subject:="My updated subject"

// Meeting update
$event:=$office365.calendar.updateEvent($myUpdateEvent)

Eliminar um evento

A função calendar.deleteEvent() remove um evento de um calendário. Se o evento for uma reunião, os participantes são notificados automaticamente com uma mensagem de cancelamento. Ambos os comandos utilizam os mesmos parâmetros:

para a API do Google:

$status:=$google.calendar.deleteEvent({eventId: $event.event.id})

para a API MICROSOFT:

$status:=$office365.calendar.deleteEvent({eventId: $event.event.id})

Conclusão

Combinando as funções createEvent, updateEvent, e deleteEvent de 4D NetKit, pode gerenciar completamente eventos do Microsoft 365 ou do calendário Google diretamente de suas aplicações 4D. Se está construindo um agendador de reuniões, um sistema de reservas, ou um painel personalizado, essa integração dá aos seus usuários ferramentas poderosas para se manterem organizados e conectados.

Fabrice Mainguené
- Proprietário do produto ->p>Fabrice Mainguené juntou-se à equipa do Programa 4D em Novembro, 2016. Como Proprietário do Produto, está encarregado de escrever as histórias dos utilizadores, traduzindo-as depois para especificações funcionais. O seu papel é também o de assegurar que a implementação da funcionalidade entregue vai ao encontro das necessidades do cliente.Após a obtenção da licenciatura em Informática no CNAM, Fabrice juntou-se a uma pequena empresa editora de software como programador Windev. Depois trabalhou para diferentes empresas nas áreas da indústria e comércio como programador Windev e web developer, bem como como consultor técnico sobre novas funcionalidades.