Тимур Овчаренко
Ученик
(164)
1 год назад
Нужен pyton
Тимур ОвчаренкоУченик (164)
1 год назад
если нужен код то держите:
import discord
import asyncio
import requests
client = discord.Client()
ip = "IP_СЕРВЕРА"
port = "ПОРТ_СЕРВЕРА"
channelId = "ID_КАНАЛА_ДИСКОРД"
@client.event
async def on_ready():
print("Бот запущен!")
channel = client.get_channel(int(channelId))
if channel:
await channel.send("Я бот Lima Games")
else:
print("Не удалось найти канал для отправки сообщения.")
while True:
await checkServerStatus()
await asyncio.sleep(5)
Тимур ОвчаренкоУченик (164)
1 год назад
async def checkServerStatus():
try:
response = await requests.get(f"https://api.battlemetrics.com/servers?filter[game]=scpsecretlaboratory&filter[gamePort]={port}&filter[search]={ip}")
server = response.json()["data"][0]
if server and server["attributes"]["status"] == "running":
print("Сервер включен.")
# Отправить уведомление о запуске сервера
channel = client.get_channel(int(channelId))
if channel:
await channel.send("Сервер SCP Secret Laboratory был запущен.")
else:
print("Не удалось найти канал для отправки сообщения.")
else:
print("Сервер выключен.")
Тимур ОвчаренкоУченик (164)
1 год назад
# Отправить уведомление об остановке сервера
channel = client.get_channel(int(channelId))
if channel:
await channel.send("Сервер SCP Secret Laboratory был остановлен.")
else:
print("Не удалось найти канал для отправки сообщения.")
except Exception as e:
print("Не удалось проверить статус сервера.")
channel = client.get_channel(int(channelId))
if channel:
await channel.send("Я не смог проверить статус вашего сервера.")
else:
print("Не удалось найти канал для отправки сообщения.")
client.run("ТОКЕН_БОТА")
1 их этих:
Сервер запущен
Сервер остановлен
Я не могу проверить статус вашего сервера
И у меня все время выходит третие сообщение помогите пожалуйста как мне эту ошибку решить
Хочу поставить на хост repl.it
Ошибок в консоли нету
Вот сам код:
Код на JavaScript для отправки уведомлений о запуске и остановке сервера SCP Secret Laboratory через Discord бота:
```javascript
const Discord = require("discord.js");
const axios = require("axios");
const client = new Discord.Client();
const ip = "IP_СЕРВЕРА";
const port = "ПОРТ_СЕРВЕРА";
const channelId = "ID_КАНАЛА_ДИСКОРД";
client.once("ready", () => {
console.log("Бот запущен!");
const channel = client.channels.cache.get(channelId);
if (channel) {
channel.send("Я бот Lima Games");
} else {
console.log("Не удалось найти канал для отправки сообщения.");
}
setInterval(checkServerStatus, 5000);
});
async function checkServerStatus() {
try {
const response = await axios.get(`https://api.battlemetrics.com/servers?filter[game]=scpsecretlaboratory&filter[gamePort]=${port}&filter[search]=${ip}`);
const server = response.data.data[0];
if (server && server.attributes.status === "running") {
console.log("Сервер включен.");
// Отправить уведомление о запуске сервера
const channel = client.channels.cache.get(channelId);
if (channel) {
channel.send("Сервер SCP Secret Laboratory был запущен.");
} else {
console.log("Не удалось найти канал для отправки сообщения.");
}
} else {
console.log("Сервер выключен.");
// Отправить уведомление об остановке сервера
const channel = client.channels.cache.get(channelId);
if (channel) {
channel.send("Сервер SCP Secret Laboratory был остановлен.");
} else {
console.log("Не удалось найти канал для отправки сообщения.");
}
}
} catch (error) {
console.log("Не удалось проверить статус сервера.");
const channel = client.channels.cache.get(channelId);
if (channel) {
channel.send("Я не смог проверить статус вашего сервера.");
} else {
console.log("Не удалось найти канал для отправки сообщения.");
}
}
}
client.login("ТОКЕН_БОТА");
```
Для работы этого кода вам понадобятся следующие пакеты и зависимости:
1. `discord.js` - для работы с Discord API. Установите, выполнив команду `npm install discord.js`.
2. `axios` - для выполнения HTTP-запросов к API Battlemetrics. Установите, выполнив команду `npm install axios`.
Обратите внимание, что вы должны заменить значения переменных `IP_СЕРВЕРА`, `ПОРТ_СЕРВЕРА`, `ID_КАНАЛА_ДИСКОРД` и `ТОКЕН_БОТА` на свои реальные значения.
Код будет проверять статус сервера каждые 5 секунд. Если бот не сможет проверить статус сервера, он отправит сообщение "Я не смог проверить статус вашего сервера" в указанный канал Discord.