Open source calendars available with Cal.com

I know the title is complicated and not very clarifying… Cal.com allows us to mount a fabulous tool in our infrastructure for when we want to make our calendar available. A website where our customers can access and select an availability without the dizziness of emails such as when are you doing well?

How its slogan says “Focus on meeting, not in holding meetings“, clearer water 🙂 So in this document we will see how in a moment we set up our Cal.com server. It has a lot of interesting things, Syncs with any type of calendar to view availability and schedule appointments, it also allows video conferences or integration of the tool we use in the organization, whatever the Jitsi is, Discord, Element, Google meet, Zoom, Teams…

Deploying the Cal.com container

We start on a machine with a linux and Docker installed, We will unload the containers you need Cal.com, We will touch up the configuration file and that's it!

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

We edit the .env file with at least the following information: (i) if we have a public FQDN to use it and we are going to protect it with a reverse proxy, (Ii) the secret and the authentication keys are generated as instructed and (Iii) email notifications to receive appointments:

...
NEXT_PUBLIC_WEBAPP_URL=https://FQDN_PUBLICO
...
# Use 'openssl rand -base64 32' to generate a key NEXTAUTH_SECRET=xxxxxxxxxxxx
...
# Encryption key that will be used to encrypt CalDAV credentials, choose a random string, for example with 'dd if=/dev/urandom bs=1K count=1 | md5sum' CALENDSO_ENCRYPTION_KEY=xxxxxxxxxxxxxx
...
EMAIL_FROM=D*******@co****.eso
EMAIL_SERVER_HOST=mail.mail.eso EMAIL_SERVER_PORT=465 EMAIL_SERVER_USER=us*****@co****.eso
EMAIL_SERVER_PASSWORD=PASSWORD
...

We unload and start the containers with:

Docker Compose Pull Docker Compose Up -D

Configuring Cal.com

If we haven't touched anything, by default in the docker-compose.yml we will publish Cal.com by the port 3000 of Docker, So we opened a browser to HTTP://DIRECCION_IP_DOCKER:3000 and we register our first user, who will be the administrator. We enter our data, “Next step”,

We select the licensing mode, We can use the open source version or purchase a custom subscription plan for companies, “Next Step”,

It shows us all the applications that integrate with Cal.com, The truth is that the list is incredible, “Finish”,

After the wizard is finished, Now it does ask us to create an account to use as another user. The registration of users by default is allowed and could be denied once we have all the users registered.

The process is simple, we type the URL we want to generate, for the appointment booking website, the name and local time zone. “Next Step”,

How did it happen 2 It tells us that we must associate at least one calendar to make reservations, Check availability… In my case I'll use a standard, a CalDav from Radicale.

As you can see, it integrates with a lot of calendars, Google Calendar type, Exchange calendars, Outlook, Zoho, Apple…

We paste the URL with the CalDAV address and credentials if you have them, “Save”,

In my case I have 3 Calendars, We only mark the one we are interested in. From now on, Whoever wants to book me an appointment, You will be able to see the availability of that calendar and freely schedule appointments. “Continue”,

We will be able to connect it with the solution we are interested in to make video calls, in my case I will choose Jitsi Video.

How did it happen 4 asks us for availability, What days and at what time can reservations be taken, “Next Step”,

And finally, Here we will add our photo and a brief description of our. “Finish”.

Once the assistant is finished, it will take us to the management website, Very simple, where we should enable 2FA, We can create different types of events, reserves, Define availability, Equipment, Application integration…

Testing Cal.com

Well, Well, once we have basically configured our Cal.com, we will now be able to share the URL of our profile, whoever accesses it will see the options we give them to quote us.

Once you choose the type of event and its duration, You will now be able to see the calendar where you can select the times that are available in our calendar.

And it's that easy, Once chosen when, We may make you a small form to obtain information such as, Name and surname, email, some notes, Ability to add other people, Event Options. As well as if it is a phone call to the organizer, to the attendee or a video call, we can even add a field to paste the URL of your video conferencing system, if you prefer it, go.

And this would be the summary of the quote, Of course it will arrive by email and you can reschedule or cancel the appointment at any time.

And of course the appointment will be added to the calendar automatically!!

A marvel, A very simple yet powerful tool, where it gives us that freedom when it comes to organizing meetings, Avoid wasting time with emails up, Down… I hope you found it interesting.

As usual, I send a hug to those of you who behave well and I know I'm a nuisance but, Take good care of yourselves!

Recommended Posts

Author

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Do not hesitate to contact me, I will try to help you whenever I can, Sharing is living ;) . Enjoy documents!!!