============================ 基本1 (所要時間: 5分) ============================ .. include:: definition.txt FrontOpsの基本的な使い方を説明します。 画面説明 ------------ .. image:: ../images/parts_names.png この画面を **フローエディタ** といいます。この画面で **フロー** を記述します。 画面の各部品の名前は図中の通りです。 最初のフローを作る ------------------- それでは、早速最初のフローを作ってみましょう。 まず、 |debugwindow| に、**現在時刻** を表示してみます。 .. image:: ../images/inject-debug.gif #. パレットの **入力カテゴリ** から青の |inject| を |workspace| にドラッグドロップします #. パレットの **出力カテゴリ** から緑の |debug| を |workspace| にドラッグドロップします #. |inject| の右端から線を引き出して、 |debug| につなぎます。 #. |deploy| を押します これで準備完了です。 |inject| の |button| を押すと、 |debugwindow| に **現在時刻** [#]_ が出力されました。 (上の画像をクリックしてアニメを見てください) .. [#] Unixタイム形式です。数字をクリックする度に表示形式が切り替わります。 動作説明 -------------- 何が起こったのか説明します。 #. |inject| は、 |button| が押されたので、メッセージ(**msg**)を作成し `payload` に **現時時刻** をセットして [#]_、出力に流しました。 #. メッセージは線上を流れて、|debug| に届きました。 #. |debug| は、メッセージが届いたので、 `payload` の値を |debugwindow| に表示しました。 .. [#] メッセージはJSONフォーマットで、次のような中身です。 .. code-block:: json { "_msgid":"bed2825b.171f1", "topic":"", "payload":1523154334540 } これが今起こったことです。 メッセージは入力ノードで作成され、つながっている線上を左から右へ流れていきます。 それぞれの |node| はメッセージが届くと、何かしら処理を行います。そして次があれば、次にメッセージを流します。 フローは、このシンプルなルールで動いているので覚えておきましょう。 Hello Wolrdを出力する ---------------------- 今度は、**現在時刻** ではなく **Hello World** という文字列を流してみます。 .. image:: ../images/inject-debug2.gif |inject| をダブルクリックして、|property| を表示します。 **ペイロード** のリストから **文字列** を選択して、「**Hello World**」を設定します。 .. image:: ../images/quickstart_inject_payload.png |update| を押して、|property| を閉じたら、|deploy| を押して変更を適用します。 |deploy| を押さないと、変更は反映されないので注意してください。ちなみに、デプロイ=保存です。 |inject| のボタンを押すと、|debugwindow| に **"Hello World"** の文字列が表示されました [#]_。 (上の画像をクリックしてアニメを見てください) .. [#] メッセージは次のような中身です。 .. code-block:: json { "_msgid":"a2421211.ad6db", "topic":"", "payload":"Hello World" } 途中でメッセージを加工する -------------------------- 次は、流れるメッセージを途中で加工してみます。 .. image:: ../images/inject-debug3.gif |inject| と |debug| の間に パレットの **機能カテゴリ** から黄色の |change| を追加します |change| をダブルクリックすると、|property| が表示されます。 **ルール** を次のように設定します .. image:: ../images/quickstart_change_rule.png |update| を押して、|property| を閉じたら、|deploy| を押して変更を適用します。 |inject| のボタンを押すと、|debugwindow| に **"Hello Japan"** の文字列が表示されました。 [#]_ (上の画像をクリックしてアニメを見てください) |inject| で作られたメッセージは、 |change| で加工され、 |debug| に届きました。 .. [#] メッセージは次のような中身です。 .. code-block:: json { "_msgid":"bee80523.d68178", "topic":"", "payload":"Hello Japan" } フローを保存する ---------------- 作成した **フロー** は名前をつけて保存します。 新規で自動作成されたファイル ( **frontops-*.tmp** ) はFrontOps終了時に削除されるので注意してください。 **[ファイル] - [名前を付けて保存...]** からファイル名を指定して [#]_ 保存してください。 .. [#] 拡張子は `.json` としてください。