Skip to content

xBot es una librería en PHP diseñada para facilitar la creación y gestión de bots de Telegram. Con un enfoque en la simplicidad y la eficiencia

License

Notifications You must be signed in to change notification settings

alexsandrov16/xbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xBot

xBot es una librería en PHP diseñada para facilitar la creación y gestión de bots de Telegram. Con un enfoque en la simplicidad y la eficiencia, xBot te permite centrarte en lo que realmente importa: desarrollar funcionalidades innovadoras para tus bots.

Estado de Desarrollo

Caution

Ten en cuenta que xBot se encuentra actualmente en una etapa de desarrollo. Esto significa que podrías encontrar algunos errores o comportamientos inesperados. Apreciamos tu comprensión y paciencia mientras trabajamos para mejorar la librería.

Estamos comprometidos a lanzar una versión estable lo antes posible. Tu apoyo y feedback son esenciales en este proceso, y cada contribución ayuda a hacer de xBot una herramienta más robusta y confiable.

Instalación

composer require al3x5/xbot:dev-main

Uso

Antes de empezar a crear código, debes haber creado tu bot en Telegram. Puedes seguir las instrucciones en el siguiente enlace: Instrucciones para crear y configurar un bot en BotFather.

Configurar

Para configurar xBot puede hacerlo de dos maneras:

  1. Usando la línea de comandos.
php vendor/bin/xbot install
  1. Creando usted mismo el archivo de configuración.
return [
    // your bot token
    'token' => '1234567890:ABCDEFGHIJKLMNOQRSTZ',
    // your bot name without @
    'name' => 'MyBot',
    // list of bot admin id's
    'admins' => [123456789, 985632147],
    // http client to use (By default \Mk4U\Http\Client is used)
    'client' => new \Mk4U\Http\Client(),
    // cache handling library used (default is mk4u/cache)
    'storage' => \Mk4U\Cache\CacheFactory::create('file', ['dir' => 'storage', 'ttl' => 300]),
    // activate dev environment (default is false)
    'dev' => true,
    // directory where logs are stored
    'logs' => 'storage/logs',
    // parsing mode for telegram messages
    'parse_mode'=>'MarkdownV2',
    // bot command manager
    'handler' => [
        //'/start' => \App\Commands\Start::class,
    ]
];

Inicializar

Para inicializar su bot solo debe crear un archivo .php.

require_once 'vendor/autoload.php';
$config = require_once 'config.php';

$xbot = new Al3x5\xBot\Bot();
$xbot->run();

Enlazar mi bot con Telegram

Ya para este paso debe de tener su bot creado en Telegram mediante @BotFather. Para enlazar tu bot con la API de Telegram solo tiene que correr un comando y proporcionar la url de tu bot:

php vendor/bin/xbot hook:set

Crear comandos

Para crear comandos personalizados, puedes definirlos en el archivo de configuración en la sección handler. Aquí tienes un ejemplo básico:

'handler' => [
    '/start' => \App\Commands\Start::class,
    '/help' => \App\Commands\Help::class,
],

Asegúrate de crear las clases correspondientes en el espacio de nombres App\Commands.

namespace App\Commands;

use Al3x5\xBot\Commands;
use Al3x5\xBot\Telegram;

final class Start extends Commands
{
    public function execute(array $params=[]): Telegram
    {
        return $this->bot->reply('Start command executed');
    }
}

Contribuciones

Si deseas contribuir al desarrollo de xBot, aquí hay algunas formas en las que puedes hacerlo:

  • Reporta errores o problemas que encuentres.
  • Comparte tus ideas y sugerencias.
  • Contribuye con código o documentación.

Licencia

Este proyecto está licenciado bajo la Licencia MIT.

Contacto

Si tienes alguna pregunta o comentario, no dudes en contactarme a través de Telegram.


Gracias por considerar xBot para tus proyectos de bots de Telegram. Estamos emocionados de tenerte a bordo y esperamos que disfrutes trabajando con esta librería. ¡Juntos podemos construir algo grande!

About

xBot es una librería en PHP diseñada para facilitar la creación y gestión de bots de Telegram. Con un enfoque en la simplicidad y la eficiencia

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages