This project builds an intelligent email-driven automation agent that reads customer messages, interprets their intent, and retrieves repair status information from an internal web application. It streamlines the back-and-forth involved in service inquiries and ensures consistent, fast replies in French.
At its core, it blends Gmail parsing, natural-language understanding, and browser automation to manage repair-status requests reliably and at scale.
Created by Bitbash, built to showcase our approach to Scraping and Automation!
If you are looking for gmail-python-repair-status-agent-automation you've just found your team — Let’s Chat. 👆👆
Service teams often receive a flood of messages asking for the status of a repair. Manually opening each email, interpreting the request, logging into an internal system, searching the record, and writing a response is slow and repetitive.
This automation removes the entire manual cycle by extracting intent from Gmail, accessing the internal repair dashboard through a simulated browser, and generating ready-to-send French replies with accurate status information.
- Reduces response delays that frustrate customers.
- Removes the need to repeatedly navigate the repair system manually.
- Ensures consistent, polite French messages every time.
- Frees staff to focus on diagnostic or high-touch tasks.
- Scales smoothly during peak periods without additional load on the team.
| Feature | Description |
|---|---|
| Gmail Email Reader | Continuously pulls incoming messages from the central inbox. |
| French Intent Detection | Uses NLP to classify messages and identify repair-status queries. |
| Entity Extraction | Extracts identifiers such as ticket numbers, order numbers, or names. |
| Browser Automation Login | Authenticates into the internal repair web application. |
| Record Lookup | Navigates UI flows to search repair entries and fetch the current status. |
| Status Interpretation | Normalizes system data into customer-friendly terms. |
| French Response Generator | Drafts professional messages explaining the repair’s progress. |
| Error Handling | Retries failed browser sessions and logs parsing issues. |
| Activity Logging | Stores processed emails, timestamps, and extracted results. |
| Configurable Workflow | Lets teams adjust triggers, selectors, phrases, and timing. |
| Multi-Session Support | Handles parallel processing without interfering with user sessions. |
| Step | Description |
|---|---|
| Input or Trigger | The agent polls Gmail and activates when new unread messages arrive. |
| Core Logic | NLP identifies repair-status requests, extracts reference details, and sends them to the browser automation module. |
| Output or Action | Retrieves the repair status from the internal web system and drafts a French reply for review or auto-send. |
| Other Functionalities | Includes automatic retries, login-flow stabilization, DOM-change resilience, and structured logging. |
| Safety Controls | Rate limits UI actions, isolates browser sessions, validates data before reply, and enforces language rules for communication. |
| Component | Description |
|---|---|
| Language | Python |
| Frameworks | Playwright for browser automation, spaCy for NLP |
| Tools | Gmail API, BeautifulSoup for fallback parsing |
| Infrastructure | Docker for containerization, GitHub Actions for CI |
gmail-python-repair-status-agent-automation/
├── src/
│ ├── main.py
│ ├── email_agent/
│ │ ├── gmail_reader.py
│ │ ├── nlp_intent.py
│ │ ├── french_response_builder.py
│ ├── automation/
│ │ ├── web_login.py
│ │ ├── repair_lookup.py
│ │ └── utils/
│ │ ├── logger.py
│ │ ├── dom_helpers.py
│ │ └── config_loader.py
├── config/
│ ├── settings.yaml
│ ├── credentials.env
├── logs/
│ └── activity.log
├── output/
│ ├── processed_messages.json
│ └── repair_status_report.csv
├── tests/
│ └── test_agent.py
├── requirements.txt
└── README.md
- Service coordinators use it to instantly retrieve repair updates, so they can maintain fast and reliable communication with customers.
- Technical support teams rely on it to pre-process inquiries, reducing manual inbox management.
- Operations managers deploy it to scale customer communication while maintaining consistent service quality.
- Front-office staff benefit by receiving ready-to-send French drafts without navigating any internal systems.
Yes — the intent model is trained to recognize a wide range of real-world French expressions requesting repair information.
The automation includes adaptable selectors and fallback routines, making adjustments simpler when UI elements shift.
Yes, it can extract several identifiers and process them sequentially, generating a unified response.
You can configure it either for auto-send or human-approved drafts.
Execution Speed: Typically processes 30–50 emails per minute, including browser automation and status lookup.
Success Rate: Around 92–94% across varied repair identifiers and message formats, with retries reducing transient failures.
Scalability: Supports 100+ concurrent browser sessions when containerized, allowing heavy throughput during peak inquiry periods.
Resource Efficiency: Each worker consumes roughly 200–300 MB RAM and minimal CPU except during DOM-heavy operations.
Error Handling: Implements exponential backoff for retries, structured JSON logs, failure categorization, and automatic session recovery.
