Integração com Calendário
Liga uma vez, gere em todo o lado. Depois de ligares o Google Calendar ou o Microsoft Outlook (Teams), as tuas aulas no Voilà aparecem no teu calendário exatamente como qualquer outra reunião — e tudo o que fizeres ao evento a partir do teu calendário é refletido automaticamente no Voilà. Reagenda, cancela, aceita, recusa — ambos os lados ficam sincronizados em segundos.
Esta página foi escrita para tutores. A secção "O que os teus alunos veem" explica exatamente o que os teus alunos veem do lado deles, para que possas gerir todo o teu horário com confiança a partir do teu calendário.
Fornecedores suportados
| Fornecedor | Ligação de vídeo anexada automaticamente | O que é criado |
|---|---|---|
| Google Calendar | Google Meet | Um evento por aula, evento principal por série recorrente |
| Microsoft Outlook / Teams | Microsoft Teams | Um evento por aula, um evento por ocorrência recorrente |
Podes ligar um fornecedor de calendário de cada vez. Para mudar, desliga o atual primeiro em Definições → Integrações.
Ligar o Google Calendar
- Vai a Definições → Integrações, ou Agendamento → Ligar Google Calendar.
- Clica em Ligar Google Calendar.
- Inicia sessão com a tua conta Google e autoriza o Voilà a ler e escrever eventos.
- O teu calendário começa a sincronizar imediatamente.
O que acontece no momento em que ligas: todas as aulas futuras confirmadas no Voilà são enviadas para o teu Google Calendar — cada uma com uma ligação do Google Meet, participantes já preenchidos e um corpo com "Reservado via Voilà". Não há mais nada a fazer.
Ligar o Microsoft Outlook / Teams
- Vai a Definições → Integrações, ou Agendamento → Ligar Calendário do Outlook.
- Clica em Ligar Calendário do Outlook.
- Inicia sessão com a tua conta Microsoft e autoriza o Voilà a ler e escrever eventos.
- O teu calendário começa a sincronizar imediatamente.
Cada aula aparece no teu calendário do Outlook como uma reunião do Teams (a ligação para entrar é anexada automaticamente), com o aluno listado como participante. O mesmo comportamento de preenchimento retroativo se aplica: as aulas futuras do Voilà aparecem no teu calendário do Outlook de imediato.
O que aparece no teu calendário (Voilà → calendário)
| Evento no Voilà | O que vês no calendário |
|---|---|
| Uma reserva individual é confirmada | Um convite na hora da aula, com a ligação do Meet/Teams, o aluno como participante e um corpo criado pelo Voilà. |
| Uma aula de grupo é confirmada | O mesmo evento, com todos os membros aceites na lista de participantes. À medida que mais membros aceitam, são adicionados; se um membro desistir, é removido. |
| Uma aula recorrente é criada | Google: um evento recorrente principal que abrange toda a série. Outlook: um evento por ocorrência (para que as atualizações por instância fluam corretamente através do Microsoft Graph). |
| Um reagendamento é aceite no Voilà | A hora de início/fim do convite é atualizada no lugar e os participantes recebem uma notificação de atualização. Funciona tanto no Google como no Outlook. |
| Uma aula é cancelada no Voilà | O evento do calendário é removido e os participantes são notificados com um aviso de cancelamento. Funciona tanto no Google como no Outlook. |
| Uma ocorrência recorrente é ignorada no Voilà | Apenas essa ocorrência é cancelada — o resto da série mantém-se intacto. |
O que sincroniza de volta para o Voilà (calendário → Voilà)
Esta é a secção que te permite "viver no teu calendário". Qualquer ação abaixo altera o estado do Voilà automaticamente.
Moves o horário do evento
Arrastar um evento do Voilà para um horário diferente, ou editar a sua hora de início/fim, abre uma proposta de reagendamento dentro do Voilà. Assim que o aluno confirmar (na aplicação ou respondendo ao e-mail), a hora do evento fica definida em ambos os sistemas. Até lá, o evento fica como proposta pendente — o aluno ainda pode vê-la e aceitá-la/recusá-la dentro do Voilà.
Eliminas ou cancelas o evento
O Voilà marca a aula como cancelada e executa o ramo de cancelamento pelo tutor da política de cancelamento:
- O aluno recebe o reembolso total do pagamento (se for via Stripe) ou tem o crédito de sessão devolvido (se for um pacote de sessões), independentemente de o cancelamento ter ocorrido antes ou depois do prazo. Os cancelamentos atribuídos ao tutor compensam sempre o aluno na totalidade.
- Para aulas de grupo, todos os lugares pagos são reembolsados.
- O aluno recebe um e-mail de cancelamento e uma atualização no chat.
Crias um novo evento com um dos teus alunos como participante
Se existir uma relação ativa entre aluno e tutor, o Voilà irá:
- Criar automaticamente uma proposta de reserva para essa aula.
- Enviar um e-mail ao aluno para que possa confirmar o horário.
- Reservar o horário na tua disponibilidade enquanto a proposta estiver pendente.
Se o participante não for um aluno teu conhecido, o Voilà regista o evento como um bloco de ocupação normal na tua disponibilidade — mas não cria uma reserva.
Adicionas qualquer outro evento ao teu calendário
Qualquer evento que adiciones — reuniões de trabalho, consultas no dentista, almoço com um amigo — é tratado como tempo ocupado e bloqueia novas reservas de alunos durante esse período. Não tens de fazer nada; isto é automático.
O que os teus alunos veem
Sempre que uma aula é confirmada, o teu aluno recebe um convite de calendário para o mesmo evento — com a ligação do Meet ou Teams incluída. Assim, também podem gerir a aula a partir do seu próprio calendário. Eis exatamente como o Voilà reage a cada ação que um aluno pode fazer a partir da sua caixa de entrada ou aplicação de calendário:
| Ação do aluno | O que o Voilà faz |
|---|---|
| Aceita o convite | Nada de especial — já está inscrito na aula. O RSVP é registado para visibilidade. |
| Recusa uma proposta pendente a partir do calendário | A proposta é recusada no Voilà. És notificado por e-mail e chat. |
| Recusa uma aula individual confirmada a partir do calendário | O Voilà executa o ramo de cancelamento pelo aluno da política de cancelamento. Antes do prazo = reembolso total ou crédito devolvido; após o prazo = perda do valor (ficas com o pagamento). |
| Recusa a partir de uma aula de grupo confirmada | Apenas o lugar desse aluno é reembolsado; a aula continua para todos os outros (sujeito à tua regra de lugares mínimos). |
| Recusa uma ocorrência recorrente | Essa única ocorrência é ignorada (reembolso ou perda do valor de acordo com a política de cancelamento). O resto da série não é afetado. |
| Reencaminha o convite para outra caixa de entrada | Sem efeito na aula — o Voilà é a fonte de verdade, e reencaminhar o convite não move a aula nem emite reembolsos. |
Em resumo: os alunos podem gerir a sua participação inteiramente a partir do convite do calendário, e verás cada ação refletida no lado do Voilà em segundos.
Aulas de grupo via calendário
As aulas de grupo têm uma particularidade extra — a regra dos lugares mínimos:
- Um membro recusa → esse lugar é reembolsado, o participante é removido do evento do calendário, a aula continua.
- A recusa faz a aula descer abaixo de
min_seatsANTES do prazo de cancelamento → a aula é cancelada na totalidade, todos os lugares pagos são reembolsados, o evento do calendário é removido. - A recusa faz a aula descer abaixo de
min_seatsAPÓS o prazo de cancelamento → a aula mantém-se (quem reservou o lugar já pagou pelo horário) e recebes um e-mail de aviso para decidires como lidar com a situação.
Aulas recorrentes via calendário
As aulas recorrentes são armazenadas de forma diferente em cada fornecedor, mas a experiência é a mesma:
- Google: a série é um único evento recorrente principal. Recusar uma instância a partir do calendário ignora apenas essa ocorrência no Voilà; recusar o evento principal cancela todas as ocorrências futuras.
- Outlook: cada ocorrência está ligada individualmente, para que as atualizações por instância do Microsoft Graph fluam corretamente. Recusar uma ocorrência ignora-a no Voilà; recusar a série termina as ocorrências futuras.
- Ignorar uma ocorrência dentro do Voilà cancela automaticamente a instância correspondente no calendário com um aviso de cancelamento limpo para os participantes.
- Uma alteração à política de cancelamento do tutor não é aplicada retroativamente às ocorrências que já existem — cada ocorrência fica com a política que estava ativa quando foi criada.
Como a sincronização é entregue
O Voilà utiliza notificações push (webhooks) como acionador principal:
- Google Calendar — o Voilà subscreve o teu calendário através do canal
events.watchdo Google; as atualizações chegam em segundos após guardares no Google Calendar. - Microsoft Outlook / Teams — o Voilà subscreve através dos webhooks do Microsoft Graph; mesmo comportamento.
Um pequeno conjunto de mecanismos de segurança mantém o canal saudável:
- Tarefa de manutenção horária renova as subscrições antes de expirarem e inicializa quaisquer monitorizações em falta.
- Preenchimento retroativo ao ligar envia as aulas futuras existentes no Voilà para o teu novo calendário (e importa os períodos de ocupação do teu calendário existente).
- Atualização manual disponível na página de Agendamento — útil se estiveres a testar ou se um webhook falhou brevemente na entrega.
Versões anteriores desta página mencionavam um "ciclo de polling de 5 minutos". Isso já não é correto — a sincronização é baseada em push e normalmente chega em bem menos de 30 segundos.
Política de cancelamento e reembolsos via calendário
Os cancelamentos feitos no calendário seguem exatamente a mesma política de cancelamento que configuraste para reservas pagas via Stripe (ver Pagamentos Stripe Connect):
- Tu cancelas (eliminas/cancelas a partir do teu calendário): o aluno recebe o reembolso total, independentemente do momento.
- O aluno recusa a partir do calendário antes do prazo: reembolso total ou crédito devolvido ao aluno.
- O aluno recusa a partir do calendário após o prazo: o pagamento é perdido (ficas com ele) ou o crédito de sessão é consumido.
- Aulas de grupo: reembolsos por lugar para recusas individuais; reembolso total de todos os lugares pagos se um cancelamento pelo tutor ou uma descida abaixo de
min_seatsantes do prazo cancelar a aula.
Privacidade e âmbito
- O Voilà apenas lê e escreve eventos no calendário que ligares — nunca noutros calendários da tua conta.
- Os eventos que o Voilà lê são utilizados exclusivamente para cálculos de agendamento e disponibilidade.
- Podes revogar o acesso a qualquer momento em Definições → Integrações (ou diretamente nas definições da tua conta Google / Microsoft).
Resolução de problemas
Token expirado
Se a sincronização parar, o token OAuth provavelmente expirou. Abre Definições → Integrações e clica em Voltar a ligar.
Atrasos na sincronização
Os webhooks normalmente são entregues em ~30 segundos. A tarefa de manutenção horária é um mecanismo de segurança que renova as subscrições e volta a sincronizar qualquer entrega que tenha falhado brevemente. Também podes acionar uma atualização manual a partir da página de Agendamento.
Conflitos com eventos que não são do Voilà
Se tentares confirmar uma reserva do Voilà num horário coberto por um evento que não é do Voilà no teu calendário, o Voilà avisará e permitirá que substituas o conflito — útil quando o evento do calendário é uma reserva "provisória" que estás disposto a libertar.
Mudar de fornecedor
Só é possível ter um calendário ligado de cada vez. Desliga o Google antes de ligar o Outlook (ou vice-versa) em Definições → Integrações.
Sincronização bidirecional, de ponta a ponta
sequenceDiagram
participant Student
participant StudentCal as "Student Calendar"
participant Voila
participant TutorCal as "Tutor Calendar (Google or Outlook)"
participant Tutor
Note over Voila,TutorCal: Lesson confirmed in Voilà
Voila->>TutorCal: Create event with Meet or Teams link
TutorCal-->>Student: Invite delivered
TutorCal-->>StudentCal: Invite delivered
Note over Student,StudentCal: Student declines from inbox
StudentCal->>TutorCal: RSVP declined
TutorCal->>Voila: Webhook fires
Voila->>Voila: Run cancellation policy
Voila-->>Tutor: In-app and email notice
Voila-->>Student: Refund or forfeit confirmation
Note over Tutor,TutorCal: Tutor cancels the event
TutorCal->>Voila: Webhook fires
Voila->>Voila: Cancel and refund
Voila->>StudentCal: Calendar event removed
Relacionado
- Agendamento — disponibilidade semanal, políticas de reserva, modo de férias
- Aulas de Grupo — lugares mínimos, gestão de membros, comportamento de cancelamento de grupo
- Pagamentos Stripe Connect — políticas de cancelamento e como os reembolsos são aplicados