先日の大型連休を使って、Pixela のアップデートをおこないました! v1.11.0
です!
連休とおなじく、アップデートも大型です! 今回は、Pixelaを支援してくれる人($1/月 の課金登録をしてくれた人・Pixela Supporter
と呼んでいます)だけが使える限定機能を含むリリースとなります!
リリース内容
上記のリリースノートにも記載していますが、ざっくり以下のようなかんじです。
- ユーザー毎のグラフを一覧で見られるエンドポイント
/graphs.html
を追加しました Graph
エンティティにisSecret
フィールドを追加しました- これが
true
のグラフは、上述のグラフ一覧ページで非表示になります。あまり公にしたくないグラフがあるんだけどな...って方にはオススメです - この機能は、
Pixela Supporter
限定機能となります
- これが
User
エンティティにthanksCode
フィールドを追加しました- そのユーザーが
Pixela Supporter
かどうかを判定するためのフィールドになります - その仕組みや、どうやったら
Pixela Supporter
になれるか、などについては、後述の「どのようにして月額サブスクリプションを実現したか」や、Patreon を使って Pixela を支援する/限定機能を使う · a-know/Pixela Wiki · GitHub を参照してください
- そのユーザーが
Pixela Supporter
である場合に、以下のページでユーザー名にバッジが付与されるようにしました
どのようにして月額サブスクリプションを実現したか
今回の Pixela Supporter
のための月額サブスクリプションは、Patreonを活用して実現しました。
Patreon(パトレオン?ペイトレオン?)は、クラウドファンディングプラットフォームです。存在自体は Rebuild.fm を聴いて知っていたのですが、実際に使ってみたのは今回が初めて。 クラウドファンディングプラットフォームは数あれど、月額でのサブスクリプションができるのは面白いなーと思っていました(他のプラットフォームでもできるところはあるのかもしれないけど)。あと、↓のような気持ちは以前から持っていたこともあって、それが、「まずはPatreonのドキュメントを読んでみるか」というモチベーションになりました。
お金は稼ぎたいが課金システムは組みたくないな.......
— a-know | Daisuke Inoue (@a_know) 2019年1月24日
で、見てみると、「パトロン(支援者)登録したとき・解除したときにWebhookリクエストを飛ばせる」ことがわかりました。
これを見て思いついたのが、以下のようなかんじで Pixela と Patreon とを連携させること。
- 支援者が支援登録する(パトロンになる)
- Webhookリクエストがおこなわれる。リクエスト先は pixe.la
- Webhookリクエストを受け、Payloadに含まれるPatreonユーザー情報を取得する
- 受けた情報のうちのいくつかを元に
thanks-code
(レジストレーションコード的なもの)を生成する- 同時に、発行した
thanks-code
を pixe.la のデータストアに登録する
- 同時に、発行した
- WebhookリクエストのPayloadに含まれているEmail(パトロン登録してくれたPatreonアカウントの登録メールアドレス)宛に
thanks-code
を送付する
で、実際にこの方法で実現させられています。
支援解除のときにも Webhook リクエストが飛んでくるので、そのときには Pixela のデータストアから thanks-code
を削除するだけでいい。そしてそのユーザーが Pixela Supporter であるかどうかについては、「ユーザーの thanks-code
とデータストアに登録されている thanks-code
が一致しているかどうか」を見ればいい。シンプル。
なぜ月額サブスクリプションを導入したのか
Pixela を今後も末永く続けていくためには幾許かのお金が必要だから......ということはそのとおりなのですが、この機能を実装したのは「お金欲しさから」だけではなく、むしろこの「Patreon と Webサービスとの掛け合わせ」、「Webサービスがより簡単に・気楽に支援を受けられる方法がありそうなこと」に可能性を感じた・それを本当に実現させてみるところまでやってみたかった、というのが本心です...、、本当ですよ?w
あ、だから、もしこの連携の仕方になにかツッコミどころがありそうであれば教えてほしいです。
ちなみにPatreon、本当なら1ドル未満......具体的には 50セント/月 くらいから支援登録できると良かった。Pixela はそれくらいのサービスだとも思ってるし。
Patreon、1ドル未満のtierも作れたらよかったのになー。具体的には50セント。
— a-know | Daisuke Inoue (@a_know) 2019年5月4日
まぁ、Patreon自体のマネタイズを考えると $1以上から
というのは無理もないとは思うけど。w
なぜこのような仕組みにしたか
このエントリのタイトルにもしてるけど、「あくまでも、PixelaとPixelaをつくってる僕を支援してもらう、というのが第一」という雰囲気にしたかったから。...気持ちの問題かもしれないけど。支援することにより Pixela のいくつかの機能が使えるようになる、というのは、あくまでオマケ、というかんじにしたい。
SUZURIもめっちゃいいサービスだなとは思うのだけど、なにせ動く金額がミニマムでも大きすぎるのが唯一の難点かなぁ。50セント(50円)くらいがいい。
月額50円のサブスクリプションサービスを作るのでそれを30億人に使われたい!
— a-know | Daisuke Inoue (@a_know) 2018年11月10日
夢は大きく。w
以上です
と、いうわけで、Pixela Supporter
の方にも・そうでない方にも、そしてもちろんブリーダーのみなさんにも楽しんで使っていただけるサービスに今後もしていきたいと思ってます、よろしくお願いします。