Skip to content

ruby-no-kai/takeout-app

Repository files navigation

README

Todos

  • navbar リンク・デザイン
  • attendee ログイン
    • デザイン
  • attendee 設定
    • デザイン
  • be: 複数トラックの設定
  • fe: IVS embed
  • fe: チャット
    • fe: チャットのオートスクロールもうすこし賢くする
    • デザイン
    • 現スピーカーのみのハイライト
    • ChatAdminControl ここから以前を隠すフラグ
    • IMPORTANT chat mod action
      • delete
      • lookup
      • ban
    • isAdmin white 背景
    • 自動リンク
  • be: チャットログ回収
  • be: スケジュール情報の保存と発出 + IVS
  • 字幕考える
    • 字幕きったときに他窓でも hide されないと混乱する
  • IMPORTANT control: cue
    • TrackCard
    • MediaLive スケジューリング
    • ChatSpotlight
    • be: タイムテーブル
  • IVSメタデータ発出
  • トランジションのモーションどうするか
  • Interpret/Caption preference の保存
    • Interpret がない場合でもわざわざ stream の切り替えをする必要はないぞ
    • でも切り替えしたいことがあることがわかったので強制ストリーム変更をリクエストできる機能をつける…
  • fe: ストリーム停止時の挙動 (playlist 404になる)
  • fe: ストリーム読み込み中のプレースホルダ
    • video の minH
  • fe: asset を S3 に
  • fe: ローディング画面
  • control: nav
  • control: Attendee の編集
  • control: TrackCard の作成と保存
    • かしこいエディタ
  • チャットで絵文字いれてもしなないようにする
  • 言語フィルタ
  • shoryuken
  • IMPORTANT 幕間画面
    • next talks カード
  • mobile view
  • IMPORTANT sponsor promo rotate
  • IMPORTANT periodic metadata republish
    • ivs cards
    • chime pins
    • chime spotlights
  • fe: 裏番組の表示
  • fe: 字幕 テキストエリアは width せまいほうがいいかも
  • !attendee.is_ready で警告
  • production
    • CloudFront
    • IVS
    • MediaLive
    • Chime
    • IAM
  • IMPORTANT stream presence まきもどっちゃう
  • Switch にもツールチップ
  • 音量おぼえてほしい
  • たぶがりんくであってほしい
  • autofocus やっぱモバイルでうっとおしい
  • deleteChannelMembership も自分じゃできないらしい
  • send ボタンが attendee でずれる
  • offline でもうかたほうにリダイレクトしたい
  • IMPORTANT なんか chat session expiry の判定あやしいかも
  • 幕間 hls pull のディレイへらす

Development

AWS Setup

IVS and Chime SDK for Messaging are uncovered by Terraform :/

Chime SDK for Messaging

aws chime create-app-instance --name rk-takeout-...

And write app instance ARN down to conference jsonnet. Then run

rake takeout:ensure_chime

and it'll output channel and user ARNs for conference jsonnet.

IVS

See ./tf/ivs.tf

MediaLive

See ./tf/medialive.tf. Managed through CFn on Terraform.

caption/serve.rb

Data management

ConferenceSponsorship

ruby misc/generate_conference_sponsorships_data.rb /tmp/RubyKaigi\ 2022_\ Sponsor\ Live\ Promo\ Text\ \(Responses\)\ -\ Form\ Responses\ 1.csv /tmp/sponsors.yml > ~/Downloads/sponsors.json
ruby misc/upload_conference_sponsorships_avatar.rb rk-takeout-app prd/avatars/ < ~/Downloads/sponsors.json

aws s3 cp ~/Downloads/sponsors.json s3://rk-takeout-app-usw2/prd/tmp/sponsors.json
rails runner 'p ConferenceSponsorship.delete_all'
rake takeout:import_sponsorships

ConferenceSpeaker, ConferencePresentation

rake takeout:sync_conference_data

Tito Extra Data

accept additional roles through metadata like:

{
  "takeout_app": {
    "roles": [
      "staff",
      "speaker",
      "ruby committer",
    ]
  }
}

Deploy

Deployments are automated with GitHub Actions.

License

MIT License (c) Sorah Fukumori 2021

  • unless otherwise noted
    • e.g. app/javascript/*Icon.tsx

About

Virtual venue for RubyKaigi Takeout w/ Amazon IVS, Chime SDK for Messaging, Transcribe

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published