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

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

新規登録して質問してみよう
ただいま回答率
85.47%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

WebRTC

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

Q&A

解決済

1回答

2179閲覧

SkylinkJSから文字を送り、NicoScreen.jsを使って文字が受信されない問題

nnns

総合スコア10

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

WebRTC

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

0グッド

0クリップ

投稿2017/03/06 12:07

###前提・実現したいこと
SkylinkJSとNicoScreen.jsを使い、
SkylinkJSから文字送信して、NicoScreenで送信された文字を表示させたいと思っていますが、上手くいかずとても困っています。
詳しい説明をしますと、
最初に、SkylinkJSから部屋、名前の設定をして
次にNicoScreen側でSkylinkJS側で作った部屋に接続して文字を受け取るという事です。
###該当のソースコード

受信側HTML <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>受信側</title> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> <script type="text/javascript" src="../jquery.js"></script> <script type="text/javascript" src="../nicoscreen.js"></script> <script src="js/index.js"></script> <script src="//cdn.temasys.com.sg/skylink/skylinkjs/0.6.x/skylink.complete.min.js"></script> </script> </head> <body> <header> <a href="http://skylink.io/web">Powered by SkylinkJS</a> <input type="text" id="name" placeholder="My name" autofocus /> <button onclick="setName()">名前を設定</button> <button onclick="joinRoom()">部屋作成または、部屋に参加</button> <button onclick="leaveRoom()">部屋を出る</button> <br/> <input type="text" id="message" placeholder="My message" /> <button onclick="sendMessage()">送信</button> <a href="http://_________.jp/" target="_blank">ホームページスペース</a> </header> <div id="container"> <div id="chatbox"></div> </div> <div id="page-container"> <div class="padding" style="padding-left:30px;padding-top:10px"> <div id="nicoscreen" style="width:600px;height:400px"> <img src="images/neko.jpg" style="width:600px;height:400px" /> </div> <br /> <br /> <br /> <script type="text/javascript"> var obj = { "base":{ color:"white", speed:"normal", interval:"normal", font_size:"30px", loop:true }, "comments": [ ] }; nicoscreen.set(obj); nicoscreen.start(); function addComment(message){ var str = $("#message"); nicoscreen.add(str); $("#message"); </script> </div> </div> </body> </html> <script src="js/index.js"></script> </body> </html>
~~Skylink送信HTML~~ <!DOCTYPE html> <html > <head> <meta charset="UTF-8"> <title>送信</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <html> <head> <title>送信側</title> <script src="//cdn.temasys.com.sg/skylink/skylinkjs/0.6.x/skylink.complete.min.js"></script> </head> <body> <header> <a href="http://skylink.io/web">Powered by SkylinkJS</a> <input type="text" id="name" placeholder="My name" autofocus /> <button onclick="joinRoom()">部屋に接続</button> <button onclick="leaveRoom()">切断</button> <br/> <input type="text" id="message" placeholder="My message" /> <a href="http://_____.jp/" target="_blank">リンクスペース</a> </header> <div id="container"> <div id="chatbox"></div> </div> </body> </html> <script src="js/index.js"></script> </body> </html>

index.js

var

1 2skylink.on('peerJoined', function(peerId, peerInfo, isSelf) { 3 var user = 'You'; 4 if(!isSelf) { 5 user = peerInfo.userData.name || peerId; 6 } 7 addMessage(user + ' joined the room', 'action'); 8}); 9 10skylink.on('peerUpdated', function(peerId, peerInfo, isSelf) { 11 if(isSelf) { 12 user = peerInfo.userData.name || peerId; 13 addMessage('You\'re now known as ' + user, 'action'); 14 } 15}); 16 17skylink.on('peerLeft', function(peerId, peerInfo, isSelf) { 18 var user = 'You'; 19 if(!isSelf) { 20 user = peerInfo.userData.name || peerId; 21 } 22 addMessage(user + ' left the room', 'action'); 23}); 24 25skylink.on('incomingMessage', function(message, peerId, peerInfo, isSelf) { 26 var user = 'You', 27 className = 'you'; 28 if(!isSelf) { 29 user = peerInfo.userData.name || peerId; 30 className = 'message'; 31 } 32 addMessage(user + ': ' + message.content, className); 33}); 34 35skylink.init('key-key-key-key-key'); // Get your own key at developer.temasys.com.sg 36 37function setName() { 38 var input = document.getElementById('name'); 39 skylink.setUserData({ 40 name: input.value 41 }); 42} 43 44function joinRoom() { 45 skylink.joinRoom(); 46} 47 48function leaveRoom() { 49 skylink.leaveRoom(); 50} 51 52function sendMessage() { 53 var input = document.getElementById('message'); 54 skylink.sendP2PMessage(input.value); 55 input.value = ''; 56 input.select(); 57} 58 59function addMessage(message, className) { 60 var chatbox = document.getElementById('chatbox'), 61 div = document.createElement('div'); 62 div.className = className; 63 div.textContent = message; 64 chatbox.appendChild(div); 65} 66```nicoscreen.js 67```ここに言語を入力 68/* 69 * NicoScreen, version: 0.1 (2011-07-11) 70 * 71 * 72 * For usage and examples, visit: 73 * http://nicoscreen.r9game.com 74 * 75 * Licensed under the MIT: 76 * http://www.opensource.org/licenses/mit-license.php 77 * 78 * Copyright (c) 2011, Shikemoku.MK (shikemoku.mk -[at]- gmail [*dot*] com) 79 */ 80 81function nicoscreenobj(o) { 82 var f = nicoscreenobj.f, i, len, n, prop; 83 f.prototype = o; 84 n = new f; 85 for (i=1, len=arguments.length; i<len; ++i) 86 for (prop in arguments[i]) 87 n[prop] = arguments[i][prop]; 88 return n; 89} 90nicoscreenobj.f = function(){}; 91 92var r9 = {}; 93r9.NicoScreen = { 94 95 96 97 env : { 98 99 color:"white", 100 interval:500, 101 speed:6500, 102 font_size:"24px", 103 loop:true, 104 105 height:"", 106 width:"" 107 108 }, 109 110 top_pos:20, 111 draw_index:0, 112 comments:[], 113 114 set:function(o){ 115 116 this.comments = o.comments; 117 118 if(o.base.color){ 119 this.env.color = o.base.color; 120 } 121 122 if(o.base.loop){ 123 this.env.loop = o.base.loop; 124 } 125 126 if(o.base.interval){ 127 128 switch(o.base.interval){ 129 130 case "fast": 131 this.env.interval=3000; 132 break; 133 case "slow": 134 this.env.interval=9500; 135 break; 136 137 } 138 139 } 140 141 if(o.base.font_size){ 142 this.env.font_size = o.base.font_size; 143 } 144 145 if(o.base.speed){ 146 147 switch(o.base.speed){ 148 149 case "fast": 150 this.env.speed=4000; 151 break; 152 case "slow": 153 this.env.speed=10000; 154 break; 155 156 } 157 158 } 159 160 }, 161 162 start : function(){ 163 164 var elm = $("#nicoscreen"); 165 this.elm = elm; 166 this.elm.css("position", "relative"); 167 this.elm.css("border", "solid 1px gray"); 168 this.elm.css("overflow", "hidden"); 169 this.elm.bind("selectstart",function(){return false;}); 170 this.elm.bind("mousedown",function(){return false;}); 171 172 173 this.env.width = ""+elm.css("width"); 174 this.env.height = ""+elm.css("height"); 175 176 this.env.width = this.env.width.replace("px",""); 177 this.env.height = this.env.height.replace("px",""); 178 179 //console.log(this.env.width); 180 181 var inid = setInterval("nicoscreen.draw(null)", this.env.interval); 182 183 }, 184 185 draw: function(str){ 186 187 var n = nicoscreen; 188 189 var i = n.draw_index; 190 var comment_str = ""; 191 192 if(str){ 193 comment_str = str; 194 i=parseInt((new Date)/1000); 195 }else{ 196 197 if (n.draw_index >= n.comments.length) { 198 if(n.env.loop) n.draw_index = 0; 199 return false; 200 } 201 comment_str = n.comments[i]; 202 n.draw_index++; 203 } 204 205 n.top_pos = Math.floor( Math.random() * parseInt(n.env.height) ); 206 207 var end_left = (parseInt(n.env.width)) * -1; 208 209 var cmid = "cm" + i + ""; 210 var com_obj = $("<div id='" + cmid + "' style='left:" + n.env.width + "px; position:absolute;top:" + n.top_pos + "px;color:"+n.env.color+";font-size:"+n.env.font_size+";font-weight:bold;text-shadow: black 1px 1px 1px;width:100%;z-index:99999;cursor:default'>" + comment_str + "</div>"); 211 212 $("#nicoscreen").append(com_obj); 213 214 (function(that){ 215 var tmp_cmid = cmid; 216 com_obj.animate({ 217 left: end_left 218 }, { 219 duration: n.env.speed, 220 complete: function(){ 221 var elm_id = "#" + tmp_cmid; 222 $("#nicoscreen").remove(elm_id); 223 that.top_pos = 10; 224 225 } 226 227 }); 228 })(this); 229 230 231 232 233 }, 234 235 236 add:function(str){ 237 this.draw(str); 238 } 239 240 241}; 242 243var nicoscreen = nicoscreenobj(r9.NicoScreen); 244 245 246 247

###試したこと
インターネットで調べても事例がないようで、参考になりませんでした。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

(難しいことはわかりませんが)
そのまえに、ドワンゴから訴えられたりしませんかね。
ついこの間、コメント表示に関してFC2を提訴してますし。

投稿2017/03/08 13:03

turbgraphics200

総合スコア4269

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnns

2017/03/08 13:52

あくまでも、趣味で作る物なんで…
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問