IRCat/modules/cfd1.py
swee 092e328db0
All checks were successful
/ check (push) Successful in 15s
Update modules/cfd1.py
2025-01-25 18:02:25 -08:00

15 lines
No EOL
1.2 KiB
Python

import requests, os
__ircat_type__ = "sql.provider" # The type of module
__ircat_requires__ = ["cf_accountid", "cf_apitoken", "cf_d1database"] # The required config.yml entries.
class broker:
def __init__(self, cf_accountid:str, cf_apitoken:str, cf_d1database:str):
self.account_id = cf_accountid
self.api_token = cf_apitoken
self.base_url = f"https://api.cloudflare.com/client/v4/accounts/{self.account_id}/d1/database"
self.headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {self.api_token}"
}
requests.post(self.base_url, headers=self.headers, json={"sql": "CREATE table IF NOT EXISTS bans (ip varchar(255), reason varchar(255)); CREATE table IF NOT EXISTS nickserv (user varchar(255), modes varchar(255), hash varchar(255), email varchar(255)); CREATE table IF NOT EXISTS groups (name varchar(255), owner varchar(255)); CREATE table IF NOT EXISTS chanserv (name varchar(255), modes varchar(255), params varchar(255), owner varchar(255), usermodes varchar(255), optimodes varchar(255))"})
def cf_insert(self, command:str, params:list):
rq = requests.post(self.base_url, headers=self.headers, json={"sql": command, "params": params})