質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

WebRTC

WebRTC(Web Real-Time Communication)とは、プラグイン無しでウェブブラウザ間の音声通話・ビデオチャットなどリアルタイムコミュニケーションができるオープンフレームワークです。W3CがAPIレベルで、IETFがプロトコルレベルでそれぞれ標準化が進められています。

解決済

skyway-javascriptSDKをnode.js環境で使用したい

jellybeans511
jellybeans511

総合スコア0

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

WebRTC

WebRTC(Web Real-Time Communication)とは、プラグイン無しでウェブブラウザ間の音声通話・ビデオチャットなどリアルタイムコミュニケーションができるオープンフレームワークです。W3CがAPIレベルで、IETFがプロトコルレベルでそれぞれ標準化が進められています。

1回答

0評価

0クリップ

18閲覧

投稿2020/06/02 09:29

編集2022/01/12 10:58

<困っていること>
チュートリアルにnpmによるskywayモジュールのサンプルがあったため、node.jsでskywayが使えるかも?と思ったのですが上手くいきません。node.jsのhttpモジュールによりwebサーバーを立ち上げ,google,chromeにてlocalhost:3000にアクセスを試みようとしましたが、node test.sの時点でエラーが出てしまいました。
コードに間違いがあるのか、そもそもnode.jsからの使用は不可能かご教授いただきたいです。SDKこそ異なりますがskyway-gatewayの使用を考える必要があるのでしょうか。

<エラー内容>
ReferenceError: window is not defined と言ったエラーが出ておりwindowオブジェクトがどこで使われているのかが不明です。

<コード内容>

test.js

const Peer = require('skyway-js'); const peer = new Peer({key:'XXXXXX'}); var http = require( 'http' ); var socketio = require( 'socket.io' ); var fs = require( 'fs' ); var server = http.createServer( function( req, res ) { res.writeHead(200, { 'Content-Type' : 'text/html' }); res.end( fs.readFileSync('./test.html', 'utf-8') ); }).listen(3000); console.log('node server started at localhost:3000');

test.html

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>SkyWayチュートリアル</title> </head> <body> <video id="my-video" width="400px" autoplay muted playsinline></video> </body> <script> let localStream; navigator.mediaDevices.getUserMedia({video: true, audio: true}) .then( stream => { const videoElm = document.getElementById('my-video') videoElm.srcObject = stream; videoElm.play(); localStream = stream; }).catch( error => { console.error('mediaDevice.getUserMedia() error:', error); return; }); </script> </html>

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

WebRTC

WebRTC(Web Real-Time Communication)とは、プラグイン無しでウェブブラウザ間の音声通話・ビデオチャットなどリアルタイムコミュニケーションができるオープンフレームワークです。W3CがAPIレベルで、IETFがプロトコルレベルでそれぞれ標準化が進められています。