Made by :
Ben Hnia Intidhar
Abdelkefi Farah
Ben Hajla Nour
This application offers an innovative conversational experience, driven by a dynamic fusion of cutting-edge technologies. It employs the MVVM (Model-View-ViewModel) architecture to guarantee an organized structure, effectively managing data and user interactions. Featuring UI design, RecyclerView, Room database integration, and Retrofit for API communication, it goes beyond with advanced functionalities such as text copying and sharing. Additionally, it seamlessly integrates the OpenAI API to enhance the conversational intelligence.
Chat with ChatGPT in real-time.
Create and manage new chats.
Copy text from the chat interface.
Text-to-voice and voice-to-text functionalities.
API : OpenAI API https://platform.openai.com/docs/introduction
In this initial phase, we meticulously crafted the Welcome Screen for the App. Utilizing Android Studio's layout editor, we engineered a welcoming interface designed to be user-friendly and visually appealing. As a foundational step, we established crucial dependencies, including Retrofit for seamless API integration and Room for efficient local storage. Furthermore, we diligently implemented the MVVM architecture, providing a robust structural framework for the application.
In this phase, our attention shifts towards crafting the Chat Screen. Our meticulous approach involves building a user interface with a RecyclerView, implementing DiffUtil for efficient UI updates, and seamlessly integrating the MVVM architecture to manage data effectively. As we progress through this part, the Chat Screen evolves into a sophisticated space ready to elegantly display messages, ensuring a seamless and visually engaging user experience.
In this pivotal stage, We have diligently implemented internet connectivity checks to ensure a seamless user experience. Leveraging the Clipboard Manager, users can effortlessly copy messages,while Share Intents facilitate quick sharing of messages across different applications. Furthermore, we've empowered users with the ability to select and manipulate text within the chat, adding an extra layer of interactivity. The inclusion of intuitive popup menus enhances overall user interactions, contributing to a sophisticated and dynamic app experience.
In this pivotal stage, we seamlessly integrated the OpenAI API into our application using Retrofit, unlocking the potential for engaging chat interactions powered by GPT-3. Our implementation involved making precise API requests, adeptly handling responses, and prioritizing secure API key management to safeguard user interactions. This strategic integration opens up a world of possibilities for dynamic and intelligent conversations within the app, enriching the user experience with the advanced capabilities of GPT-3.
In this crucial phase, we seamlessly incorporated the Room Database into our chat screen. By setting up Room, we established a robust mechanism to store chat history locally, empowering users to access their conversations even in offline scenarios. This integration is pivotal for ensuring a seamless user experience, as it enhances the app's functionality by providing persistent access to chat interactions, regardless of the user's connectivity status.
In this segment, we delve into the exciting process of incorporating robots into the Robot Screen, leveraging both Retrofit and the MVVM architecture.
In this section, we explored the functionality to view, update, and delete robots in your app. We implemented navigation and utilized Retrofit to efficiently manage robots, empowering users with complete control over their robot interactions.
In this part, we will incorporate Text To Speech (TTS) and Voice to Text (VTT) capabilities into the app. Users will have the ability to convert text messages to speech and employ voice input for sending messages, offering a more dynamic and inclusive communication experience.
In this section, we utilized the Kotlin Speech to Voice library to implement Text To Speech (TTS) functionality