Skip to main content

WETG v7 Super Weox โ€” One-File Telegram Bot Engine. Write Telegram bots in a simple scripting language.

Project description

๐Ÿ”ฅ WETG v7 โ€” Super Weox

One-File Telegram Bot Engine โ€” Write Telegram bots in a simple scripting language. No boilerplate. No classes. Just write.

pip install wetg

โšก Quick Start

# Create a bot from template
wetg new mybot.wetg

# Edit it, add your token from @BotFather
nano mybot.wetg

# Run it
wetg run mybot.wetg

That's it.


๐Ÿ“ Language

Hello World bot

bot "YOUR_TOKEN_HERE"

on /start
    send "Hello, {user.name}! ๐Ÿ‘‹"

on /ping
    send "๐Ÿ“ Pong!"

Full feature example

bot "YOUR_TOKEN_HERE"

set welcome=Hello!

# โ”€โ”€ Commands โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

on /start
    send "๐Ÿ‘‹ Hi {user.name}! {welcome}"

on /help
    send "/start\n/ping\n/echo\n/about"

on /ping
    send "๐Ÿ“ Pong!"

on /about
    button = ["Our Website", "https://example.com"]
    send "Powered by WETG v7 Super Weox." with button

on /echo
    ask "What should I echo?"

# โ”€โ”€ User messages โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

on usermsg
    if {usermsg} == "hi"
        send "Hey! ๐Ÿ‘‹"
    elif {usermsg} == "bye"
        send "See ya! ๐Ÿ‘‹"
    else
        send "You said: {usermsg}"

# โ”€โ”€ Functions โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

function welcome_user
    send "Welcome, {user.name}!"
    send "Your ID: {user.id}"

๐Ÿ“– Language Reference

Token

bot "YOUR_TOKEN"

Or use config.txt (recommended โ€” don't commit tokens to git):

TOKEN=YOUR_TOKEN

Sending messages

Syntax Description
send "text" Plain message
send "{user.name}" With variable interpolation
send "**bold**" with markdown Markdown formatting
send "<b>bold</b>" with html HTML formatting
send "photo.jpg" with image Local image file
send "https://..." with image Image from URL
button = ["Label", "url"] then send "text" with button Inline button

Variables

Variable Value
{user.name} User's first name
{user.id} User's Telegram ID
{user.username} User's @username
{bot.name} Bot display name
{bot.username} Bot @username
{usermsg} Last message text from user

Control flow

if {usermsg} == "yes"
    send "You said yes!"
elif {usermsg} == "no"
    send "You said no."
else
    send "You said something else."

Loops

loop 5 times
    send "Looping!"
stop

Ask / input

on /form
    ask "What's your name?"

on usermsg
    send "Nice to meet you, {usermsg}!"

Functions

function greet
    send "Hi {user.name}!"

on /start
    call greet

Variables (set)

set counter=0

on /start
    set counter=1
    send "Counter is {counter}"

Imports

import random

on /roll
    send "๐ŸŽฒ {random.randint(1, 6)}"

๐Ÿ Python API

from wetg_superweox import Wetg
import asyncio

code = """
bot "YOUR_TOKEN"

on /start
    send "Hello from Python API!"
"""

bot = Wetg(code)
bot.parse()
asyncio.run(bot.run())

Or use the helper:

from wetg_superweox import run_file

run_file("mybot.wetg")

๐Ÿ›  CLI

wetg run <file.wetg>     Run a bot
wetg new <file.wetg>     Create bot from template
wetg check <file.wetg>   Validate .wetg file
wetg version             Show version
wetg help                Show help

Shortcuts:

wetg mybot.wetg           # same as: wetg run mybot.wetg
python -m wetg_superweox run mybot.wetg

๐Ÿ”’ Tips

  • Store tokens in config.txt, not in .wetg files
  • Add to .gitignore:
    config.txt
    .env
    

๐Ÿ“œ License

MIT

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

wetg-7.0.0.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

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

wetg-7.0.0-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file wetg-7.0.0.tar.gz.

File metadata

  • Download URL: wetg-7.0.0.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for wetg-7.0.0.tar.gz
Algorithm Hash digest
SHA256 dbda5746eb1220f92b6331034c1ee57b7ed2d3333afdfbcb02f12384affdfe48
MD5 14fdf5f0bde4ab53175ace9fd278c5b4
BLAKE2b-256 bf386881267c8b7a9527814cae856bee3e2743e039ccac21f9db1cd62d8cc1a8

See more details on using hashes here.

File details

Details for the file wetg-7.0.0-py3-none-any.whl.

File metadata

  • Download URL: wetg-7.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for wetg-7.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8f569a410896eb95c689e40a7542e3a9ada68811f0514667c09876b0f4ed4645
MD5 b462b76b63220ed5ddd40b2ac4d57a34
BLAKE2b-256 3d9ceadfbc19576f2ab58fefea63190b3ac0f64a20d07453c944a9f9597f66c6

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