時雨堂が公開している WebRTC Signaling Server Ayame 互換のサーバレスなシグナリングサーバが公開されました。
ベンダーロックしていないオープンな仕様、さらに Apache License 2.0 で公開されているシグナリングサーバとサンプルを上手く活用して、本当にありがとうございます。
ヘッドレス WebRTC シグナリングサーバについては、実際に見てもらうとして、この Ayame 互換というのが本当に自分が目的としていたものなのでそれについて書いていこうと思います。
WebRTC Signaling Server Ayame は AppRTC という webrtc.org がオープンソースで公開しているサンプルアプリのシグナリング互換(一部拡張)のシグナリングサーバです。本家は node.js で書かれていますが、 Ayame は Go で書かれています。
Ayame を公開した理由はオープンソースでベンダーロックされていないシグナリングサーバを公開したいというのが最初です。また WebRTC の真骨頂である P2P を自分の環境で気軽に試して学んでいってほしいというのもあり、React や Vue のサンプルも提供しています。
Ayame でこだわったのは 1 対 1 に絞ったことです。 実はこれ以上をやろうとするととてもコードが複雑になってしまうというのがあります。他のシグナリングサーバは頑張ってしまっていることで、学びにくいというのが問題だと思っています。
サンプルは参考にしてもらう以上の理由はなくこれを使えというものではありません。どうやって書くのがいいのかの例があるのは大事です。
今回のサーバレスではそのまま動く例として使ってもらえてとても嬉しいです。
今後、 Ayame では iOS や Android や React Native のサンプルなど公開していく予定です。Ayame 互換のシグナリングサーバではこのサンプルを特に弄ることなく使えたりするわけです。
また、 Ayame は最新ブラウザにもできるだけ追従していこうと考えています。
是非、気軽に触ってみてください。