rubika / app
v1.3
2023-04-06 17:58 UTC
Requires
- php: >=8
- james-heinrich/getid3: ^1.9
- symfony/yaml: ^6.2
- textalk/websocket: ^1.6
README
rubika 客户端,用于用PHP运行机器人。 使用此客户端制作机器人、游戏等...
用法
在终端运行此命令
composer require rubika/app
-
在当前目录中创建一个新的 PHP 文件
-
在文件中引入 vendor 和 Bot 类
require_once __DIR__ . '/vendor/autoload.php'; use Rubika\Bot;
- 现在你可以发送消息
$bot = new Bot(9123456789); $bot->sendMessage('u0FFeu...', 'سلام');
获取消息更新
要获取更新,你必须创建一个新类并命名它
require_once __DIR__ . '/vendor/autoload.php'; use Rubika\Client; class myBot extends Client { function onStart(): void # required ! { echo 'bot running ... '; } function runBot(array $update) # required ! { foreach ((isset($update['message']) ? $update['message'] : $update) as $message) { $message = isset($message['message']) ? $message['message'] : $message; $msg_id = $message['message_id']; $text = $message['text']; $type = $message['type']; $user_id = $message['author_object_guid']; $this->sendMessage($user_id, 'پیامتان دریافت شد ;)'); } } } new myBot(9123456789);
错误异常
我们为所有可能发生的错误创建了一个异常系统,你可以用 try/catch 来捕获它们
use Rubika\Exception\Error; try { $bot = new Bot(9123456789); $bot->sendMessage('u0FFeu...', 'سلام'); } catch (Error $e) { echo $e->getMessage(); } // or for updates : try { new myBot(9206634543); } catch (Error $e) { echo $e->getMessage(); }
网页模式
如果你想在网页上运行你的机器人或想制作网页,我们也有方法;)
注意:在网页上运行时,机器人将自动激活网页模式
require_once __DIR__ . '/vendor/autoload.php'; $page = Web(9123456789); // $page = Web(9123456789, 'index.php'); you can add a custom index file // index file: // <?php // echo 'its OK ;)'; // ?> $page->sendMessage("uFF...", 'سلام');
* 网页登录功能将在文本版本中改进...
快速模式
你可以在不写类的情况下获取消息更新
require_once __DIR__ . '/vendor/autoload.php'; Fast(function ($update, $obj) { foreach ((isset($update['message']) ? $update['message'] : $update) as $message) { $message = isset($message['message']) ? $message['message'] : $message; $msg_id = $message['message_id']; $text = $message['text']; $type = $message['type']; $user_id = $message['author_object_guid']; $obj->sendMessage($user_id, 'پیامتان دریافت شد ;)'); } }, 9123456789);
自动发送消息操作
现在你可以设置自动发送操作模式到你的媒体,如发送消息、照片等。
Fast(function ($update, $obj) { // ... $obj->autoSendAction = true; // ... }, 9123456789);