本の開いているページの同期
本の開いているページ、表示領域を同期したいt6o_o6t.icon どうしたらいいのだろう
理由
本を物理的に買うことはしたくない
電子書籍や、フリーのPDFをみんなで読みたい
ここが歪んでいる可能性もある
本を人数分買って、レンタルする形でイベントを開くことも可能
大学では、基本的に図書館で読める
本の実物が必要になるのはイベント時のみなので、団体で買って貸せば十分
イメージ
1. 画面Aの表示しているページが、画面Bにリアルタイムで反映される
2. 画面Aで表示している領域が、画面Bにリアルタイムで反映される
理想的には...
本を既に購入している人どうしで、ビューの状態だけを共有したいということ
ビューの状態を配信するのは問題ないだろう
現在どのページの、どの領域を表示しています、とか
マウスカーソルがここにあります、とか
本の内容を配信するのは問題がある
技術別に分けて考えるべきだと思う。
Webページの場合
ビューアに応じて表示サイズとかが変わりそう。
理想的にはVMを立てて、その中でChromeなどを実行するのが良い。 画面サイズやフォントを、固定できるだろうから
Webブラウザは、画面操作用のAPIがある
EPUBの場合
とりあえずはVMを基盤に開発して良いと思う
実験するうえで都合がとても良さそう
どのVMを使う?
Hyper-Vで良いと思う
アカウントを共用するのではいけないのか?
共用の基準とは
別人が使っているからいけないのか
偶然にも他人の端末でログインしてしまったというテイならいいのか?
本人がログインしたということにしたい
リモートデスクトップ?
利用しているのが問題なのでは?
共用の基準を調べなければならない.
やっぱりアカウントの共用は違う
抽象化の方向性
より技術的に水平に実装するとしたら
ログイン済のVMを共有すること
リモートデスクトップでログイン済のマシンに接続するのとよく似ていそうだが
VMを立てるなら、まるごと動作を共有したほうが見た目もシンプルになりそう
実装も、メモリを共有するだけで良い
新しい電子書籍リーダーを考える?
どういう?
とりあえず実装するしか無い
コンテンツ部分だけを別途取得する方法
やりたいことは結局なんだ?
本当に、同期できたら嬉しいのか
見ている部分を知りたいのではないか
ポインタ機能
他人が見ているページにパッと移動したいのではないか
https://scrapbox.io/files/64da297c688938001b531b14.png
こういうことなのだろう
メニューを召喚して、名前をクリックすると移動できる
作ってみたい!!!!
どういうふうに作ろうか?
Chrome拡張機能?
PDFが難しそう
PDFをやっつけたい
Webなら普通に画面共有でいいし...
本当に?
単純なJavaScriptで解決できるページを対象に絞ろう
難しそうになってきた
表示されるレイアウトはみんな違うから...
VMやChromiumで動かすほうが楽になってしまう
PDFのほうが簡単そう...
PoC
「みんなで見られるPDFビューア」というコンセプトでPoCを作る
技術スタック
Socket.IO
ポインタの現在地共有に使用する
Chrome Extensions
Popup
PopupのUIがちょうど要件にフィットしたので良い。
SVG要素を挿入して、Backgroundで動かす
Socket.IOの重さによってはWebWorkerに頼るかも
アイデア突っ込む場所
アイトラッキングポインタ
必要最小限ではない
ファイルを開くための段階
ログイン
PDFファイルダウンロード
ファイルの開き方
ビューアを起動