Skip to main content

A library for connecting to and making a bot in Destiny.gg chat.

Project description

PyPI license info PyPI version info PyPI supported Python versions

A library for connecting to and making a bot in Destiny.gg chat.

Installing

Python 3.9 or higher is required (version 0.5.0 and above, Python 3.8+ for versions below)

# Linux/macOS
python3 -m pip install -U dgg-bot

# Windows
py -3 -m pip install -U dgg-bot

Usage

Not sure what to put here at this point in time. Unauthorized chat bots are subject to being banned, ask Cake in DGG for permission and guidelines for chat bots before running one.

Examples

A simple bot with three commands and will yump back at chatters.

from dggbot import DGGBot
import time

bot = DGGBot(
    "AUTH_TOKEN",
    owner="Owner",
    prefix="$",
)  # default command prefix is "!"

@bot.command()
@bot.is_owner()  # only the owner named in DGGBot can use this command.
def test(msg):  # $test
    msg.reply("Test 123")

@bot.command(aliases=["banmeplease"])  # aliases for this command
def banme(msg):  # $banme / $banmeplease
    bot.send("RightToBearArmsLOL BINGQILIN nathanTiny2")


def is_cake(msg):  # a check where only the user Cake can use commands with this check
    return msg.nick == "Cake"

@bot.command(aliases=["oooo"])
@bot.check(is_cake)
def pog(msg):
    msg.reply("Cake OOOO")

"""
Events
You can either name the function after the event, or include the event name in the decorator.
mention() is also included as a shortcut for event("on_mention").

Event names: on_ban, on_broadcast, on_join, on_mention, on_msg, on_mute, on_privmsg, on_quit,
             on_refresh, on_unban
"""

@bot.event()
def on_msg(msg):
    print(msg)

# @bot.event("on_mention")
@bot.mention()
def yump(msg):
    if "MiyanoHype" in msg.data:
        time.sleep(0.5)
        msg.reply(f"{msg.nick} MiyanoHype")

if __name__ == "__main__":
    bot.run_forever()

Connecting to alternative DGG environments.

from dggbot import DGGBot

bot = DGGBot(
    owner="Owner",
    prefix="$",
    sid="SID",
    rememberme="REMEMBERME",
    config={
        {
            "wss": "wss://chat.omniliberal.dev/ws",
            "wss-origin": "https://www.omniliberal.dev",
            "baseurl": "https://www.omniliberal.dev",
            "endpoints": {"user": "/api/chat/me", "userinfo": "/api/userinfo"},
            "flairs": "https://cdn.omniliberal.dev/flairs/flairs.json",
        }
    },
)

@bot.event()
def on_msg(msg):
    print(msg)

if __name__ == "__main__":
    bot.run_forever()

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

dgg_bot-1.9.0.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

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

dgg_bot-1.9.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file dgg_bot-1.9.0.tar.gz.

File metadata

  • Download URL: dgg_bot-1.9.0.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for dgg_bot-1.9.0.tar.gz
Algorithm Hash digest
SHA256 cc3719997a288ee6157c55315c9c880584821f511acde9eb7bde26ef96e70852
MD5 6ab3fd461787f85dab8b587a449aeb57
BLAKE2b-256 de0680c6a06d11cd7bb382b21f07d36687191dc6492a2cab7ae0890dd37c3515

See more details on using hashes here.

File details

Details for the file dgg_bot-1.9.0-py3-none-any.whl.

File metadata

  • Download URL: dgg_bot-1.9.0-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for dgg_bot-1.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4cf93a043fda4571ac4d31bd84bc152318fb05733ee04e11e39d823d3c8c2108
MD5 2cb83e95b7412ec9eb8044eec06e5097
BLAKE2b-256 a5b6a643c5eb853c506fc6bf9b2755d37906ce8c365b40720afc0396fba05db4

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