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.
