Open4

nest: 接続用のDockerコンテナを用意する

okuokuokuoku

とりあえず今回はProof of Conceptということで以下のような仕様にする:

  • STUNサーバーなし
  • 公開ポートはTCP2つ。HTTPとTURN。

Dockerは基本的にNAPTしてくれるのでSTUNの方でがんばれば普通に直通もできる。が、STUNはUDPで疎通するところに置く必要があるので諸般の事情(SSL proxy配下に置けない)でちょっと後回し。

動くものができたらcoturnのWasm移植を検討してnwjsで単体アプリにする方向を考えたい。

okuokuokuoku

ビルド不要化

https://github.com/okuoku/fnest-proto/commit/906d171f977d7e9442213c0bfb6f2af9d01f1458

... まぁ node-datachannel がネイティブモジュールなんでビルドをゼロにはできないわけだけど。。libpeerのWasm化も考えた方が良いのかねぇ。。とりあえず、 Rollup.js で単にESMを埋め込むことしかしていなかったのをやめた。Base64uriなんて数行なんだからモジュールにする必要無いだろということで。。

ついでに依存ライブラリも更新した。

okuokuokuoku

Docker用の設定機能を付ける

https://github.com/okuoku/fnest-proto/commit/16512e2f3a5139fe0320230bb50b7f3442ae3178

まぁ特定の環境変数が設定されていたら初期設定するって感じで良いか。

  • FNEST_STATEDIR -- ステートを保存するディレクトリ。省略時は __dirname
  • FNEST_EXTERNAL_IP4 -- Listen先のIPv4。TURNサーバーとデバイスHTTPサーバーのlistenアドレスになる
  • FNEST_ENABLE_COTURN -- 存在したらcoturnを起動する