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.4.1a0.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

dgg_bot-1.4.1a0-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

Details for the file dgg-bot-1.4.1a0.tar.gz.

File metadata

  • Download URL: dgg-bot-1.4.1a0.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.5

File hashes

Hashes for dgg-bot-1.4.1a0.tar.gz
Algorithm Hash digest
SHA256 603e6d376a3294aad11cdb5b1cb27f221b0f166d21e4edae7689cc5f7cbcce47
MD5 862f7aceb08d96abc3aaa1d46bf6d7a4
BLAKE2b-256 3930f70da1a457134bf442dfae686539ebcfaa763be3b2190218284fa231ad38

See more details on using hashes here.

File details

Details for the file dgg_bot-1.4.1a0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for dgg_bot-1.4.1a0-py3-none-any.whl
Algorithm Hash digest
SHA256 0a218484a826381d2a195bd094192a8d4b46fa43e77964e975e94f2078b04299
MD5 20f5e57c262cc248f22eeeee05c48225
BLAKE2b-256 677ece101986ff80ddbeade22e053ee16bf50ee904c0f6c3b2c4245d5a867661

See more details on using hashes here.

Supported by

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