|
1 |
| -# README |
| 1 | +# ReminderIA - RoR |
2 | 2 |
|
3 |
| -This README would normally document whatever steps are necessary to get the |
4 |
| -application up and running. |
| 3 | +## Description |
5 | 4 |
|
6 |
| -Things you may want to cover: |
| 5 | +This project is a ReminderIA, allowing users to manage reminders via WhatsApp using AI (OpenAI) to interpret natural language commands. The application is built with Ruby on Rails and leverages services to maintain modular and clean code. |
7 | 6 |
|
8 |
| -* Ruby version |
| 7 | +## Features |
9 | 8 |
|
10 |
| -* System dependencies |
| 9 | +- **WhatsApp Integration**: Users can send text messages to create, edit, or delete reminders. |
| 10 | +- **AI for Natural Language Processing**: Utilizes OpenAI to interpret user commands and create reminders. |
| 11 | +- **Reminder Management**: Users can manage their reminders, including creating, editing, and deleting. |
| 12 | +- **Context Handling**: The app maintains conversation context to provide more accurate responses. |
11 | 13 |
|
12 |
| -* Configuration |
| 14 | +## Project Structure |
13 | 15 |
|
14 |
| -* Database creation |
| 16 | +- **Models** |
| 17 | + - `User`: Stores user information. |
| 18 | + - `Reminder`: Stores user reminders. |
| 19 | + - `Message`: Logs sent and received messages. |
| 20 | + - `Conversation`: Stores conversation context. |
15 | 21 |
|
16 |
| -* Database initialization |
| 22 | +- **Services** |
| 23 | + - `OpenAIService`: Handles interaction with the OpenAI API. |
| 24 | + - `ReminderService`: Manages the creation of reminders based on OpenAI responses. |
17 | 25 |
|
18 |
| -* How to run the test suite |
| 26 | +- **Controllers** |
| 27 | + - `RemindersController`: Handles CRUD actions for reminders. |
| 28 | + - `MessagesController`: Processes incoming WhatsApp messages and sends responses. |
19 | 29 |
|
20 |
| -* Services (job queues, cache servers, search engines, etc.) |
| 30 | +## Installation |
21 | 31 |
|
22 |
| -* Deployment instructions |
| 32 | +1. Clone this repository: |
23 | 33 |
|
24 |
| -* ... |
25 |
| -# whatsapp-with-OpenAI |
| 34 | + ```bash |
| 35 | + git clone https://github.com/noguerajulioces/whatsapp-with-OpenAI.git |
| 36 | + ``` |
| 37 | + |
| 38 | +2. Install dependencies: |
| 39 | + |
| 40 | + ```bash |
| 41 | + bundle install |
| 42 | + ``` |
| 43 | + |
| 44 | +3. Set up the database: |
| 45 | + |
| 46 | + ```bash |
| 47 | + rails db:create db:migrate |
| 48 | + ``` |
| 49 | + |
| 50 | +4. Configure your OpenAI and Twilio credentials in your `.env` file. |
| 51 | + |
| 52 | +5. Run the server: |
| 53 | + |
| 54 | + ```bash |
| 55 | + rails s |
| 56 | + ``` |
| 57 | + |
| 58 | +## Usage |
| 59 | + |
| 60 | +1. Set up your WhatsApp account to send messages to the app. |
| 61 | +2. Send messages with natural commands like "Remind me to buy milk tomorrow at 10 AM." |
| 62 | +3. The app will process the command, create a reminder, and respond with a confirmation. |
| 63 | + |
| 64 | +## Contributions |
| 65 | + |
| 66 | +Contributions are welcome. Please follow these steps: |
| 67 | + |
| 68 | +1. Fork the project. |
| 69 | +2. Create a new branch (`git checkout -b feature/new-feature`). |
| 70 | +3. Make your changes and commit (`git commit -m 'Add new feature'`). |
| 71 | +4. Push to the branch (`git push origin feature/new-feature`). |
| 72 | +5. Open a Pull Request. |
| 73 | + |
| 74 | +## License |
| 75 | + |
| 76 | +This project is licensed under the MIT License. |
| 77 | + |
| 78 | +--- |
0 commit comments