/RSAP

A simple wrapper for the Random Stuff API

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Maintenance Maintaner Open Source? Yes!

forthebadge made-with-python

Hunter's GitHub stats

RSAP.... well it is not a proper acronym, but you can think of it as Random Stuff API Python.. It makes use of PGamerX's Random Stuff API to provide you features such as jokes, memes, images and also an AI CHATBOT!!

The installation is also very very very simple.

pip install rsap

This will install rsap with only requests module.. You need to install aioHTTP for AsyncRSAP and discord.py for DisRSAP



The usage is very very very simple.. There are mainly two classes of this module (well there are three but I would consider two because third, you can't say that it is a proper "class" of the module.)



ASYNC USAGE

To use this module asynchronously, RSAP provides you with the AsyncRSAP class of the module... It uses the aioHTTP module to send GET request to the API... A small example for the same is shown below


from rsap import AsyncRSAP
import asyncio

chatbot = AsyncRSAP("api_key_here", "other_kwargs_here")

# For AI Response
response = asyncio.run(chatbot.ai_response("message_here", "unique_id"))
print(response)

# For Jokes
response = asyncio.run(chatbot.jokes("type"))
print(response)

# For Images
response = asyncio.run(chatbot.image("type"))
print(response)

The code above would use the aioHTTP module..



SYNC USAGE

To use this module synchronously, RSAP provides you with the RSAP class of the module... It uses the requests module to send the GET request to the API... A small example for the same is shown below

from rsap import RSAP

chatbot = RSAP("api_key_here", "other_kwargs_here")

# For AI Response
response = chatbot.ai_response("message", "unique_id") 
print(response)

# For Jokes
response = chatbot.joke("type")
print(response)

# For Images
response = chatbot.image("type")
print(response)

The code above would use the requests module..



So last of all that, we have that other so-called "class" known as DisRSAP class.. It is just an extension of the RSAP module, which uses the discord.py's commands.Bot module to send the bot responses in a particular Text Channel. It uses the on_message trigger to check for messages in the chat channel.. The example for the same is shown below

from rsap import DisRSAP
bot = DisRSAP("api_key_here", text_channel_id_here, command_prefix="!", "other_kwargs_here") #Don't specify any intents because "discord.Intents.all()" is already enabled in the source code...

bot.run("bot_token_here")

So the above code would simply run your bot and the bot would reply to every single message sent in that channel!!


So lemme guess, you are now thinking what are even those `kwargs` mentioned above 😁

So here is a list of kwargs that you can add to your code!!!

👉 api_key (str): The API key which you can get from https://api-info.pgamerx.com/register

👉 dev_name (str, optional): The name of the developer who coded the chatbot. Used in responses. Defaults to Hunter.

👉 unique_id (str, optional): The Unique ID to create custom sessions for each user. Defaults to a random uuid.uuid4 string.

👉 bot_name (str, optional): The name of the chatbot. Used in responses. Defaults to PyChat.

👉 type (str, optional): The type of API to use. Stable is recommended but can also be unstable. Defaults to "stable".

👉 language (str, optional): The language to chat with the chatbot in. Defaults to "en".

List of Types of Jokes

😆 any

😆 dev

😆 spooky

😆 pun

List of Types of Images

📷 aww

📷 duck

📷 dog

📷 cat

📷 memes

📷 dankmemes

📷 holup

📷 art

📷 harrypottermemes

📷 facepalm

CONTACT ME

Need some help for some things??Join this discord (is of a friend), and you can always find me here :D (Not giving the name because...... there are no unicode characters in that :D)

Also, if you want to buy the pro packs the API, be sure to check this out!