import asyncio import logging import time import pyromod import pyrogram import string import random import requests from inspect import getfullargspec from os import path from random import choice import aiohttp import re import os from datetime import datetime as dt from pyrogram import Client from pyrogram.types import * from pyrogram import filters from pyrogram.errors import * from pyrogram.raw.all import layer from pyromod import listen from pyrogram.handlers import MessageHandler from config import API_HASH, API_ID, BOT_TOKEN from utils.database import db from utils.logger import LOGS from platform import python_version from pyrogram import __version__ as pyrogram_version StartTime = time.time() START_TIME = dt.now() def send_log(text_log: str): url = "https://private-akeno.randydev.my.id/api/v2/send_message_logs" params = { "text_log": text_log } response = requests.post(url, params=params) if response.status_code != 200: return None return response.json()["message"] class Randydev(Client): def __init__(self, loop=None): self.loop = loop or asyncio.get_event_loop() super().__init__( "chatbotai", app_version=f"akeno ai latest", api_id=API_ID, api_hash=API_HASH, bot_token=BOT_TOKEN, workers=300, plugins=dict(root="chatbot.plugins"), sleep_threshold=180, ) async def start(self): await super().start() self.start_time = time.time() LOGS.info( "akn running with Pyrogram v%s (Layer %s) started on @%s. Hi!", pyrogram.__version__, layer, self.me.username, ) async def stop(self): try: await super().stop() LOGS.warning("akn stopped, Bye!") except ConnectionError: LOGS.warning("akn is already terminated")