This is a task management system that includes a voice calling feature using Twilio. The system allows users to create tasks, manage subtasks, and receive voice calls based on task due dates and user priorities.
-
Task Management:
- Create tasks with titles, descriptions, and due dates.
- Create subtasks for each task.
-
User Management:
- Assign priorities to users.
- Receive voice calls based on task due dates and user priorities.
-
Voice Calling:
- Twilio integration for making voice calls.
- Calls users based on task due dates and user priorities.
- Ensures that the next user is called only if the previous user does not attend the call.
- Node.js
- Express.js
- MongoDB
- Twilio
-
Clone the Repository:
git clone https://github.com/your-username/your-repository.git cd your-repository
-
Install Dependencies:
npm install
-
Configure Twilio:
- Obtain your Twilio Account SID and Auth Token.
- Replace the placeholders in the code with your Twilio credentials.
-
Configure MongoDB:
- Set up a MongoDB database.
- Update the connection string in the code with your MongoDB URI.
-
Run the Application:
npm start
-
Access the Application:
- Open your browser and navigate to
http://localhost:3000
.
- Open your browser and navigate to
# Create Task
POST /api/tasks
# Create Subtask
POST /api/subtasks
# Get User Tasks
GET /api/tasks
# Get User Subtasks
GET /api/tasks/:taskId/subtasks
# Update Task
PUT /api/tasks/:taskId
# Update Subtask
PUT /api/subtasks/:subtaskId
# Delete Task
DELETE /api/tasks/:taskId
# Delete Subtask
DELETE /api/subtasks/:subtaskId
-
Change Task Priority:
- Changes priority based on task due dates.
-
Voice Calling:
- Calls users based on task due dates and user priorities.