51 lines
1.8 KiB
HTML
51 lines
1.8 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<title>Chat</title>
|
|
</head>
|
|
<body>
|
|
<h1>WebSocket Chat</h1>
|
|
<form action="" onsubmit="sendMessage(event)">
|
|
<label>Message: </label>
|
|
<input type="text" id="messageText" autocomplete="off" />
|
|
<label>Language Model</label>
|
|
<select id="model">
|
|
<option value="cohere">Cohere</option>
|
|
<option value="openai">OpenAI</option>
|
|
</select>
|
|
<button>Send</button>
|
|
</form>
|
|
<ul id="messages"></ul>
|
|
<script>
|
|
var scheme =
|
|
window.location.protocol == "https:" ? "wss://" : "ws://";
|
|
var webSocketUri =
|
|
scheme +
|
|
window.location.hostname +
|
|
(location.port ? ":" + location.port : "") +
|
|
"/ws";
|
|
var websocket = new WebSocket(webSocketUri);
|
|
websocket.onmessage = function (event) {
|
|
var messages = document.getElementById("messages");
|
|
var message = document.createElement("li");
|
|
var content = document.createTextNode(event.data);
|
|
message.appendChild(content);
|
|
messages.appendChild(message);
|
|
};
|
|
function sendMessage(event) {
|
|
var input = document.getElementById("messageText");
|
|
var modelDropDown = document.querySelector("#model");
|
|
data = {
|
|
// "user_id" : "1",
|
|
question: input.value,
|
|
model: modelDropDown.value,
|
|
};
|
|
console.log(data);
|
|
websocket.send(JSON.stringify(data));
|
|
input.value = "";
|
|
event.preventDefault();
|
|
}
|
|
</script>
|
|
</body>
|
|
</html>
|