!(または他の設定されたプレフィックス)で始まるユーザーコマンドメッセージによってトリガーされます。!helpコマンドをトリガーする例を次に示します:

Commandコンポーネントの追加
1つのプラグインには任意の数のコマンドを含めることができます。プラグインディレクトリでコマンドlbp comp Commandを実行し、プロンプトに従ってコマンド設定を入力します。
components/commands/ディレクトリにinfo.yamlとinfo.pyファイルが生成されます。.yamlファイルは!infoコマンドの基本情報を定義し、.pyファイルはコマンドハンドラです:
マニフェストファイル: Commandコンポーネント
プラグイン処理
以下のコードがデフォルトで生成されます(components/command/<command_name>.py)。Infoクラスのinitializeメソッドでサブコマンド処理ロジックを登録して実装する必要があります。
@self.subcommandデコレータを通じてsend関数がサブコマンドとして登録され、コマンドコンテキスト(ExecuteContext)情報を出力し、それを返信メッセージに連結します。
サブコマンド登録
nameはサブコマンド名です。空のままにすると、メインコマンドを処理することを意味します。空でない場合、2番目のパラメータをコマンドとして照合します。例えば:
!infoは、name=""のサブコマンドに一致!info fieldは、name=“field”のサブコマンドに一致!info field valueは、name=“field”のサブコマンドに一致し、valueがサブコマンドパラメータ- 特に、
name="*"は、一致しないすべての第1レベルサブコマンドに一致し、infoの後の各セクションをパラメータとして渡します。例えば!info 123、!info abc。ユーザーの入力に応じて、context.crt_paramsから['123']または['abc']を取得できます。
context変数を通じてコマンドパラメータを読み取ることができます。
上記のコマンドの効果は画像に示されています:

コマンドコンテキスト
コマンド戻り値
コマンド戻り値(CommandReturn)は、現在テキスト、画像(image_url、画像リンク)、エラーの返却をサポートしています。yieldステートメントを使用してメッセージを返してください。
具体的な戻り値については、CommandReturnの定義を参照してください: langbot_plugin.api.entities.builtin.command.context.CommandReturn
次のステップ
コマンド登録とコマンド実行の基本情報を学びました。次は:- プラグイン共通APIを確認してください
