lfgamers/discord-base-bot

dev-master 2016-09-18 17:48 UTC

This package is auto-updated.

Last update: 2024-09-05 19:09:40 UTC


README

欢迎来到基于 DiscordPHP 的 "BaseBot"。这个库是您自己的基于PHP的Discord机器人的基础。这个库是基于Symfony 2框架构建的。

要求

  • PHP ^5.6|^7.0
  • Mysql 或 Mongo
  • Composer
  • Discord机器人账户(及其令牌)

安装

这个库可以使用composer安装

composer require lfgamers/discord-base-bot

使用方法

要运行一个超级基础的机器人,您必须创建一个模块,并且您的模块必须设置一个继承自 Discord\Base\AppBundle\Model\Server 的 Server 类,然后创建一个简单的脚本,如下所示

<?php
 
use Discord\Base\Bot;
 
require __DIR__.'/../vendor/autoload.php';
 
$bot = Bot::create(
    [
        'modules'    => [
            MyModule::class
        ],
        'parameters' => [
            'name'        => 'MyFirstDiscordBot',
            'version'     => '0.0.1',
            'author'      => 'AwesomePerson',
            'log_dir'     => __DIR__.'/var/logs/',
            'cache_dir'   => __DIR__.'/var/cache/',
            'admin_id'    => 'MyDiscordUserAccountId',
            'token'       => 'MyBotToken',
            'prefix'      => '%',
            'status'      => 'with My Awesome Discord Bot',
            'server_class' => MyModule\Model\Server::class,
        ],
        'databases'  => [
            'mysql' => [
                'enabled' => true,
                'dsn'     => 'mysql://localhost/database',
            ],
        ],
    ]
);

$bot->run();

如果您以前从未运行过机器人,您必须使用以下命令设置模式

php bot.php doctrine:schema:create

然后,用参数 discord:run 运行该文件以启动机器人。

模块

要添加您自己的命令和代码,您需要创建自己的 Module(它只是Symfony的Bundle类的扩展),然后创建扩展 AbstractBotCommandBotCommand

您的目录结构应如下所示(机器人命令目录必须命名为 "BotCommand",并且命令必须以 "BotCommand" 结尾)

src
  BotCommand
    MyBotCommand.php
  MyModule.php