Skip to main content

Framework (or bot) that allows you to advertise on discord

Project description

DISCORD ADVERTISEMENT FRAMEWORK (BOT) - DAF

PyPI CodeFactor Grade

The Discord advertisement framework is a tool that allows easy advertising on Discord.

FULL documentation

For documentation see WEBSITE

Key features

  • Periodic advertisement to Direct (Private) Messages, Text channels and Voice channels
  • Advertising with either static data or dynamic data (function call)
  • Logging of send attempts with JSON file logs or to a SQL server (Microsoft SQL Server only).
  • Ability to add additional application layers with help of asyncio
  • Easy to setup

Installation

To install the framework use one of the following:

# Windows
python -m pip install discord-advert-framework
# Windows
py -3 -m pip install discord-advert-framework
# Linux
python3 -m pip install discord-advert-framework

Example

"""
~ Example file ~
This file shows how you can make a script that automatically generates the server
list based on the `allowed_strings` list (contains strings that must appear in the channel name we want to shill into).

We pass the framework a user_callback function named `find_advertisement_channels` which autofills the servers list with GUILD objects.
"""
import daf


# Create a list in which we will automatically add guilds
allowed_strings = {"shill", "advert", "promo"}
data_to_shill = (     # Example data set
                "Hello World", 
                daf.EMBED(title="Example Embed",
                         color=daf.EMBED.Color.blue(),
                         description="This is a test embed")
                )


servers = []

async def find_advertisement_channels():
    # Returns the client to send commands to discord, for more info about client see https://docs.pycord.dev/en/master/api.html?highlight=discord%20client#discord.Client
    client = daf.get_client()  
    
    for guild in client.guilds:  # Iterate thru all the guilds where the bot is in
        channels = []
        for channel in guild.text_channels: # Iterate thru all the text channels in the guild
            if any([x in channel.name for x in allowed_strings]): # Check if any of the strings in allowed_strings are in the channel name
                channels.append(channel.id) # If so, add the channel id to the list
        
        # Add the guild to the internal shilling list
        await daf.core.add_object(   
            daf.GUILD(
                guild.id,                               # Guild id
                [                                       # List of messages
                    daf.TextMESSAGE(None,                    # Start period
                                   5,                       # End period
                                   data_to_shill,           # Data that will be sent
                                   channels,                # List of channels to send the message to            
                                   "send",                  # Sending moode (send, edit, clear-send)
                                   True                     # Should the message be sent immediately after adding it to the list
                    )                                   
                ],
                True                                    # Should the framework generate a log of sent messages for this guild
            )
        )


daf.run(
    token="OSDSJ44JNnnJNJ2NJDBWQUGHSHFAJSHDUQHFDBADVAHJVERAHGDVAHJSVDE",   # Example token
    server_list=servers,
    user_callback=find_advertisement_channels
)

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

Discord-Advert-Framework-2.1rc1.tar.gz (863.8 kB view details)

Uploaded Source

Built Distribution

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

Discord_Advert_Framework-2.1rc1-py3-none-any.whl (977.8 kB view details)

Uploaded Python 3

File details

Details for the file Discord-Advert-Framework-2.1rc1.tar.gz.

File metadata

File hashes

Hashes for Discord-Advert-Framework-2.1rc1.tar.gz
Algorithm Hash digest
SHA256 735fcdcd163f18492c6ac63b190eb83544954e98b4a7a01ed6006d8515083055
MD5 bc3d766ccf25c7605458707a4c3ac213
BLAKE2b-256 69c57ca327ad0a42232d03eb70914642e8610fdef4d308f0648bffe0daccb954

See more details on using hashes here.

File details

Details for the file Discord_Advert_Framework-2.1rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for Discord_Advert_Framework-2.1rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 e3fc5a3701ca71524a14e6ae6cd0f4060aba3b1ef3f8fd68e5d73dcbeca8de13
MD5 64ef203b8a28d518ce564463dc9a7d24
BLAKE2b-256 4a00f82318a4c76b7644740bdf35c0e38fb0da1da6d99892efd45e92f39bfefc

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