Cal.com-ekin kalendario open sourceen eskuragarritasuna

Se que el título es complicado y poco aclaratorio… Cal.com nos permite montar en nuestra infraestructura una herramienta fabulosa para cuando queremos dar disponibilidad de nuestro calendario. Una web donde nuestros clientes puedan acceder y seleccionar una disponibilidad sin el mareo de correos tipo ¿cuándo te va bien?

Cómo dice su eslogan “Concéntrese en reunirse, no en hacer reuniones“, más claro el agua 🙂 Así que en este documento veremos cómo en un momentito montamos nuestro servidor de Cal.com. Tiene muchas cosas interesantes, se sincroniza con cualquier tipo de calendario para ver disponibilidades y agendar las citas, además permite realizar video conferencias o integrar la herramienta que usemos en la organización, como sea el Jitsi, Discord, Element, Google meet, Zoom, Teams…

Desplegando el contenedor de Cal.com

Comenzamos en una máquina con un linux y Docker instalado, nos descargaremos los contenedores que necesite Cal.com, retocaremos el fichero de configuración y listo!

mkdir calcom
cd calcom
git clone https://github.com/calcom/docker.git
cd docker
cp .env.example .env

Editamos el fichero .env al menos con la siguiente información: (i) si tenemos un FQDN público para usarlo y lo vamos a proteger con un proxy inverso, (ii) el secreto y las claves de autenticación las generamos cómo nos indica y (iii) las notificaciones de correo para recibir las citas:

...
NEXT_PUBLIC_WEBAPP_URL=https://FQDN_PUBLICO
...
# Use 'openssl rand -base64 32' to generate a key
NEXTAUTH_SECRET=xxxxxxxxx
...
# CalDAV kredentzialak enkriptatzeko erabiliko den enkriptatze-gakoa, aukeratu ausazko kate bat, adibidez, 'dd if=/dev/urandom bs=1K count=1 | md5sum'
CALENDSO_ENCRYPTION_KEY=xxxxxxxxxxx
...
EMAIL_FROM=re*******@****eo.eso
EMAIL_SERVER_HOST=mail.correo.eso
EMAIL_SERVER_PORT=465
EMAIL_SERVER_USER=us*****@****eo.eso
EMAIL_SERVER_PASSWORD=CONTRASEÑA
...

Edukiontziak deskargatu eta martxan jartzen ditugu:

docker compose pull
docker compose up -d

Configurando Cal.com

Ez badugu ezer ukitu, docker-compose.yml-en lehenetsi gisa, Cal.com publikoko portuan argitaratuko dugu 3000 Docker-etik, beraz, nabigatzaile bat irekitzen dugu http-ra://DIRECCION_IP_DOCKER:3000 eta gure lehen erabiltzailea sortzen dugu, administratzailea izango dena. Gure datuak sartzen ditugu, “Hurrengo pausoa”,

Lizentzia modua aukeratzen dugu, open source bertsioa erabil dezakegu edo enpresentzako pertsonalizatutako harpidedun plan bat erosi dezakegu, “Next Step”,

Cal.com-ekin integratzen diren aplikazio guztiak erakusten dizkigu, egia esan, zerrenda harrigarria da, “Finish”,

Una vez finalizado el asistente, orain, bai, erabiltzaile gehiago bezala erabili ahal izateko kontu bat sortzea eskatzen digu. Lehenetsitako erabiltzaileen erregistroa baimenduta dago eta errefusatu daiteke erabiltzaile guztiak sortu ondoren.

Prozesua erraza da, Sortu nahi dugun URL-a idazten dugu, para la web de reserva de citas, el nombre y la zona horaria local. “Next Step”,

Como paso 2 nos indica que debemos asociar al menos un calendario para hacer las reservas, ver disponibilidadesEn mi caso usaré un standard, un CalDav de Radicale.

Como veis se integra con un montón de calendarios, tipo Google Calendar, calendarios Exchange, Outlook, Zoho, Apple

Pegamos la URL con la dirección CalDAV y los credenciales si los tuviera, “Guardar”,

En mi caso dispongo de 3 calendarios, unicamente marcamos el que nos interesa. A partir de ahora, quien quiera reservarme una cita, podrá ver la disponibilidad de ese calendario y agendar libremente citas. “Jarraitzea”,

Podremos conectarlo con la solución que nos interese para realizar las video llamadas, en mi caso elegiré Jitsi Video.

Como paso 4 nos pide la disponibilidad, qué días y en qué horario se pueden coger reservas, “Next Step”,

Y finalmente, aquí añadiremos nuestra foto y una breve descripción nuestra. “Finish”.

Una vez acaba el asistente nos llevará a la web de gestión, muy simplona, donde deberemos habilitar 2FA, podremos crear distintos tipos de eventos, reservas, definir disponibilidad, equipos, integración de aplicaciones…

Probando Cal.com

Onena, pues una vez hayamos configurado básicamente nuestro Cal.com, ya podremos compartir la URL de nuestro perfil, quien acceda a él verá las opciones que le damos para citarnos.

Una vez elija el tipo de evento y su duración, ya podrá ver el calendario donde podrá seleccionar las horas que estén disponibles en nuestro calendario.

Y así de fácil, una vez elegido cuando, podremos hacerle un pequeño formulario para obtener información como, nombre y apellidos, correo electrónico, alguna nota, posibilidad de añadir otras personas, opciones para el evento. Así como si es una llamada telefónica al organizador, al asistente o una video llamada, incluso podemos añadir un campo para que nos peguen la URL de su sistema de videoconferencia, si es que lo prefieren, vaya.

Y este sería el resumen de la cita, por supuesto llegará por mail y podrán reprogramar o cancelar la cita en todo momento.

Y por supuesto se añadirá la cita al calendario automáticamente!!

Benetako maravilla, una herramienta muy sencilla a la par de potente, donde nos da esa libertad a la hora de organizar reuniones, evitar pérdidas de tiempo con correos para arriba, para abajo… Espero dut interesgarria iruditu zaizuela.

Betiko moduan, enviaros un abrazo a los que os portáis bien y sé que soy un pesado pero, ¡cuidaros mucho!

Izenburuko mezuak

Egilea

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, ez zalantzarik izan nirekin harremanetan jartzeko, ahal duzun guztietan laguntzen saiatuko naiz, partekatu ahal dudan guztietan ;) . Dokumentuez gozatu!!!