見出し画像

SHOXXXX 8 の配信を振り返る Part 03

1か月ぶり…だと…
あけましておめでとうございます。本年も何卒よろしくお願いいたします。

というわけで、あーだこーだなんだかんだやってたら1か月放置してしまっていましたが、ようやくSHOXXXX 8振り返りの最終回です。

始める前にこれまでの振り返りは以下からどうぞ。

[ツイート表示]

最終回となる今回は画面上にツイートを表示する部分についての話です。

画像1

この画像の①の部分ですね。
こちら、まず表示エリアについてはHTMLとCSSで作成してあります。
そしてツイート取得と表示処理は以下のような流れになっていました。

ツイート取得フロー (1)

javascriptのみで全てを完結させることも恐らく可能だと思いますが、HTML含めてローカルファイルで運用していたため、Twitter APIの認証処理等毎回やらないといけなくなると思われ、敢えてそこはGoogle Apps Scriptに任せる方式をとりました。
実際試してみてもそんなにレスポンスも悪くなかったです。
ただしAPIの制約がありますし、配信以外の通信をリアルタイムで行うことによる負荷もガンガンかけるわけにはいかないだろうというところもあって、上記フローに記載の通りの実行スパンとしていました。

実は元々は上部に1行で表示する形ではなく、ツイートされたとおりにカード状で表示するような作りとしていました(覚えてる方がどれくらいいらっしゃるかわかりませんがSHOXXXX 5~SHOXXXX7, Live Selection IIIまでのに近い表示形式です)が、折角なら画面上にスクロールで出る方がいいね、という話になり、今回の形となりました。
やろうと思えばニコニコみたいに配信画面にダイレクトに重ねるのも可能なので、そういうのも面白いかもしれませんね。真ん中をよけるようにする必要があるでしょうが。。

ニコニコみたいに、で思い出しましたがtwitchはコメントをニコニコ風に画面に表示してくれる拡張機能を作った方がいらっしゃるようですね。おもしろそうだなと思ったのですが、そちらは画面の上半分に偏る傾向があるようで、うちらの配信との親和性が今のところ高くないので使えなさそうだな…と思っています。
使えるようになると先のツイートのものとミックスできるようになるので、より現実的な話になってくるのですが…。

[今後の課題]

先日のSHOXXXX Live Selection 2021でも同じシステムを使いましたが、使っていて気になる点としては以下の点かな。
①ハッシュタグは削除したほうがいいのか
こちら、Live Selection 2021では試験的に #SHOXXXX だけ削除するようにしていました。下名個人としては削除したほうがスッキリしてていいかなという印象です。

②改行を削除すると読みづらい箇所がある(特にURL)
何も考えずに改行を半角スペースに置き換える、でもいいのですがそれだと文章がつながってるときに唐突に半角スペースが来る可能性があって微妙なのかも…とも思いつつ…次回試すかもしれません。
しかし、これはそもそも添付画像のURL等も表示されているわけですし、いっそ思い切ってURLを全削除する、が正しい対応のような気もしています。

③リツイートを表示対象とするべきか
従来は既存サービスを利用させてもらっていたため、リツイートも対象となっていたのですが、自作したことによって期間や表示対象をちゃんとフィルタリングできるようになりました。現在はリツイートを表示対象から外しています。これはその判断でいいんじゃないかなと今も考えています。
同じツイートが複数回流れて来ることになりますしね。

④スクロールスピードは適切か
こちら、ツイートの文字数に依存せず概ね同じ速度でスクロールされるよう、内部で計算しています。概ね読みやすい速度なんじゃないかなと思っていますが、盛り上がったりしだすとツイートが一気に流れることも考えられ、その場合今の1ツイートずつ流す方式だとどんどん遅れていくことになってイマイチなのかなぁとも思っています。
(ニコニコとかはそれを考慮して文字数に関わらず表示秒数からスクロール速度を変えるような方針にしているのかなとかちょっと思ったりした)
まあこれは今後も試して探っていくしかないですね。

[さいごに]

以上、長々とSHOXXXX 8の配信環境について語ってみました。
今後やりたいこととしては、ブラウザソースを1歩先へ進めることでしょうか。
日本最大のRTAイベント、RTAinJapan様はNodeCGを使用しておられ、しかも過去に使用していたデータをサンプルデータとして公開してくれていらっしゃいます。

NodeCGを使用できるようになると(実際には別にNodeCGでなくともいいのですが)、表示内容等を外から制御できるようになるという利点が生まれます。前回だか前々回だかに紹介した、表示データの更新を表示領域外でやっていた云々の話が外からできるようになるという感じです。
そんな感じで次回何を書くかまだ決めていませんが、次回もよろしくお願いします。

(こんなことが聞いてみたいとかあればコメント等ででも教えてください)

この記事が気に入ったらサポートをしてみませんか?