Skip to content

lunethe/TawkAutomaticTaker

Repository files navigation

TawkAutomaticTaker

An automated chat acceptance tool for Tawk.to live chat platform. This bot uses browser automation powered by Puppeteer to automatically detect and accept incoming chat requests, ensuring faster response times and improved customer service efficiency.

Node.js Puppeteer License: MIT

📖 Overview

TawkAutomaticTaker eliminates the need for manual chat acceptance by automatically monitoring your Tawk.to dashboard and instantly joining incoming chat requests. Perfect for businesses that want to ensure no customer is kept waiting.

Key Features

  • Automatic Chat Detection - Monitors dashboard for new incoming chats in real-time
  • Instant Acceptance - Joins chats automatically with configurable delay
  • 🔐 Secure Authentication - Safely logs into your Tawk.to account
  • 🎯 Headless Operation - Runs in the background without UI interference
  • 📊 Desktop Notifications - Get notified when chats are accepted (via node-notifier)
  • 🔄 Continuous Monitoring - Runs 24/7 without interruption

🚀 Getting Started

Prerequisites

  • Node.js (v14.0.0 or higher)
  • A Tawk.to account with active chat widget
  • npm or yarn package manager

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/TawkAutomaticTaker.git
    cd TawkAutomaticTaker
  2. Install dependencies

    npm install
  3. Configure your credentials

    Create a config.json file in the root directory based on example.config.json:

    {
        "email": "your-tawk-email@example.com",
        "password": "your-tawk-password",
        "takeDelay": 1000
    }

    Configuration Options:

    • email - Your Tawk.to account email
    • password - Your Tawk.to account password
    • takeDelay - Delay in milliseconds before accepting chat (default: 1000ms)
  4. Run the bot

    node index.js

⚙️ Configuration

Delay Settings

The takeDelay parameter controls how long the bot waits after detecting a chat before accepting it. Adjust this based on your needs:

  • Instant acceptance: 500-1000ms
  • Natural delay: 1000-2000ms
  • Conservative: 2000-3000ms

Headless vs Headed Mode

By default, the bot runs in headless mode (no visible browser window). To run in headed mode for debugging:

// In index.js, change:
headless: true,
// To:
headless: false,

📋 How It Works

  1. Authentication - Logs into your Tawk.to dashboard using provided credentials
  2. Monitoring - Continuously watches for the "new chat" button in the dashboard
  3. Detection - Identifies incoming chat requests via XPath selectors
  4. Acceptance - Automatically clicks the join button after the configured delay
  5. Logging - Outputs status messages with colored console logs

🤝 Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

⚠️ Disclaimer

This tool is provided for educational and automation purposes. By using this bot:

  • You agree to comply with Tawk.to's Terms of Service
  • You acknowledge that automated interactions may violate platform policies
  • You accept full responsibility for any consequences of using this tool
  • The authors are not liable for any account suspensions or violations

Use at your own risk. Always review the terms of service of any platform before automating interactions.

🙋‍♂️ Support

If you encounter issues or have questions:

  • Open an Issue
  • Check existing issues for solutions
  • Provide detailed error logs and configuration (without credentials)

Made with ❤️ for better customer service automation

Star ⭐ this repository if you find it useful!

About

An automated chat acceptance tool for Tawk.to live chat platform utilizing Puppeteer.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published