Inspiration

What to do when you have to assign jobs to a bunch of people? This skill is an attempt to solve that problem. It is a good life hack as it simplifies your task by helping you maintain them. Anyone who works in groups either formal or informal can use it.

We all know what happens when lazy people work in a group :-P

It's a skill for all those people who want their team members to remember what tasks were assigned to them so they don't make a fuss :-) :-P

YUP LAZY PEOPLE USUALLY FORGET THINGS

Promo video

What it does

It can help you maintain the tasks assigned to a group very easily like adding a person, assigning tasks to him/her, list these tasks and remove them when the tasks are completed or you can clear the tasks when tasks become invalid or is completed. Not only it can be used in the office environment, it can also be used in a startup environment, in day to day tasks in one's home like maintaining grocery lists, list of all the tasks that needs to be done before guests arrive or just tasks like decorations that need to be done on the day of festivals.

How I built it

Made with pizza and coffee :-P

How is it different from a to-do list?

It has key value pair for each person and task unlike to-do lists which just stores the text and you can't look up the tasks assigned to a person. This helps in group management and makes your life easier.

These are the major intents.


// to add Person
intentHandlers.AddPersonIntent = function (intent, session, response)

// to add task to a person
intentHandlers.AddTaskIntent = function (intent, session, response)

// to list all tasks
intentHandlers.ListTasksIntent = function (intent, session, response)

// to remove tasks
intentHandlers.RemoveTaskIntent = function (intent, session, response)

// to clear tasks
intentHandlers.ClearTasksIntent = function (intent, session, response)

// reset
intentHandlers.ResetIntent = function (intent, session, response)

Code snippet for Dynamo DB


dynamodb.putItem({
                TableName: 'DayManagerUserData',
                Item: {
                    CustomerId: {
                        S: this._session.user.userId
                    },
                    Data: {
                        S: JSON.stringify(this.data)
                    }
}

Usage

  • Alexa, open Day Manager.

  • Add Sam.

  • Add cleaning for Sam.

  • Alexa, open Day Manager and list tasks for Ryan.

  • Alexa, open Day Manager to remove task 2 for Sam.

  • clear tasks for Sam.

Challenges I ran into

Integrating Dynamo DB with my version 1 of my skill so that the user can save multiple tasks and people at the same time.

Accomplishments that I'm proud of

I am proud of integrating my application with Dynamo DB. It helped me to increase the functionality of my skill. Using it, I can save the tasks, people and the assignment of tasks without over writing the last task. The ability of using Dynamo DB can further help me in making better skills in the future like saving the most requested thing to reduce redundancies.

What I learned

I learned how to use Dynamo DB. I am fairly new to Databases and this hackathon helped me to gain more insight and learn about them and how to use them. I went through the documentation, comparison with other database tools and proper procedure on how to use it.

What's next for Day Manager

Add timers for each job, that is, a user can add the amount of time he/she wants to assign to that task for himself/herself or for another person. This will further help in properly organizing the tasks and people.

Built With

Share this project:
×

Updates