help@rskworld.in +91 93305 39277
RSK World
  • Home
  • Development
    • Web Development
    • Mobile Apps
    • Software
    • Games
    • Project
  • Technologies
    • Data Science
    • AI Development
    • Cloud Development
    • Blockchain
    • Cyber Security
    • Dev Tools
    • Testing Tools
  • Blog
  • About
  • Contact

Theme Settings

Color Scheme
Display Options
Font Size
100%
Back to Project
RSK World
slack-bot-assistant
RSK World
slack-bot-assistant
Slack Bot Assistant - Python + Slack API + SQLite + PHP Dashboard + Bot Commands + Automation
slack-bot-assistant
  • .github
  • __pycache__
  • bot
  • .gitignore336 B
  • CHANGELOG.md2.4 KB
  • FEATURES.md5 KB
  • GITHUB_PUSH_SUMMARY.md2.9 KB
  • ISSUES_FIXED.md3.6 KB
  • LICENSE1.3 KB
  • README.md9.8 KB
  • RELEASE_NOTES.md5.7 KB
  • SETUP.md5.1 KB
  • demo.html28.2 KB
  • index.html14.5 KB
  • requirements.txt196 B
  • run.py2.8 KB
SETUP.md
SETUP.md
Raw Download

SETUP.md

# Slack Bot Assistant - Advanced Setup Guide

## 🚀 Quick Start

### Prerequisites
- Python 3.8 or higher
- Slack Workspace with Admin permissions
- Slack App created at [api.slack.com/apps](https://api.slack.com/apps)

### Installation Steps

1. **Clone the repository**
```bash
git clone <repository-url>
cd slack-bot-assistant
```

2. **Create virtual environment (recommended)**
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```

3. **Install dependencies**
```bash
pip install -r requirements.txt
```

4. **Configure environment variables**
```bash
cp .env.example .env
# Edit .env with your Slack credentials
```

5. **Set up Slack App**
- Go to [api.slack.com/apps](https://api.slack.com/apps)
- Create a new app or use existing one
- Enable Socket Mode
- Add the following OAuth scopes:
- `app_mentions:read`
- `channels:history`
- `channels:read`
- `chat:write`
- `commands`
- `users:read`
- Install app to your workspace
- Copy tokens to `.env` file

6. **Initialize database (automatic on first run)**
```bash
python -c "from bot.models import init_db; init_db()"
```

7. **Run the bot**
```bash
python bot/app.py
```

## 📋 Available Commands

### Basic Commands
- `/help` - Show all available commands
- `/bot-settings` - Configure bot personality and language

### Task Management
- `/task-create <title> | <description> | <priority> | <due_date>` - Create a new task
- `/task-list` - List your active tasks

### Productivity
- `/set-reminder <message> | <time>` - Set a reminder
- `/summarize-meeting` - Generate meeting summary from recent messages
- `/standup` - Get standup template

### Team Collaboration
- `/manage-channel` - Get channel analytics and management report
- `/poll <question> | <option1> | <option2> | ...` - Create a poll

### Utilities
- `/weather <location>` - Get weather information (requires API key)

## 🔧 Configuration

### Environment Variables

| Variable | Required | Description |
|----------|----------|-------------|
| `SLACK_BOT_TOKEN` | Yes | Bot User OAuth Token from Slack |
| `SLACK_SIGNING_SECRET` | Yes | Signing Secret from Slack |
| `SLACK_APP_TOKEN` | Yes | App-Level Token for Socket Mode |
| `OPENWEATHER_API_KEY` | No | For weather command (get from openweathermap.org) |
| `DATABASE_URL` | No | Database connection string (default: SQLite) |
| `LOG_LEVEL` | No | Logging level (DEBUG, INFO, WARNING, ERROR) |

### Bot Settings

Edit `bot/config.py` to customize:
- Default personality and language
- Feature flags
- Reminder settings
- Meeting summary settings

## 📊 Database Schema

The bot uses SQLite by default (can be configured for PostgreSQL, MySQL, etc.):

- **user_configs** - User preferences and settings
- **reminders** - Scheduled reminders
- **tasks** - Task management
- **meeting_summaries** - Meeting summaries
- **message_sentiments** - Sentiment analysis data
- **command_history** - Command usage analytics
- **polls** - Poll data

## 🛠️ Advanced Features

### Scheduled Reminders
Reminders are checked every 60 seconds (configurable) and sent automatically.

### Sentiment Analysis
Uses VADER sentiment analyzer for advanced sentiment detection. Falls back to keyword-based analysis if VADER is not available.

### Task Management
Full CRUD operations for tasks with priorities, due dates, and status tracking.

### Meeting Summaries
Analyzes recent channel messages to generate intelligent summaries with action items.

## 📝 Development

### Project Structure
```
slack-bot-assistant/
├── bot/
│ ├── app.py # Main bot application
│ ├── config.py # Configuration management
│ ├── models.py # Database models
│ └── utils.py # Utility functions
├── demo.html # Dashboard demo
├── index.html # Landing page
├── requirements.txt # Python dependencies
└── README.md # Project documentation
```

### Adding New Commands

1. Add command handler in `bot/app.py`:
```python
@app.command("/my-command")
def my_command(ack, respond, command):
ack()
# Your command logic
respond("Response message")
```

2. Update `/help` command to include new command

3. Test locally before deploying

## 🐛 Troubleshooting

### Bot not responding
- Check if tokens are correct in `.env`
- Verify Socket Mode is enabled in Slack app settings
- Check bot logs for errors

### Database errors
- Ensure database file permissions are correct
- Check database URL format
- Try deleting `bot_data.db` to reset database

### Command not working
- Verify command is registered in Slack app settings
- Check command permissions/scopes
- Review bot logs for error messages

## 📞 Support

For issues or questions:
- Email: hello@rskworld.in
- Website: https://rskworld.in
- Developer: Molla Samser (RSK World)

## 📄 License

© 2026 RSK World. All rights reserved.

About RSK World

Founded by Molla Samser, with Designer & Tester Rima Khatun, RSK World is your one-stop destination for free programming resources, source code, and development tools.

Founder: Molla Samser
Designer & Tester: Rima Khatun

Development

  • Game Development
  • Web Development
  • Mobile Development
  • AI Development
  • Development Tools

Legal

  • Terms & Conditions
  • Privacy Policy
  • Disclaimer

Contact Info

Nutanhat, Mongolkote
Purba Burdwan, West Bengal
India, 713147

+91 93305 39277

hello@rskworld.in
support@rskworld.in

© 2026 RSK World. All rights reserved.

Content used for educational purposes only. View Disclaimer