Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CADC 2023 LPにおけるライブ配信の裏側 | Momento Meetup #3
Search
did0es
July 25, 2023
Technology
0
81
CADC 2023 LPにおけるライブ配信の裏側 | Momento Meetup #3
Momentoを活用して実装を行った、CADC(CyberAgent Developer Conference) 2023 LPにおけるライブ配信の裏側についてお話します。
did0es
July 25, 2023
Tweet
Share
More Decks by did0es
See All by did0es
codemodとうまく付き合うには
shuta13
0
320
プライベートクラウドのコンソール画面をNext.jsのApp Routerでフルリプレイスした話
shuta13
4
730
CyberAgent Developer Conference(CADC) 2023 LP開発の舞台裏
shuta13
0
66
Turborepo Code Generationによる、サイバーエージェントグループのフロントエンド開発の効率化
shuta13
4
1.8k
Technologies for developing editors / Webエディタ開発を支える技術
shuta13
1
610
天下一 静的サイトホスティング 武道会 / World Static Site Hosting Tournament
shuta13
0
290
keyframes of Vue&TSX with CSS in JS
shuta13
1
760
Other Decks in Technology
See All in Technology
プロンプトエンジニアリングでがんばらない-Agentic Workflow へ-近藤憲児
kenjikondobai
6
1.2k
Google Cloud Next '24 Recap(Cloud Run/k8s)
mokocm
0
330
20分で完全に理解するGrafanaダッシュボード
hamadakoji
5
890
Python と Snowflake はズッ友だょ!~ Snowflake の Python 関連機能をふりかえる ~
__allllllllez__
2
140
LangSmith入門―トレース/評価/プロンプト管理などを担うLLMアプリ開発プラットフォーム
os1ma
5
710
.NET Profiler in 2024.
kkamegawa
2
1.2k
【NW X Security JAWS#3】L3-4:AWS環境のIPv6移行に向けて知っておきたいこと
shotashiratori
1
620
コードファーストの考え方。 Amplify Gen2から学ぶAWS次世代のWeb開発体験
yoshiitaka
2
340
いいたいことちゃんという
tkengo
0
230
社内アプリで Cloudflare D1を プロダクト運用してみた体験談(Tokyo)
haochenx
0
110
Autonomous Database Cloud 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
15
35k
生産性向上チームの紹介
cybozuinsideout
PRO
1
920
Featured
See All Featured
Building an army of robots
kneath
300
41k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
Mobile First: as difficult as doing things right
swwweet
217
8.6k
Rails Girls Zürich Keynote
gr2m
91
13k
Scaling GitHub
holman
457
140k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
8
1.3k
Done Done
chrislema
178
15k
The Language of Interfaces
destraynor
151
23k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
Transcript
None
株式会社サイバーエージェント フロントエンドエンジニア 平井 柊太 | Shuta Hirai @did0es @shuta13
CADC 2023について LPの概要 チャット機能の裏側 振り返り 01 02 03 04 CONTENTS
01 CADC 2023について
CADC 2023について 01 CADC = CyberAgent Developer Conference
CADC 2023について 01 ご視聴頂いた皆様ありがとうございました アーカイブはこちら:https://cadc.cyberagent.co.jp/2023
CADC 2023について 概要 ・2023 06/28 - 06/29の2日間開催 オンライン形式 YouTubeで配信 ・DAY
1 - NEXT 次世代を担う若手による2 ~ 30分の録画セッション ・DAY 2 - EXPERT 各分野のベテラン社員による約 1時間のライブセッション 01
02 LPの概要
LPの概要 02 TOP
LPの概要 02 Session
LPの概要 02 Admin
LPの概要 LPの目標 ・Web & 3DCGによる表現 Webの技術を活用した表現による技術的挑戦 ・ライブ配信 Momentoを活用した、ライブ配信 & 配信のモデレート環境開発
02
LPの概要 使用技術 ・基盤:Next.js LP・管理面共にNext.jsのSGで運用 ・UI:Three.js, TailwindCSS, daisyUI LP面はThree.js, TailwindCSS Admin面はdaisyUI
・インフラ:S3, CloudFront, Momento SGの成果物をS3, CFで配信 ライブ機能は全て Momentoで構築 02
03 チャット機能の裏側
チャット機能の裏側 03 チャット実装の裏側についてお話します
チャット機能の裏側 要件 ・匿名で投稿可能なライブチャット コメントの心理的なハードルをなくす LPで視聴・コメントの全てが収まるように ・管理画面によるモデレート 各セッションで運営からのアナウンスや、コメントの管理ができるように
03
チャット機能の裏側 03 アーキテクチャ
チャット機能の裏側 Momento Web SDKを用いた実装 ・適切な権限を付与したユーザーの作成 あらかじめMomento側で発行した、ユーザー/Admin用Tokenで作成 ・ルーム・コメントの作成や削除の実装 フォームなどのUIの実装 ルームの操作、削除はTokenでAdminだけに権限を絞っておく
・pub/subの実装 コメント・ルームの作成や削除を publishし、LP・Admin面でsubscribe 03
チャット機能の裏側 定義 ・@User → LPを使用する方 ・@Admin →CADC運営チーム
・@Common → User と Admin 共通 03
チャット機能の裏側 03 @Common - Cache/TopicのClient作成
チャット機能の裏側 03 @Admin - ルーム作成・削除のpublish
チャット機能の裏側 03 @Admin - ルーム更新のsubscribe
チャット機能の裏側 03 @Admin - コメント作成・削除のpublish
チャット機能の裏側 03 @User - コメント作成のpublish
チャット機能の裏側 03 @Common - コメント更新のsubscribe
チャット機能の裏側 03 実際の動作の様子
04 振り返り
振り返り まとめ ・Momentoを活用し、2人日ほどでコメント機能を実装できた Serverlessという強みを活かし、想定の 3 〜 5人日よりも遥かに短い期間で実装 ・複数のライブセッションの運用も問題なく進行できた 当日サポートいただいたMomentoの皆様、ありがとうございました
04
CADC 2023について 01 本日の内容はこちらのブログでもご覧になれます https://developers.cyberagent.co.jp/blog/archives/42887/
ご清聴ありがとうございました