Spaces:
Sleeping
Sleeping
<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> |