Skip to main content

Talkatoo bot API

Project description

Talkatoo

Talkatoo is a beginner-friendly messaging app built with Python, Flask, SQLite, and Flask-SocketIO. It runs as a normal web app and can also be packaged as a Windows EXE with PyInstaller.

Features

  • Account signup and login
  • Multiple users/profiles under one account
  • Display name, unique username, profile picture, and status
  • Friend search by username
  • Friend requests with accept and decline
  • Private chats between friends
  • Group chats with group name, icon, members, and owner/member roles
  • Live messages with Socket.IO
  • Developer accounts with bot tokens
  • Python bot API for sending live chat messages
  • Typing bubbles
  • Simulated call panel with Calling, In call, mute, speaker, and hang up
  • Chat stays usable while the call panel is open
  • Settings page
  • Admin/debug page for viewing users, chats, friend requests, and recent messages
  • Local SQLite database
  • Uploads folder for profile pictures and group icons

Demo Users

The first time the app starts, it creates demo data.

Email Password Profiles
demo@talkatoo.local password maya, scout
friends@talkatoo.local password theo, ari

Windows Setup in VS Code

  1. Open this folder in VS Code.
  2. Open the VS Code terminal.
  3. Create a virtual environment:
python -m venv .venv
  1. Activate it:
.\.venv\Scripts\Activate.ps1
  1. Install dependencies:
python -m pip install -r requirements.txt

Run the Web App

python app.py

Then open:

http://127.0.0.1:5000

If Windows says port 5000 is already in use, run Talkatoo on another port:

$env:PORT="5055"
python app.py

Then open:

http://127.0.0.1:5055

The app stores data in database.db. Uploaded images are stored in uploads/.

Bot Python API

Talkatoo includes developer bot tokens. Bot messages are saved to SQLite and broadcast live to open chats through Socket.IO, so people do not need to refresh.

Create a token:

  1. Log in.
  2. Open Settings.
  3. Check Developer account, then save.
  4. Use the Bot tokens box to create a token.

Use the token from Python:

from talkatoo_bot import TalkatooBot

bot = TalkatooBot("paste-your-token-here", "http://127.0.0.1:5000")
print(bot.me())
print(bot.chats())
bot.send_message(1, "Hello from my bot!")

You can also run the starter file:

python examples\bot_example.py

Bot HTTP endpoints:

GET  /api/bot/me
GET  /api/bot/chats
POST /api/bot/chats/<chat_id>/messages

Use this header:

Authorization: Bearer your-token-here

Build the Windows EXE

Make sure your virtual environment is activated, then run:

python build_exe.py

When the build finishes, the EXE will be here:

dist\Talkatoo.exe

Run that file to start the desktop version. It opens the same local Talkatoo app at http://127.0.0.1:5000.

Notes for Real Calling Later

The current call UI is simulated on purpose. The Socket.IO call_event handler in app.py is the place where future WebRTC signaling can be added. A real version would exchange offers, answers, and ICE candidates between chat members.

Project Structure

app.py
requirements.txt
build_exe.py
README.md
database.db
templates/
static/
uploads/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

talkatoo_bot-0.1.0.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

talkatoo_bot-0.1.0-py3-none-any.whl (3.6 kB view details)

Uploaded Python 3

File details

Details for the file talkatoo_bot-0.1.0.tar.gz.

File metadata

  • Download URL: talkatoo_bot-0.1.0.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for talkatoo_bot-0.1.0.tar.gz
Algorithm Hash digest
SHA256 49cdc473596bbad2a556bbb60ffc702d886fc844a9af9a795f0b6ca24fb815a9
MD5 1ebe84f1185f2a7be75ec83cb1a67232
BLAKE2b-256 45b3af04b6228dee175803f1cfea640ef4cc8e1301db90ba852c8c189fdb6888

See more details on using hashes here.

File details

Details for the file talkatoo_bot-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: talkatoo_bot-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for talkatoo_bot-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5f4743313bb15cc80715656bb5d5dc726454926602d245f46957490980b4ba45
MD5 383873074ec10287d2ccca19cc74bc1f
BLAKE2b-256 4d1856259736bea8b6f19ecfcff38b05d6d7d511e48bf50d2a580cfcc05b6f3e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page