mirror of
https://github.com/ianramzy/decentralized-video-chat.git
synced 2024-11-23 18:49:21 +08:00
141 lines
4.8 KiB
HTML
141 lines
4.8 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8"/>
|
|
<title>Neon Chat</title>
|
|
<link rel="shortcut icon" href="/images/logo.svg">
|
|
<link rel="stylesheet" href="../css/chat.css">
|
|
<link rel="stylesheet" href="../css/snackbar.css">
|
|
<script src="https://kit.fontawesome.com/9d7bb7e31a.js" crossorigin="anonymous"></script>
|
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
|
|
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
|
|
<meta property="og:title" content="Join your friends call - Neonchat">
|
|
<meta property="og:description" content="Click the link to join this chat room using Neonchat">
|
|
<meta property="og:image" content="https://neonchat.io/images/preview.png">
|
|
<meta property="og:url" content="https://neonchat.io/">
|
|
<!-- Global site tag (gtag.js) - Google Analytics -->
|
|
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-162048272-1"></script>
|
|
<script>
|
|
window.dataLayer = window.dataLayer || [];
|
|
|
|
function gtag() {
|
|
dataLayer.push(arguments);
|
|
}
|
|
|
|
gtag('js', new Date());
|
|
gtag('config', 'UA-162048272-1');
|
|
</script>
|
|
</head>
|
|
<body>
|
|
|
|
|
|
<div id="header">
|
|
<a href="/">
|
|
<img src="/images/logo.svg" alt="Neon" width="48" height="48">
|
|
<p>Neon Chat</p>
|
|
</a>
|
|
</div>
|
|
|
|
|
|
<p id="remote-video-text"></p>
|
|
<video id="remote-video" autoplay ondblclick={openFullscreen()}></video>
|
|
<div id="moveable">
|
|
<p id="local-video-text">No webcam input</p>
|
|
<video id="local-video" autoplay muted></video>
|
|
</div>
|
|
|
|
|
|
<div id="entire-chat">
|
|
<form class="compose">
|
|
<textarea type="text" placeholder="Type a message"></textarea>
|
|
</form>
|
|
<div id="chat-zone">
|
|
<div class="chat-messages">
|
|
|
|
<div class="message-item customer">
|
|
<div class="message-bloc">
|
|
<div class="message">Have you tried this chat?</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="message-item moderator">
|
|
<div class="message-bloc">
|
|
<div class="message">Not yet! It looks awesome</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="multi-button">
|
|
<div class="buttonContainer">
|
|
<button class="hoverButton" onclick="{muteMicrophone()}">
|
|
<i id="mic-icon" class="fas fa-microphone fa-xs"></i>
|
|
</button>
|
|
<div class="HoverState" id="mic-text">Mute</div>
|
|
</div>
|
|
<div class="buttonContainer">
|
|
<button class="hoverButton" onclick="{openFullscreen()}">
|
|
<i class="fas fa-compress fa-xs"></i>
|
|
</button>
|
|
<div class="HoverState">Fullscreen</div>
|
|
</div>
|
|
<div class="buttonContainer">
|
|
<button class="hoverButton" onclick="{pauseVideo()}">
|
|
<i class="fas fa-video fa-xs" id="video-icon"></i>
|
|
</button>
|
|
<div class="HoverState" id="video-text">Pause Video</div>
|
|
</div>
|
|
<div class="buttonContainer">
|
|
<button class="hoverButton" id="share-button" onclick="{swap()}">
|
|
<i id="swap-icon" class="fas fa-desktop fa-xs"></i>
|
|
</button>
|
|
<div class="HoverState" id="swap-text">Share Screen</div>
|
|
</div>
|
|
<div class="buttonContainer">
|
|
<button class="hoverButton" onclick="{window.location.href = '/newroom'}">
|
|
<i class="fas fa-phone-slash fa-xs"></i>
|
|
</button>
|
|
<div class="HoverState">End Call</div>
|
|
</div>
|
|
<div class="buttonContainer">
|
|
<button class="hoverButton" onclick="{requestToggleCaptions()}">
|
|
<i class="fas fa-closed-captioning fa-xs"></i>
|
|
</button>
|
|
<div class="HoverState" id="caption-text">Start Live Caption</div>
|
|
</div>
|
|
<div class="buttonContainer">
|
|
<button class="hoverButton" onclick="{$('#entire-chat').fadeToggle();}">
|
|
<i class="fas fa-comment-alt fa-xs"></i>
|
|
</button>
|
|
<div class="HoverState">Open Chat</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<script src="/socket.io/socket.io.js"></script>
|
|
<script src="../js/snackbar.js"></script>
|
|
<script src="../js/chat.js"></script>
|
|
<script>
|
|
$('#entire-chat').hide();
|
|
var input = document.querySelector('.compose textarea');
|
|
var socket = io();
|
|
|
|
input.addEventListener('keypress', function (event) {
|
|
if (event.keyCode === 13) {
|
|
event.preventDefault();
|
|
socket.emit('chat message', input.value);
|
|
$('.chat-messages').append('<div class="message-item customer"><div class="message-bloc"><div class="message">' + input.value + '</div></div></div>');
|
|
input.value = '';
|
|
}
|
|
});
|
|
|
|
socket.on('chat message', function (msg) {
|
|
$('.chat-messages').append('<div class="message-item moderator"><div class="message-bloc"><div class="message">' + msg + '</div></div></div>');
|
|
});
|
|
|
|
</script>
|
|
</body>
|
|
</html> |