robo / up_gr.html
DmitrMakeev's picture
Update up_gr.html
4e50c71 verified
raw
history blame
5.91 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Create Group with Users</title>
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/toastify-js/src/toastify.min.css">
<style>
body {
font-family: Arial, sans-serif;
text-align: center;
background-color: #f0f0f0;
margin: 0;
padding: 0;
}
h1 {
background-color: #4CAF50;
color: white;
padding: 20px;
margin: 0;
border-bottom: 2px solid #388E3C;
}
.input-row {
display: flex;
justify-content: center;
gap: 10px;
margin-top: 20px;
}
.input-row input {
padding: 10px;
font-size: 16px;
border: 1px solid #ccc;
border-radius: 5px;
}
#groupNameInput {
width: 80%;
margin-top: 20px;
}
#groupIdOutput {
width: 80%;
margin-top: 20px;
padding: 10px;
font-size: 16px;
border: 1px solid #ccc;
border-radius: 5px;
background-color: #fff;
}
#createGroupButton, #copyGroupIdButton {
color: white;
background-color: #4CAF50;
border: none;
cursor: pointer;
padding: 10px 20px;
font-size: 16px;
border-radius: 5px;
margin-top: 20px;
}
#createGroupButton:hover, #copyGroupIdButton:hover {
background-color: #388E3C;
}
</style>
</head>
<body>
<h1>Создание группы с пользователями</h1>
<div class="input-row">
<input type="text" id="apiKeyInput" placeholder="Введите API ключ">
<input type="text" id="groupNameInput" placeholder="Введите название группы">
</div>
<input type="file" id="fileInput" accept=".txt">
<button id="createGroupButton">Создать группу</button>
<input type="text" id="groupIdOutput" placeholder="ID созданной группы" readonly>
<button id="copyGroupIdButton">Скопировать ID группы</button>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/toastify-js"></script>
<script>
document.getElementById('createGroupButton').addEventListener('click', async function() {
const apiKey = document.getElementById('apiKeyInput').value;
const groupName = document.getElementById('groupNameInput').value;
const fileInput = document.getElementById('fileInput');
const file = fileInput.files[0];
if (!apiKey || !groupName || !file) {
Toastify({
text: "Пожалуйста, заполните все поля и выберите файл.",
duration: 3000,
gravity: "top",
position: "right",
backgroundColor: "yellow",
stopOnFocus: true
}).showToast();
return;
}
const reader = new FileReader();
reader.onload = async function(event) {
const text = event.target.result;
const chatIds = text.split(',').map(id => id.trim()).filter(id => id);
const payload = {
groupName: groupName,
chatIds: chatIds
};
try {
const response = await fetch("https://api.green-api.com/waInstance1101952913/createGroup/fb4986a9d9cb40ef9be6c7b08cb9c98b7a3b1dc8c6834b0b92", {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(payload)
});
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
document.getElementById('groupIdOutput').value = data.chatId;
Toastify({
text: "Группа успешно создана.",
duration: 3000,
gravity: "top",
position: "right",
backgroundColor: "yellow",
stopOnFocus: true
}).showToast();
} catch (error) {
console.error('Error creating group:', error);
Toastify({
text: "Ошибка при создании группы.",
duration: 3000,
gravity: "top",
position: "right",
backgroundColor: "yellow",
stopOnFocus: true
}).showToast();
}
};
reader.readAsText(file);
});
document.getElementById('copyGroupIdButton').addEventListener('click', function() {
const groupIdInput = document.getElementById('groupIdOutput');
groupIdInput.select();
document.execCommand('copy');
Toastify({
text: "ID группы скопирован в буфер обмена.",
duration: 3000,
gravity: "top",
position: "right",
backgroundColor: "yellow",
stopOnFocus: true
}).showToast();
});
</script>
</body>
</html>