Espeasy: 中央コマンドとイベント処理

作成日 2020年01月27日  ·  3コメント  ·  ソース: letscontrolit/ESPEasy

現在、さまざまなソースからコマンドを受信する可能性があります。
例えば:

  • シリアルポート
  • p2pコントローラー
  • MQTT(Domoticz / OpenHAB)
  • HTTPGET
  • ルール

問題は、コマンドを受け取って実行するための汎用ハンドラーがないことです。
たとえば、2つのMQTTコントローラー(C002-DomoticzおよびC005 OpenHAB)は、コマンドまたはイベントを受け入れます。
ただし、どちらにも、一部のプラグインに対して独自の特別な処理があります。
一部の特定のシナリオでは、これは有効なユースケースになる可能性がありますが、ほとんどの場合、コードの重複であり、コントローラー間で機能が異なる理由が混乱を招きます。

つまり、要するに:

  • 汎用コマンドハンドラーを追加(または選択)します。
  • コントローラではなくプラグイン内で特定のコマンドまたはイベントを処理する方法を見つけてください。
  • 何かがイベントであるかコマンドであるかを適切に検出するため、「スパゲッティメソッド」を使用して、着信コマンドまたはイベントの処理に成功する可能性のある呼び出しを確認する必要はありません。
  • 一部のイベントまたはコマンドの許可の要求を評価します。 (MQTTを介したファクトリーリセットは良い考えとは思えません)
Controller Rules Enhancement

最も参考になるコメント

「スパゲッティプログラミング」はランダムなことを試みて、何がうまくいくかを見ています。
スパゲッティがよく調理されているかどうかをテストするのに似ています。 壁に投げてくっついたら大丈夫です。 (まあ、少なくともそれは私が言われたことです、それを試したことはありません)

それをリリースし、たくさんのバグ修正を介して顧客に熟成させる「バナナプログラミング」もあります:)

全てのコメント3件

ああああああ!!!! 笑いが止まらない。

* Proper detect whether something is an event or a command, so we don't have to use the "spaghetti method" to see what call may be successful in handling the incoming command or event.

「スパゲッティ法」とは?
(警告:私はイタリア人です!)
:) :) :)💯

「スパゲッティプログラミング」はランダムなことを試みて、何がうまくいくかを見ています。
スパゲッティがよく調理されているかどうかをテストするのに似ています。 壁に投げてくっついたら大丈夫です。 (まあ、少なくともそれは私が言われたことです、それを試したことはありません)

それをリリースし、たくさんのバグ修正を介して顧客に熟成させる「バナナプログラミング」もあります:)

スパゲッティがよく調理されているかどうかをテストするのに似ています。 壁に投げてくっついたら大丈夫です。 (まあ、少なくともそれは私が言われたことです、それを試したことはありません)

楽しすぎる!

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

workgroupengineering picture workgroupengineering  ·  6コメント

ronnythomas picture ronnythomas  ·  3コメント

DittelHome picture DittelHome  ·  5コメント

wolverinevn picture wolverinevn  ·  4コメント

TD-er picture TD-er  ·  5コメント