1. komasshu

    No comment

    komasshu
Changes in body
Source | HTML | Preview
@@ -1,79 +1,79 @@
# これは何?
以前書いた https://qiita.com/komasshu/items/5042c1e18eb4589b977a の続編。[SkyWay IoT SDK](https://github.com/nttcom/skyway-iot-sdk) がv0.1.0にあがって、使い方が若干変わったのでそれのイントロ
# 構成
全体構成はこんな感じ。グローバルなリレーサーバー使わなくても、宅内のカメラや MQTT 話すIoTデバイスをリモートからあれこれできるようになる。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/83466/b8483af4-e5b4-a85d-797a-558810a1d197.png)
宅内の Linux Box(ラズパイとか)の中で以下が稼働。
* [gstreamer](https://gstreamer.freedesktop.org/)
* 外部カメラ映像からRTPストリームを生成
* [Janus-gateway](https://janus.conf.meetecho.com/)
* WebRTC ゲートウェイ。RTP映像ストリームや各種データをWebRTCに変換してくれる便利な子
* SSG
- * SkyWay Signaling Gateway。Janus-gatewayだけだと、NATとか越えてくれないので、SSGでSkyWayとのシグナリング変換処理をしてグローバルアクセス可能にする。今回からMQTT Proxy over WebRTC の機能もつけたので、宅内MQTT機器の制御が、リレーサーバー(グローバルなMQTTブローカー)なしで簡単に実現できるようになった。
+ * SkyWay Signaling Gateway。Janus-gatewayだけだと、NATとか越えてくれないので、SSGでSkyWayとのシグナリング変換処理をしてグローバルアクセス可能にする。今回からMQTT Relay over WebRTC の機能もつけたので、宅内MQTT機器の制御が、リレーサーバー(グローバルなMQTTブローカー)なしで簡単に実現できるようになった。
# SkyWay APIKEYの取得
ここについては、[前回記事](https://qiita.com/komasshu/items/5042c1e18eb4589b977a#apikey%E3%81%AE%E5%8F%96%E5%BE%97)を参照ください。
# SDKインストール
以下のインストーラーを動かすだけ
* Raspbian stretchの場合
```bash
$ curl https://nttcom.github.io/skyway-iot-sdk/install_scripts/raspbian_stretch/installer.sh | sudo -E bash -
$ ssg setup # プロンプト表示されたら、上記で取得したAPIKEYを入力する
```
* Ubuntu 16.04の場合
```bash
$ curl https://nttcom.github.io/skyway-iot-sdk/install_scripts/debian_based/installer.sh | sudo -E bash -
$ ssg setup # プロンプト表示されたら、上記で取得したAPIKEYを入力する
```
# プロセス起動
Janus gateway と SSG を動かす
* Janus gateway
```bash
$ /opt/janus/bin/janus
```
* SSG
```bash
$ ssg start
```
# gstreamerを起動する
USBカメラの映像から RTP/H.264ストリームを生成
```bash
$ gst-launch-1.0 v4l2src device=/dev/video0 ! \
video/x-raw,width=640,height=480,framerate=30/1 ! \
videoscale ! videorate ! videoconvert ! timeoverlay ! \
omxh264enc target-bitrate=2000000 control-rate=variable ! \
h264parse ! rtph264pay config-interval=1 pt=96 ! \
udpsink host=127.0.0.1 port=5004
```
# サンプルWebアプリで見る
https://nttcom.github.io/skyway-siru-client/examples/ で、`apikey`に取得したAPIKEYを入力後、`start` をクリックする
![image.png](https://qiita-image-store.s3.amazonaws.com/0/83466/2c7f2667-39bc-913e-cee9-f1a091d49731.png)
-# MQTT Proxyは?
+# MQTT Relayは?
これについては、次回記事として書きますー