This automation delivers a streamlined solution for sending automatic messages on Faceit, targeting new friends from notifications as well as existing chat threads. It eliminates repetitive messaging tasks and ensures consistent communication across the platform, powered by a reliable browser automation workflow.
Created by Bitbash, built to showcase our approach to Scraping and Automation!
If you are looking for faceit-selenium-auto-messaging-extension you've just found your team — Let’s Chat. 👆👆
The workflow automates sending predefined messages to new friends detected via Faceit's notification system and broadcasting messages to all existing friend chats. Manually checking notifications and messaging each friend individually is slow and prone to oversights. This automation ensures responsiveness, consistency, and efficiency in maintaining communication channels at scale.
- Ensures every new friend receives a timely greeting or onboarding message.
- Keeps existing contacts consistently updated with announcements or team information.
- Reduces manual browser navigation through Faceit's chat UI.
- Enhances productivity during gameplay by offloading repetitive messaging tasks.
- Standardizes communication across multiple friend connections.
| Feature | Description |
|---|---|
| Auto-Detect New Friends | Monitors Faceit notifications to identify newly added friends. |
| Auto Message to New Friends | Sends a predefined message as soon as the friend is detected. |
| Bulk Chat Messaging | Sends a custom broadcast message to all existing friend chat threads. |
| DOM Event Tracking | Observes UI changes to detect new interactions. |
| Rate Limiting | Protects the workflow from excessive API or DOM actions. |
| Resilient Error Handling | Captures failures, retries messages, and avoids duplicates. |
| Custom Message Templates | Allows user-defined greeting and broadcast messages. |
| Session Management | Maintains session cookies for longer uninterrupted runs. |
| Edge Case Handling | Supports slow-loading chats, offline friends, and lazy-loaded conversations. |
| Configurable Intervals | Adjustable delays between message actions to mimic human usage. |
| Logging & Reporting | Tracks actions, delivered messages, retries, and skipped threads. |
| ... | ... |
| Step | Description |
|---|---|
| Input or Trigger | User starts the script or extension with predefined messages configured. |
| Core Logic | The automation scans notifications for newly added friends, opens chats, validates message status, and sends the designated text. |
| Output or Action | Each friend receives the appropriate automated greeting or broadcast message. Logs reflect delivered outcomes. |
| Other Functionalities | Includes retries, timed delays, DOM validation checks, and detailed monitoring output. |
| Safety Controls | Implements rate limiting, randomized delays, session validation, and UI compliance checks. |
| ... | ... |
| Component | Description |
|---|---|
| Language | Python |
| Frameworks | Selenium |
| Tools | Chrome WebDriver |
| Infrastructure | Docker, GitHub Actions |
faceit-selenium-auto-messaging-extension/
├── src/
│ ├── main.py
│ ├── automation/
│ │ ├── notifier_monitor.py
│ │ ├── chat_dispatcher.py
│ │ ├── message_templates.py
│ │ └── utils/
│ │ ├── logger.py
│ │ ├── dom_helpers.py
│ │ └── config_loader.py
├── config/
│ ├── settings.yaml
│ ├── credentials.env
├── logs/
│ └── activity.log
├── output/
│ ├── delivery_report.json
│ └── status_export.csv
├── tests/
│ └── test_automation.py
├── requirements.txt
└── README.md
- Team managers automate sending welcome instructions to new player connections, improving onboarding speed.
- Gaming influencers broadcast updates to all friends to announce events or stream schedules.
- Community builders maintain engagement with consistent automated messages across chat threads.
- Players reduce manual multitasking during gameplay by offloading messaging routines.
How customizable are the messages? Messages are fully configurable through YAML templates, allowing unique greetings or broadcast texts.
Does it require browser interaction? Yes — Selenium controls an actual browser session, ensuring full compatibility with Faceit's interface.
Can it handle slow-loading chats? The system includes wait conditions, retries, and fallback checks to handle lag or DOM delays.
Is logging included? All actions, errors, retries, and completed deliveries are logged for full visibility.
Execution Speed: Processes 20–40 chat threads per minute depending on browser load and page latency.
Success Rate: 92–94% reliable message delivery across full production runs with built-in retries.
Scalability: Supports 100–300+ friend chats per session, with adjustable pacing to remain stable during long operations.
Resource Efficiency: Uses 300–500MB RAM and moderate CPU load per Selenium instance.
Error Handling: Auto-retries failed actions, applies exponential backoff, logs root causes, and resumes from the last successful message.
