Skip to main content

bafser tg api

Project description

bafser tgapi

usage

  • init project: bafser init_project
  • set webhook: bafser configure_webhook set
  • delete webhook: bafser configure_webhook delete
  • get sticker file_id: bafser stickers

main.py

import sys

import bafser_tgapi as tgapi
from bafser import AppConfig, create_app

from bot.bot import Bot
from scripts.init_db import init_db

app, run = create_app(__name__, AppConfig(DEV_MODE="dev" in sys.argv))
tgapi.setup(botCls=Bot, app=app)

DEVSERVER = "devServer" in sys.argv
if DEVSERVER:
    tgapi.set_webhook()
run(DEVSERVER, init_db)

if not DEVSERVER:
    if __name__ == "__main__":
        tgapi.run_long_polling()
    else:
        tgapi.set_webhook()

init_db.py

from bafser import AppConfig
from sqlalchemy.orm import Session

from data.user import Roles, User


def init_db(db_sess: Session, config: AppConfig):
    u = User.new(db_sess, 12345, False, "Admin", "", "username", "en")
    u.add_role(u, Roles.admin)

    db_sess.commit()

data.user.py

from bafser_tgapi import TgUserBase

from data import Roles


class User(TgUserBase):
    _default_role = Roles.user

data.msg.py

from bafser_tgapi import MsgBase

from data import Tables


class Msg(MsgBase):
    __tablename__ = Tables.Msg

bot.py

import bafser_tgapi as tgapi

from data.user import User


class Bot(tgapi.BotWithDB[User]):
    _userCls = User

call other method

import json

import bafser_tgapi as tgapi

ok, r = tgapi.call("getStickerSet", {
    "name": "AnimatedEmojies",
})
with open("r.json", "w") as f:
    json.dump(r, f)

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

bafser_tgapi-1.7.0.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

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

bafser_tgapi-1.7.0-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file bafser_tgapi-1.7.0.tar.gz.

File metadata

  • Download URL: bafser_tgapi-1.7.0.tar.gz
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bafser_tgapi-1.7.0.tar.gz
Algorithm Hash digest
SHA256 8b174cec73f5c5b0470e3dd9d22f463e010940a3851b8d9fcca847e89eea705e
MD5 27f30dd5cb601b46b8b82c21495aae2b
BLAKE2b-256 6199c8fe4fb296bada586bc3663df24c7420ed84d74615c280d87da11b6019f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for bafser_tgapi-1.7.0.tar.gz:

Publisher: main.yml on MixelTe/bafser_tgapi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bafser_tgapi-1.7.0-py3-none-any.whl.

File metadata

  • Download URL: bafser_tgapi-1.7.0-py3-none-any.whl
  • Upload date:
  • Size: 22.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bafser_tgapi-1.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5c0d19cd4f399578521fb653cf079346337f86358664bcc59a1e52d1a957b7de
MD5 212232ec481898f17ff61d857459d4bf
BLAKE2b-256 bc43b75ed83ca458349cb3ae405f5c1b6ad92441676f0352052905d9c71bedaa

See more details on using hashes here.

Provenance

The following attestation bundles were made for bafser_tgapi-1.7.0-py3-none-any.whl:

Publisher: main.yml on MixelTe/bafser_tgapi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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