ウィンドウ
Signal Lab のウィンドウは 4 つの部分から成ります。左側のサイドバーには画面の一覧、上部のヘッダーにはどこでも使うもの、中央にはそのとき選んだ画面、そして下部パネルにはコンソール、実行中のジョブ、インスペクターが表示されます。デスクトップアプリと、ブラウザーで開くサーバーのページは見た目が同じです。わずかな違いはブラウザーで使う場合にまとめてあります。
サイドバー
各画面はそれぞれ独立したツールです。クリックすると開きます。
| 画面 | 用途 |
|---|---|
| 実験 | キャンバス上にテストフローを組み立てて実行し、各実行をステップごとに確認します。実験 |
| シグナル | シグナルライブラリ: フォルダーに整理された名前付きのメッセージを編集し、再送信します。シグナル |
| エミュレーター | ルールに従って応答するモックの HTTP API、OSC・UDP・TCP デバイス、MQTT ブローカー。エミュレーター |
| OSC | OSC メッセージの送信、ポートのモニター、エンドポイントへの波形の送り込み。OSC |
| MQTT | ブローカーに接続し、保持されているすべてのトピックを確認し、パブリッシュや保持された値の消去を行います。MQTT |
| ブロードキャスト | 多数のホストに一度に送信し (リスト、ブロードキャスト、マルチキャスト、サブネットスイープ)、どこが応答するかを待ち受けます。ブロードキャストとディスカバリー |
| HTTP | 1 つのリクエストとその完全なレスポンス、続いて同じエンドポイントへの負荷バースト。HTTP |
| WebSocket | WebSocket サービスに接続し、テキストやバイト列を送信し、すべてのメッセージを読み取ります。WebSocket |
| ネットワーク劣化 | クライアントと宛先の間の UDP または TCP の通信を劣化させるリレー。ネットワーク劣化 |
| ストーム | 自分のサーバーや回線に向けた、生の UDP または TCP の負荷。ストーム |
| スキャナー | ホストのどの TCP ポートが開いているか、そしてサービスが最初に送ってくる内容。スキャナー |
サイドバーは最初、各画面の記号と短い名前だけの細いレールとして表示されます。項目にポインターを合わせると正式な名前が表示されます。ヘッダー左端の ☰ (ナビゲーションを展開 / ナビゲーションを折りたたむ) でレールと完全な一覧を切り替えられ、Signal Lab はどちらを選んだかを覚えています。
画面の項目に表示される数字は、その画面から実行中のジョブ (モニターやエミュレーターなど) の数です。画面を開かなくても、まだ動いているものがわかります。サイドバーの下部にあるバージョンをクリックすると「Signal Lab について」が開き、その下の行には実行中のすべてのジョブの数が表示されます。
Signal Lab は、最後に使った画面で開きます。
ヘッダー
左から右へ、次の項目が並んでいます。
| 項目 | 機能 |
|---|---|
| ☰ | サイドバーをレールまたは完全な一覧として表示します。 |
| ホスト | ホスト の後に、エンジンが動作しているコンピューターの名前とネットワークアドレスが表示されます。デスクトップアプリではこのコンピューター、ブラウザーではサーバーです。ブラウザーでは サーバー とも表示され (ポインターを合わせると、サーバーがファイルを保存している場所がわかります)、ページの接続が切れるとその横の点が変化します。 |
| 更新ボタン | 新しいリリースが見つかったときにデスクトップアプリに現れ、インストールのために「Signal Lab について」を開きます。更新を参照してください。 |
| 本のアイコン | ドキュメント: このドキュメントを、今いる画面のページで開きます。どこからでも F1 で同じことができます。 |
| ✉ | 開発者に連絡: 開発者へのメッセージです。開発者への連絡を参照してください。 |
| ? | Signal Lab について: バージョン、Signal Lab の開発元、その連絡先、更新。 |
| 国旗 | 言語: インターフェイスの言語。言語を参照してください。 |
| サインアウト | ブラウザーで、サーバーがアクセストークンを求める場合: このブラウザーのセッションを終了します。 |
| すべて停止 | 実行中のすべてのジョブを一度に停止します。モニター、ジェネレーター、ビーコン、エミュレーター、リレー、ストーム、スキャン、実行が対象です。何も実行していない間はグレー表示になります。 |
ドキュメント
ドキュメントはアプリとサーバーに組み込まれているので、インターネットに接続していなくても、インターフェイスの言語で読めます。デスクトップアプリでは専用のウィンドウに表示されます。別の画面からもう一度ボタンを押すと、そのウィンドウはその画面のページに切り替わります。ドキュメントの外へ出るリンクはブラウザーで開きます。ブラウザーでは専用のタブで開きます。「Signal Lab について」にも ドキュメント ボタンがあり、Signal Lab とはを開きます。
Signal Lab について
このダイアログには、バージョン、開発元、連絡先のアドレス (コピーするボタン付き)、ソースコード、ライセンスが表示されます。デスクトップアプリでは、その 更新 セクションで更新を探し、表示し、インストールします。更新を参照してください。ブラウザーでは サーバーはイメージとともに更新されます と表示されます。開発者に連絡 を押すとフィードバックのフォームが開きます。
開発者への連絡
ヘッダーの ✉ を押すと、開発者に直接届くフォームが開きます。
| フィールド | 入力する内容 |
|---|---|
| メッセージ | 何が起きたか、本来はどうなるはずだったか。必須で、最大 20,000 文字です。 |
| 返信用のメールアドレス | 任意: 開発者が返信できる宛先です。開発者だけが見ることができます。 |
| スクリーンショット | 最大 6 枚の画像 (PNG、JPEG、WebP、GIF)。1 枚あたり 8 MB、合計 15 MB までです。Ctrl+V で貼り付けるか、ウィンドウにファイルをドロップするか、スクリーンショットを添付 を押します。 |
| 自動で添付 | コンソールの行と バージョンとシステム が、それぞれ別のファイルとして添付されます。表示 で送信される内容を正確に確認でき、チェックを外すとそれを除外できます。 |
添付されるログからは、このコンピューターの名前、そのネットワークアドレス、フォルダーのパスに含まれる名前が除かれます。Ctrl+Enter でフォームを送信します。送信されると参照番号が表示され、コンソールにも記録されます。メッセージはスタジオ自身のサービスを経由し、そこからメールで転送されます。アプリはそのためのパスワードを持っていません。
下部パネル
どの画面の下にもあるパネルには、コンソール と インスペクター の 2 つのタブがあり、タブとパネルのボタンの間には実行中のジョブの帯があります。
- 左端の山形のボタン (コンソールを折りたたむ / コンソールを展開) で、パネルをバーだけに折りたたんだり、再び開いたりします。折りたたんでいても、バーにはコンソールの最新の行が表示されます。その行をクリックするとパネルが開きます。
- パネルの上端をドラッグすると、高さを変えられます (ペインのサイズ変更を参照)。
- 右端のボタンで、ウィンドウの高さまで広げる と 元の高さに戻す を切り替えます。
パネルが開いているかどうか、どのタブを表示しているか、高さはどれくらいかは、次回のために保存されます。
コンソール
コンソールには、各ツールが行ったことと発生した問題が、新しいものを下にして表示されます。送信したメッセージとそのサイズ、開始したモニター、レスポンスのステータスと時間、終了したジョブとその理由などです。各行には時刻 (ミリ秒単位)、ツールを示すタグ、メッセージがあり、その種類 (完了、情報、警告、エラー) によって色分けされます。
- 自動スクロール をオンにすると、行が届くたびに最新の行が表示されたままになります。オフにすると、新しい行が届いている間もさかのぼって読めます。
- クリア で空にします。
- 最新の 500 行を保持します。
- 言語を切り替えると、コンソール全体が新しい言語で書き直されます。
ジョブ
実行中の各ジョブ (モニター、ジェネレーター、ビーコン、ブローカーへの接続、エミュレーター、リレー、ストーム、スキャン、実験の実行) は、帯の中に番号と内容を示すピル型の表示を持ち、それぞれに専用の停止ボタンがあります。何も実行していないときは、帯に 実行中のジョブはありません と表示されます。ジョブを参照してください。
インスペクタータブ
インスペクター タブには、キャプチャがオンの間に各ツールが送受信したすべてのフレームが、作業中のどの画面の横にも表示されます。キャプチャがオンの間はタブの点が点灯し、数字がキャプチャしたフレームの数を示します。パネルは、インスペクターの一覧とフレームの詳細が収まる高さで開きます。他の場所 (実行のタイムラインやエミュレーターの一覧) にあるフレームへのリンクをクリックすると、このタブがそのフレームを表示した状態で開きます。一度開くと、パネルを閉じている間もインスペクターは一覧と選択を保持します。使い方はインスペクターを参照してください。
どこからでもシグナルを送信する
どの画面でも Ctrl+K を押すと シグナルを送信 が開きます。シグナルの名前、フォルダー、宛先の数文字を入力し、↑ と ↓ で選んで Enter を押すと送信されます。一度に最大 12 件のシグナルが一覧表示されます。Esc、パレットの外側のクリック、またはもう一度 Ctrl+K を押すと閉じます。コンソールには、何をどこに送信したかが表示されます。シグナルを参照してください。
ペインのサイズ変更
サイズを変更できるペインの間には細いハンドルがあります。下部パネルの上端 (コンソールの高さ)、そして実験画面ではプロパティの端 (プロパティの幅) と実行タイムラインの上端 (タイムラインの高さ) です。
- ハンドルをドラッグします。
- または Tab でハンドルにフォーカスし、矢印キーを使います。1 回押すごとに 16 ピクセル移動し、Shift を押しながらだとその 4 倍移動します。Home と End で最小と最大のサイズになります。
- ダブルクリックするか、ハンドル上で Enter を押すと、ペインが既定のサイズに戻ります。
サイズは次回のために保存されます。
ツールチップ
画面にはラベル、値、状態が表示され、説明はツールチップにまとめられています。フィールドが何を期待するか、そこで 0 が何を意味するか、どのキーで同じことができるか、などです。ツールチップは、要素にポインターを約 0.5 秒置くと表示され、キーボードで移動したときはすぐに表示されます。フィールドではそのラベルのツールチップが表示されます。Esc、入力、クリック、スクロールで非表示になります。スクリーンリーダーも同じテキストを読み上げます。
エラーメッセージは、どこで何がうまくいかなかったのか、そしてその理由を示します。システム自身の文言は 技術的な詳細 の中に折りたたまれています。
画面は状態を保持する
画面は初めて開いたときに表示され、その後は別の画面で作業している間もそのまま残ります。入力した内容、最後のレスポンス、モニターが受信したメッセージの一覧とその背後にあるジョブ、スクロール位置まで、戻ってきたときにすべてそのままです。実行中のジョブは、どの画面を見ていても動き続けます。
一部の値は再起動後も保持されます。送信していた OSC メッセージ、HTTP リクエスト、WebSocket のアドレス、ペインのサイズ、開いていた画面です。
ファイアウォールの通知
Windows Defender ファイアウォールは、プログラムごとに、他のマシンからの接続を許可するかどうかを決めます。プログラムが初めて待ち受けるとき、Windows は画面の前にいる人に確認します。そこで キャンセル を選んだ場合や、Windows がパブリックと見なすネットワークでは、他のマシンから送られたものは何の通知もなく破棄されます。何も表示されないモニターが、その典型的な兆候です。
そこで Windows のデスクトップアプリでは、何かが初めて待ち受けを始めるとき (OSC モニター、ディスカバリーリスナー、劣化リレー、エミュレーター、実験の実行)、Signal Lab がファイアウォールを一度確認します。ファイアウォールが妨げになっている場合は、ヘッダーの下にその旨の通知が表示されます。
- 許可 は、Windows 自身の確認画面で管理者権限を求めたうえで、プライベート ネットワークとドメイン ネットワークで他のマシンから Signal Lab に接続できるようにします。
- Windows がパブリックと呼ぶネットワーク (会場の Wi-Fi によくあります) では、ボタンは代わりに パブリック ネットワークでも許可 になります。
- 後で は、このセッションの間だけ通知を非表示にします。
許可すると、Signal Lab の受信ファイアウォールルールが 1 つの許可ルールに置き換えられます。このコンピューター自身の通信 (127.0.0.1) は影響を受けないため、ループバックで作業している間は通知を無視してかまいません。すべてのユーザーへのインストールでは、ルールはすでに追加されています。セットアップが追加するものを参照してください。ターミナルからは signallab doctor で同じことを確認でき、signallab firewall allow で修正できます。コマンドラインを参照してください。Linux やブラウザーでは通知は表示されません。サーバーのファイアウォールはその管理者が管理するものです。
ブラウザーで使う場合
サーバーのページは同じインターフェイスですが、いくつか違いがあります。
- ヘッダーのホストにはサーバーの名前が表示され、その横に サーバー と表示されます。
- サーバーがアクセストークンを求める場合は一度サインインし、ヘッダーの サインアウト でセッションを終了します。
- ページとサーバーの接続が切れると、復旧するまで サーバーとの接続が切れました — 再接続しています… というバーが表示されます。コンソールには切断と復旧の両方が記録されます。
- 実行レポート、エクスポート、インスペクターのキャプチャは、パスとして表示される代わりに、ブラウザーでダウンロードされます。
- 「Signal Lab について」に更新はありません。サーバーはそのイメージとともに更新されます。
サーバーのページで行うことは、すべてサーバー上で行われます。通信はサーバーから送信され、モニターはサーバーのポートで待ち受け、ファイルはサーバーのデータフォルダーに保存されます。概念を参照してください。
言語
ヘッダーの国旗は、現在の言語とその 2 文字の略称を示します。クリックするとすべての言語の一覧が開き、それぞれが国旗とその言語自身での名前で表示されるので、1 つを選びます。一覧では、↑、↓、Home、End で移動し、文字キーを押すとその文字で始まる次の言語に移動します。その言語自身の名前でも英語名でも探せるので、g で Deutsch が見つかります。Enter で選択し、Esc で閉じます。
インターフェイスは再起動なしですぐに切り替わります。すべての画面、ツールチップ、エラー、そしてコンソールのそれまでの行も切り替わります。Signal Lab は初めて起動したとき、システムの言語のうち対応している最初のもの、なければ英語を選び、以後は選んだ言語を保持します。ブラウザーでは、そのブラウザーごとに保持されます。
アラビア語では、ウィンドウ全体が右から左の表示になります。データにあたるもの (アドレス、hex ダンプ、コード、実験のキャンバス) は、書かれたとおり左から右のままです。