質問編集履歴

1

出力処理の入力漏れ

2018/11/15 03:22

投稿

ya_suhn
ya_suhn

スコア25

test CHANGED
File without changes
test CHANGED
@@ -62,4 +62,104 @@
62
62
 
63
63
  });
64
64
 
65
+
66
+
67
+ jQuery('.filler').hide();
68
+
69
+ jQuery('#connections').append(chatbox);
70
+
71
+
72
+
73
+ room.getLog();
74
+
75
+ room.once('log', logs => {
76
+
77
+ for (let i = 0; i < logs.length; i++) {
78
+
79
+ const log = JSON.parse(logs[i]);
80
+
81
+
82
+
83
+ switch (log.messageType) {
84
+
85
+ case 'ROOM_DATA':
86
+
87
+ messages.append('<div>' + log.message.data + '</div>');
88
+
89
+ break;
90
+
91
+ case 'ROOM_USER_JOIN':
92
+
93
+ if (log.message.src === peer.id) {
94
+
95
+ break;
96
+
97
+ }
98
+
99
+ messages.append('<div>相手が入室しました。 </div>');
100
+
101
+ break;
102
+
103
+ case 'ROOM_USER_LEAVE':
104
+
105
+ if (log.message.src === peer.id) {
106
+
107
+ break;
108
+
109
+ }
110
+
111
+ messages.append('<div>相手が退出しました。 </div>');
112
+
113
+ break;
114
+
115
+ }
116
+
117
+ }
118
+
119
+ });
120
+
121
+
122
+
123
+ room.on('data', message => {
124
+
125
+ if (message.data instanceof ArrayBuffer) {
126
+
127
+ const dataView = new Uint8Array(message.data);
128
+
129
+ const dataBlob = new Blob([dataView]);
130
+
131
+ const url = URL.createObjectURL(dataBlob);
132
+
133
+ messages.append('<div><span class="file">' +
134
+
135
+ message.src + ' has sent you a <a target="_blank" href="' + url + '">file</a>.</span></div>');
136
+
137
+ } else {
138
+
139
+ messages.append('<pre><div><p class="p_peer"><span class="peer">' + message.data + '</span></p></div></pre>');
140
+
141
+ }
142
+
143
+ });
144
+
145
+
146
+
147
+ room.on('peerJoin', peerId => {
148
+
149
+ messages.append('<div>相手が入室しました。 </div>');
150
+
151
+ });
152
+
153
+
154
+
155
+ room.on('peerLeave', peerId => {
156
+
157
+ messages.append('<div>相手が退出しました。 </div>');
158
+
159
+ });
160
+
161
+ }
162
+
163
+
164
+
65
165
  ```