File size: 4,652 Bytes
324e9d8
 
 
 
 
601be0e
324e9d8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4e50c71
324e9d8
 
 
 
 
601be0e
324e9d8
 
 
 
 
 
 
 
 
601be0e
324e9d8
 
309f222
 
 
 
 
 
 
 
 
 
 
 
324e9d8
 
 
601be0e
324e9d8
debe32c
601be0e
324e9d8
4e50c71
601be0e
309f222
 
 
324e9d8
 
 
debe32c
324e9d8
4e50c71
 
debe32c
 
324e9d8
 
4e50c71
 
 
debe32c
4e50c71
 
debe32c
4e50c71
98a72fd
 
4e50c71
debe32c
4e50c71
 
debe32c
 
4e50c71
 
 
 
 
 
 
309f222
601be0e
309f222
4e50c71
 
601be0e
324e9d8
4e50c71
 
324e9d8
309f222
 
 
 
 
 
 
 
 
 
324e9d8
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<!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 Members</title>
    <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;
        }
        .create-button {
            color: white;
            background-color: #4CAF50;
            border: none;
            cursor: pointer;
            padding: 10px 20px;
            font-size: 16px;
            border-radius: 5px;
            margin-top: 20px;
        }
        .create-button:hover {
            background-color: #388E3C;
        }
        .group-id-container {
            margin-top: 20px;
        }
        .group-id {
            color: #007BFF;
            text-decoration: none;
            font-size: 16px;
            cursor: pointer;
        }
        .group-id:hover {
            text-decoration: underline;
        }
    </style>
</head>
<body>
    <h1>Create Group with Members</h1>
    <div class="input-row">
        <input type="text" id="apiKeyInput" placeholder="Enter API key">
        <input type="text" id="groupNameInput" placeholder="Enter group name">
    </div>
    <input type="file" id="fileInput" accept=".txt">
    <button class="create-button" id="createGroupButton">Create Group</button>
    <div class="group-id-container">
        <span class="group-id" id="groupIdToCopy" onclick="copyToClipboard(this)">Click here to copy the group ID</span>
    </div>

    <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) {
                alert('Please enter an API key, group name, and select a file.');
                return;
            }
            const reader = new FileReader();
            reader.onload = async function(event) {
                const text = event.target.result;
                const chatIds = text.split('\n').map(line => line.trim()).filter(line => line);
                const payload = {
                    groupName: groupName,
                    chatIds: chatIds
                };
                console.log('JSON to be sent:', JSON.stringify(payload, null, 2));

                try {
                    const response = await fetch('https://api.green-api.com/waInstance1101952913/createGroup/fb4986a9d9cb40ef9be6c7b08cb9c98b7a3b1dc8c6834b0b92', {
                        method: 'POST',
                        headers: {
                            'Content-Type': 'application/json',
                            'Authorization': `Bearer ${apiKey}`
                        },
                        body: JSON.stringify(payload)
                    });
                    if (!response.ok) {
                        throw new Error(`HTTP error! status: ${response.status}`);
                    }
                    const data = await response.json();
                    document.getElementById('groupIdToCopy').innerText = data.chatId;
                    alert('Group created successfully!');
                    console.log('Response JSON:', data);
                } catch (error) {
                    console.error('Error creating group:', error);
                    alert('Error creating group.');
                }
            };
            reader.readAsText(file);
        });

        function copyToClipboard(element) {
            const tempInput = document.createElement('input');
            document.body.appendChild(tempInput);
            tempInput.value = element.innerText;
            tempInput.select();
            document.execCommand('copy');
            document.body.removeChild(tempInput);
            alert('Group ID copied to clipboard!');
        }
    </script>
</body>
</html>