@Takizawa Soetsu Takizawa Soetsu authored on 14 Aug
public add 1 month ago
README.md Update README.md 1 month ago
ews.rb add 1 month ago
README.md

IntroQ-2025-ver2

接続用url: クライアント

イントロクイズシステム (IntroQ-2025-ver2)

このシステムは、2台のサーバーPCと、参加者のデバイスで構成されます。

  • 司令塔PC (大学サーバー aoy)

    • 役割: WebSocket通信を中継し、クイズの進行全体を管理します。
    • 動かすプログラム: ews.rb
  • 音楽PC (あなたのノートPC)

    • 役割: 音楽ファイルそのものと、曲リストを提供します。
    • 動かすプログラム: music_server.rb
  • 参加者デバイス (スマートフォンなど)

    • Webブラウザで回答者ページにアクセスして、クイズに参加します。

本番運用時の起動・アクセス手順

1. 事前準備:IPアドレスと設定ファイルの確認

大会当日、PCをネットワークに接続したら、まず以下のIPアドレスを確認し、必要であれば設定ファイルを修正します。

(1) 司令塔PC (大学サーバー) のIPアドレスを確認

VNCで接続した大学サーバーのターミナルで、ifconfigip a コマンドを実行し、IPアドレスを確認します。 (例: 172.17.54.116)

(2) 音楽PC (あなたのノートPC) のIPアドレスを確認

あなたのPCのコマンドプロンプトやターミナルで ipconfig (Windows) または ip a (Mac/Linux) を実行し、IPアドレスを確認します。 (例: 192.168.0.145)

(3) 設定ファイルのIPアドレスを修正

上記で確認したIPアドレスと、以下のファイルに書かれているIPアドレスが一致しているか確認し、違っていたら修正・保存します。

  • ews.rb (司令塔PC上)

    • 音楽PCのIPアドレス (192.168.0.145の部分)
      # select アクション内
      selected_url = "http://192.168.0.145:8890/#{...}"
  • host.html (あなたのPC上)

    • 音楽PCのIPアドレス (192.168.0.145の部分)
      fetch(`http://192.168.0.145:8890/music_list.json`)
    • 司令塔PCのIPアドレス (172.17.54.116の部分)
      const conn = new WebSocket('ws://172.17.54.116:8804/');
  • music_player.html (あなたのPC上)

    • 音楽PCのIPアドレス (192.168.0.145の部分)
      const musicServerHost = 'http://192.168.0.145:8890';
    • 司令塔PCのIPアドレス (172.17.54.116の部分)
      const conn = new WebSocket('ws://172.17.54.116:8804/');

2. 各サーバーの起動

  1. 音楽PC (あなたのノートPC) で、music_server.rb を起動します。
  2. VNC経由で、司令塔PC (大学サーバー)ews.rb を起動します。

3. 各ページの表示

ページを開く人 ページの役割 アクセスするURL 備考
あなた(ホスト) 出題者ページ file:///.../host.html あなたのPC上のファイルを直接ブラウザで開く
あなた(ホスト) 音楽プレイヤー file:///.../music_player.html あなたのPC上のファイルを直接ブラウザで開く
参加者全員 回答者ページ https://www.yatex.org/.../client.html GitBucketの公開URLを案内する

【重要】 あなた(ホスト)が host.htmlmusic_player.html を開く際は、必ずVPNに接続した状態で行ってください。


トラブルシューティング

Q. 音楽再生サーバーのIPと音楽ディレクトリが変わった時は?

A. 以下の4ファイルを修正してください。

  1. music_server.rb: music_dirのパスを新しいものに変更します。
  2. ews.rb: selected_urlのIPアドレスを新しいものに変更します。
  3. host.html: fetchのIPアドレスを新しいものに変更します。
  4. music_player.html: musicServerHostのIPアドレスを新しいものに変更します。 その後、サーバーを再起動し、ページをリロードしてください。