Twilio / Node - SMS booking system using Twilio and Node.Js

Build a complete SMS booking system using Twilio and Node.Js that receives and send messages to create a new appointment

4.30 (36 reviews)
Udemy
platform
English
language
Programming Languages
category
instructor
Twilio / Node - SMS booking system using Twilio and Node.Js
540
students
3 hours
content
Apr 2021
last update
$59.99
regular price

What you will learn

How to create a complete SMS booking system using Twilio and Node

How to send SMSes

How to receive SMSes

How to use Twilio to send SMS

How to use NodeJs to manage send and receive SMS

Why take this course?

Twilio the world's leading cloud communications platform as a service (CPaaS) that enables you to develop SMS solutions, WhatsApp, Voice, Video, email, and even IoT. Twilio powers communications for more than 190,000 businesses and enables nearly 932 billion human interactions every year.

This course will leverage some of those capabilities to create a fully functional SMS booking system. Here is how it works, the customer interested in booking an appointment send an SMS to a Twilio number; our Node.JS backend application understand the message and send an SMS back to the customer saying:

Hi, do you want to book an appointment to:

  •     see the gym

  •     book a personal trainer

  •     book a massage

After that, we wait for a user reply, such as:

I want to book a massage

After that, our Node application will send an SMS to the user asking:

What date do you want to see the masseur

The customer will reply with a preferred day, such as:

Monday, please

In this case, we will reply with the valid times available on Monday

Do you want to book it on Monday: 10 am, 11 am, 1 pm or 4 pm

After the customer selects the best time for the booking, they will reply saying:

At 11 am is good for me

After collecting all the data, the NodeJS application will send a confirmation to the customer saying:

Your appointment is booked to see the masseur on Monday at 11 am. See you than


Please note all the data above is fictional and hardcoded to the application. The course focuses on sending and receiving the SMSes, leaving all the logic of checking the actual dates and times and finalizing the booking for you to implement.

Said that new Chapters are coming, and as a student, you can help me decide what comes next. So far few ideas I have on a road map are:

  • Add the logic to read/write on the database been able to validate bookings and available times.

  • Add a relational database to the application as a Docker container and add the current application to a container with easier development and deployment.

  • Add an option to cancel a booking.

  • Add an option to make a payment via SMS using stripe.

  • Move the NodeJS code to a Serverless function and host it in Twilio.

  • Any amazing idea you may have.


Enjoy the course!

Content

Introduction

Before we signup to Twilio
Creating a Twilio Account
Buying a Twilio Number (for free)
Creating the API key and secrete to access Twilio safely
Initialising the Node.js backend with Twilio, Express and dotEnv (.env)
Setting up Twilio and dotEnv (.env)

Sending SMS

Sending our first SMS

Understand the express server backend

Setting up the express server
Nodemon understanding devDependancies vs Global dependancies

LocalTunnel, your localhost open to the world

Installing and understanding LocalTunnel

Understanding Weebhooks

Configuring Twilio Webhooks

Receiving SMS

Receiving our first SMS message

Tracking the SMS conversation

Setting up cookies and the reply message
Verifying a new phone number with Twilio
Keeping track of our messages

Gathering all the booking details

Counting the steps
Booking an appointment type
Getting the day for the booking
Testing the application and fixing small mistakes
Creating a RegEx for to get the time requested
Getting the appoint time
Confirming the appointments

Refactoring, it is the same code, but much nicer

Refactoring part 1
Refactoring part 2
Using guard to make our code easier to understand

Where to go from here

Where to go from here

Appendix 1

Installing VSCode modules
Configuring VSCode Prettier
Emmet and speed up coding
Add extension tools for chrome
Installing Docker Extension
Connecting to MongoDB inside Docker using Compass
Using MongoDB Compass - Update, Delete, Clone, Drop Collections and Databases

Appendix 1.1: Mac Specific Setup, Configurations, Installations and etc

Installing Node, Chrome, VSCode, Yarn
Installing Brew on Mac
Installing Deno and Denon on Mac
Installing Docker
Install Postman
MongoDB Compass

Appendix 1.2: Windows Specific Setup, Configurations, Installations and etc

Installing Visual Code Insiders
Installing Chrome Canary
Installing Node
Installing Postman
Installing Compass
Installing Docker
Installing Hyper-V for Docker (optional)
Installing Linux Kernel Update Package (WSL 2) on windows for Docker (optional)

Screenshots

Twilio / Node - SMS booking system using Twilio and Node.Js - Screenshot_01Twilio / Node - SMS booking system using Twilio and Node.Js - Screenshot_02Twilio / Node - SMS booking system using Twilio and Node.Js - Screenshot_03Twilio / Node - SMS booking system using Twilio and Node.Js - Screenshot_04

Reviews

Justin
July 10, 2022
Some outdated material you have to figure out on your own plus need info on deployment for production or deployment on cloud server instead of only local servers
Niharika
June 18, 2021
Icaro's courses are always unique and content is amazing...this is the best course i found for twilio integration and helpful to work on real time projects....looking forward to learn new concepts....thank u icaro for the wonderful courses
Bill
April 23, 2021
This is the first course I have taken where the instructor deliberately removed his source code. So if you run into a problem, you won’t be able to check it against his. Sorry. To make matters worse, there were several times during the course where only the bare minimum of code was shown on screen, which meant since you don’t have the source code, you have go digging around for a while before you find a quick screenshot of what you’re looking for to check against your own. To make matters worse, I found a student who was asking for help on a problem to which his response was along the lines of I understand that this student was struggling, but if you are going to deliberately remove your source code, this will likely happen. Most of the problems they could’ve fixed on their own by comparing working code against their own to see where they screwed up at. Most times it’s a simple syntax issue, but sometimes seeing the actual code can help you understand more than someone simply just telling you. As he stated in one response “I have hundreds of students who had no problem”. So in his mind, if you run into a problem, it’s probably just you, not him. Never mind the fact that not everyone learns the same. I will continue to work this course until it’s completion because I’m stubborn like that, but I would advise others to wait for a similar course from a different instructor.
Lucas
November 15, 2020
My experience with this course was awesome, original and useful application, to the point but easy to follow the instructor while coding along, maybe not the best sound/video quality but definitely the best content on Udemy
Christian
November 15, 2020
? Finally some new fresh content on Udemy ?! Most courses are copy and past of other courses, Icaro is bring a whole new type of courses, focus on more advanced and new concepts and ideas. This is the first time I see a course on Udemy about how to send SMSes but is also the first time I contemplated the idea of creating a SMS app to make appointments. Nicely done 10 starts for the course and 10 for the idea.

Coupons

DateDiscountStatus
6/1/202192% OFF
expired

Charts

Price

Twilio / Node - SMS booking system using Twilio and Node.Js - Price chart

Rating

Twilio / Node - SMS booking system using Twilio and Node.Js - Ratings chart

Enrollment distribution

Twilio / Node - SMS booking system using Twilio and Node.Js - Distribution chart

Related Topics

3631744
udemy ID
11/12/2020
course created date
11/21/2020
course indexed date
Bot
course submited by