rtippin/messenger-faker

消息模拟器命令

v1.10.0 2024-05-23 20:52 UTC

README

Latest Version on Packagist Total Downloads Tests StyleCI License

Preview

此包是 rtippin/messenger 的插件

不建议在生产应用中安装此插件。

功能

  • 模拟实时事件(如敲击、输入和标记已读)的命令。
  • 使用输入模拟实时消息的命令。
  • 用于模拟附件消息(图片、文档、音频、视频)的命令。
  • 用于模拟系统消息和消息反应的命令。
  • FakerBot 预先注册到 Messenger 中,允许您通过聊天机器人触发我们的命令。

安装

通过 Composer

$ composer require rtippin/messenger-faker --dev

配置

  • 用于播种的文件在本地存储位置的自定义值。
    • 当使用本地文件播种时,将使用指定消息类型文件夹中的随机文件。
    • 当播种没有指定 URL/local 标志的图片文件时,它将使用配置中的默认图片 URL。
  • 启用或禁用注册我们的 FakerBot 的标志。

默认值

'paths' => [
    'images' => storage_path('faker/images'),
    'documents' => storage_path('faker/documents'),
    'audio' => storage_path('faker/audio'),
    'videos' => storage_path('faker/videos'),
],

'default_image_url' => 'https://source.unsplash.com/random',

'enable_bot' => true,

要覆盖文件路径,请发布我们的配置并相应地编辑。

$ php artisan vendor:publish --tag=messenger-faker

命令

php artisan messenger:faker:knock {thread?}

  • 向指定的线程发送敲击。

php artisan messenger:faker:message {thread?} | --count=5 | --delay=2 | --admins | --silent

  • 让参与者发送消息。还会发出输入和标记已读。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置发送的消息数量。
  • --delay=X 标志用于设置每条消息之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:react {thread?} | --count=5 | --messages=5 | --delay=1 | --admins | --silent

  • 让参与者对最新消息添加反应。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置添加的反应数量。
  • --messages=X 标志用于设置随机选择多少最新消息进行反应。
  • --delay=X 标志用于设置每个反应之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:system {thread?} | --type= | --count=1 | --delay=2 | --admins | --silent

  • 让参与者发送系统消息。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置发送的系统消息数量。
  • --type=X 标志用于设置系统消息类型。 88, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103
  • --delay=X 标志用于设置每个系统消息之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:image {thread?} | --count=1 | --delay=2 | --admins | --local | --url= | --silent

  • 让参与者发送图片消息。还会发出输入和标记已读。如果未设置 --local--url,则从配置中的默认图片 URL 拉取图片。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置发送的图片数量。
  • --delay=X 标志用于设置每张图片之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --local 标志将随机从配置文件中指定的图片目录中选择一张图片。
  • --url=X 标志允许您直接指定要下载和输出的图片URL。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:document {thread?} | --count=1 | --delay=2 | --admins | --url= | --silent

  • 使参与者发送文档消息。还将输出输入和标记为已读。如果未设置 --url,将选择配置文件中指定文档目录中的随机文档。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置发送的文档数量。
  • --delay=X 标志用于设置每份文档之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --url=X 标志允许您直接指定要下载和输出的文档URL。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:audio {thread?} | --count=1 | --delay=2 | --admins | --url= | --silent

  • 使参与者发送音频消息。还将输出输入和标记为已读。如果未设置 --url,将选择配置文件中指定音频目录中的随机音频文件。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置发送的音频文件数量。
  • --delay=X 标志用于设置每份音频文件之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --url=X 标志允许您直接指定要下载和输出的音频URL。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:video {thread?} | --count=1 | --delay=2 | --admins | --url= | --silent

  • 使参与者发送视频消息。还将输出输入和标记为已读。如果未设置 --url,将选择配置文件中指定视频目录中的随机视频文件。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置发送的视频文件数量。
  • --delay=X 标志用于设置每份视频文件之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --url=X 标志允许您直接指定要下载和输出的视频URL。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:random {thread?} | --count=5 | --delay=2 | --admins | --silent

  • 使用 ['audio', 'document', 'image', 'knock', 'message', 'react', 'system', 'typing'] 发送随机命令。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --count=X 标志用于设置发送的消息数量。
  • --delay=X 标志用于设置每条消息之间的延迟(秒)。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。
  • --silent 标志将抑制所有广播和事件分派。

php artisan messenger:faker:read {thread?} | --admins

  • 将线程中的参与者标记为已读。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --admins 标志仅在组线程中使用管理员参与者。

php artisan messenger:faker:typing {thread?} | --admins

  • 使线程中的参与者输入。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --admins 标志仅在组线程中使用管理员参与者。
  • --bots 标志仅在组线程中使用机器人。

php artisan messenger:faker:unread {thread?} | --admins

  • 将线程中的参与者标记为未读。
  • {thread?} 要播种的线程的 ID。未设置时为随机。
  • --admins 标志仅在组线程中使用管理员参与者。

FakerBot

  • 如果启用我们的配置,我们的服务提供商已经为您注册了 FakerBot
  • 请确保您的 messenger.php 主要配置已启用机器人功能。
  • 当您使用消息传递API向机器人添加处理器时,您将看到我们的机器人列表。
  • 一旦我们的 FakerBot 连接到线程的机器人,您可以通过发送以下语法的消息来触发它:
    • !faker {action} {count?} {delay?}
  • 可用动作: audiodocumentimageknockmessagerandomreactsystemtypingvideo