- https://github.com/splaplapla/procon_bypass_man の運用を楽にするWEBアプリケーションです
- https://pbm-cloud.jiikko.com で公開しています
- PBMとの接続状況の可視化
- Raspberry PIの再起動
- PBMのバージョンアップ
- 設定ファイルのバックアップ、公開
- ライブストリーミングのコメント連携
- youtube live(WIP)
- gcp appが非公開なので公開にする必要がある
- twitch
- youtube live(WIP)
- スプラトゥーン2, 3専用機能
- 自動ドット打ち
デバイスIDを https://pbm-cloud.jiikko.com に登録する必要があります。
app.rb
のconfig.api_servers
の行をアンコメントアウトするprocon_bypass_man
を起動する。これでデバイスIDが生成されます。- https://pbm-cloud.jiikko.com でユーザ登録をする
- Raspberry PI内の
/usr/share/pbm/shared/device_id
もしくは実行しているディレクトリにあるdevice_id
の中身を https://pbm-cloud.jiikko.com/devices/new に貼り付ける
ProconBypassMan.configure do |config|
# ...
config.api_servers = 'https://pbm-cloud.jiikko.com' # これを追加する
# ...
end
brew install imagemagick [email protected] redis
bundle config set --local without production
bundle install
docker compose build
docker compose run --rm web bin/rake db:create db:migrate
docker compose run --rm web bin/rake db:seed
docker compose run --rm web yarn
docker compose up
- production用docker build
docker build --target production -t pbm_cloud_production .
- デバイス詳細webページのaction cable js channelに通知を送る
ActionCable.server.broadcast(device.unique_key, { type: :loaded_config })
ActionCable.server.broadcast(device.unique_key, { type: :device_is_active })
- pingのレスポンス. デバイス詳細画面にあるモーダルのサブミットボタンがクリックできるようになる
- パフォーマンスモニタリングの数値を書き込む
ProconPerformanceMetric::WriteService.new.execute(
timestamp: "2022-07-16 12:21:00+09:00",
time_taken_max: "0.168",
time_taken_p50: "0.015",
time_taken_p95: "0.016",
time_taken_p99: "00.24",
write_time_max: "0.168",
write_time_p50: "0.001",
read_time_max: "0.168",
read_time_p50: "0.012",
interval_from_previous_succeed_max: "0.168",
interval_from_previous_succeed_p50: "0.015",
external_input_time_max: "0.015",
read_error_count: "0",
write_error_count: "491",
load_agv: "0.49-0.5-0.55",
gc_count: 3,
gc_time: 1.1,
device_uuid: 'd1',
succeed_rate: 1,
collected_spans_size: 4422,
)
- デバイス詳細ページをReactで作る
- 現在は状態管理をjQueryでDOMをいじっているのでかなり厳しい状態
- 設定エディター機能
- 設定ファイル同士のdiff機能