EPUB Hub
名前
EPUB Hub
EPubHub
EPubSub
EPUBSub
EPUB Watch
役割
ファイルの取得
アップロード
ウェブページ
ウェブAPI
コマンド: % epub push doc.epub
ローカルからのコピーの命令
Nginxがローカルに一時保存したアップロードファイルなど
リモートURIからの取得の命令
要検討:同じリリースアイデンティファイアーのEPUBが重複した場合はどうするか?
同一性自体はチェックしておく
ファイルの存在
ETag
ファイルのハッシュ値
上書きを許可するかどうかは要検討
ファイルの保存
ローカル
オブジェクトストレージ
その他ファイルサーバー
通知
Rustコード
ファイルのmtime更新
inotifyとかで他のプロセスが反応できるように
ツイッター
ウェブページ更新
全体
要検討:無限に増えていく
作成が大変
メモリー
プロセスの競合の解消
DBを使いたくなる
通知を受けてOPDSを更新するサービスと連携するのがいいかも
そっちでDB使ったりする
ユニークアイデンティファイアーごと
ポッドキャスト
CI
コマンド実行
LambdaのS3トリガー
ファイルの配信
必須ではない。
Nginxとかオブジェクトストレージとかに任せてもいい
設定でオンオフしたい
HTTP
ファイルシステム
コマンド実行
Groongaに入れるとか
Groonga
API?
コマンド実行
groonga-httpd
ユーザー認証できるようにする?
内部システム向けならいらない
ミドルウェアとして使う場合もいらない
いや、うーん、ユーザーとEPUBファイルを紐付けるか、という話だな
パブリックなEPUBについてやってるのだから、別にいらないかな
つまり、例えば「著者とEPUBとの紐付け」まではできるかもだけど(著者がRDFでマークアップされてば)、その著者が、別のサービスでログインしているその人であるかどうかは結び付けない
そういうのは後々必要になったところで
WebSubのハブとして実装するのはありだろうか?