X commited on
Commit
1a62579
·
verified ·
1 Parent(s): 9c2bd44

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -34
app.py CHANGED
@@ -50,28 +50,6 @@ def generate_word_code():
50
  word3 = str(random.randint(10, 99))
51
  return f"{word1}-{word2}-{word3}".upper()
52
 
53
- # ========== ЗАПУСК PEERJS ==========
54
- def start_peerjs():
55
- try:
56
- sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
57
- result = sock.connect_ex(('127.0.0.1', 9000))
58
- sock.close()
59
-
60
- if result != 0:
61
- print("🚀 Запускаем PeerJS Server...")
62
- subprocess.Popen(
63
- ["peer", "--port", "9000", "--path", "/peerjs"],
64
- stdout=subprocess.DEVNULL,
65
- stderr=subprocess.DEVNULL,
66
- start_new_session=True
67
- )
68
- time.sleep(3)
69
- print("✅ PeerJS Server запущен")
70
- except Exception as e:
71
- print(f"⚠️ Ошибка запуска PeerJS: {e}")
72
-
73
- threading.Thread(target=start_peerjs, daemon=True).start()
74
-
75
  # ========== FASTAPI ==========
76
  app = FastAPI()
77
 
@@ -306,7 +284,7 @@ async def index(request: Request):
306
  let friends = [];
307
  let currentCode = null;
308
 
309
- // ========== ИНИЦИАЛИЗАЦИЯ PEER ==========
310
  function initPeer(callback) {
311
  if (myPeer && myPeer.open) {
312
  if (callback) callback();
@@ -320,11 +298,12 @@ async def index(request: Request):
320
  }
321
  myId = savedId;
322
 
 
323
  myPeer = new Peer(myId, {
324
- host: window.location.hostname,
325
- port: window.location.port || (window.location.protocol === 'https:' ? 443 : 80),
326
- path: '/peerjs',
327
- secure: window.location.protocol === 'https:'
328
  });
329
 
330
  myPeer.on('open', (id) => {
@@ -340,7 +319,6 @@ async def index(request: Request):
340
  console.error('Peer error:', err);
341
  });
342
 
343
- // Если Peer уже открыт
344
  if (myPeer.open) {
345
  if (callback) callback();
346
  }
@@ -356,7 +334,6 @@ async def index(request: Request):
356
  return;
357
  }
358
 
359
- // Проверяем формат: СЛОВО-СЛОВО-ЧИСЛО
360
  const parts = code.split('-');
361
  if (parts.length !== 3 || isNaN(parts[2])) {
362
  status.innerHTML = '<div class="status error">❌ Неверный формат. Пример: СОЛНЦЕ-ЛУНА-42</div>';
@@ -384,14 +361,12 @@ async def index(request: Request):
384
 
385
  status.innerHTML = `<div class="status success">✅ Добро пожаловать, ${d.name}!</div>`;
386
 
387
- // Показываем профиль
388
  document.getElementById('profile-section').classList.remove('hidden');
389
  document.getElementById('friends-section').classList.remove('hidden');
390
  document.getElementById('profile-name').textContent = d.name;
391
  document.getElementById('profile-id').textContent = d.peer_id;
392
  document.getElementById('login-section').style.display = 'none';
393
 
394
- // Инициализируем Peer
395
  initPeer(() => {
396
  loadFriends();
397
  });
@@ -618,14 +593,12 @@ async def login(data: dict):
618
  users = load_json(USERS_FILE)
619
 
620
  if code in users:
621
- # Вход в существующий аккаунт
622
  return JSONResponse({
623
  "success": True,
624
  "name": users[code]["name"],
625
  "peer_id": users[code]["peer_id"]
626
  })
627
  else:
628
- # Создание нового аккаунта
629
  peer_id = str(uuid.uuid4())
630
  name = f"User_{len(users) + 1}"
631
  users[code] = {
@@ -647,7 +620,6 @@ async def generate_code():
647
  try:
648
  users = load_json(USERS_FILE)
649
  code = generate_word_code()
650
- # Проверяем уникальность
651
  while code in users:
652
  code = generate_word_code()
653
  return JSONResponse({"success": True, "code": code})
 
50
  word3 = str(random.randint(10, 99))
51
  return f"{word1}-{word2}-{word3}".upper()
52
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
53
  # ========== FASTAPI ==========
54
  app = FastAPI()
55
 
 
284
  let friends = [];
285
  let currentCode = null;
286
 
287
+ // ========== ИНИЦИАЛИЗАЦИЯ PEER (CLOUD) ==========
288
  function initPeer(callback) {
289
  if (myPeer && myPeer.open) {
290
  if (callback) callback();
 
298
  }
299
  myId = savedId;
300
 
301
+ // ИСПРАВЛЕНО: используем облачный PeerJS сервер
302
  myPeer = new Peer(myId, {
303
+ host: '0.peerjs.com',
304
+ port: 443,
305
+ path: '/',
306
+ secure: true
307
  });
308
 
309
  myPeer.on('open', (id) => {
 
319
  console.error('Peer error:', err);
320
  });
321
 
 
322
  if (myPeer.open) {
323
  if (callback) callback();
324
  }
 
334
  return;
335
  }
336
 
 
337
  const parts = code.split('-');
338
  if (parts.length !== 3 || isNaN(parts[2])) {
339
  status.innerHTML = '<div class="status error">❌ Неверный формат. Пример: СОЛНЦЕ-ЛУНА-42</div>';
 
361
 
362
  status.innerHTML = `<div class="status success">✅ Добро пожаловать, ${d.name}!</div>`;
363
 
 
364
  document.getElementById('profile-section').classList.remove('hidden');
365
  document.getElementById('friends-section').classList.remove('hidden');
366
  document.getElementById('profile-name').textContent = d.name;
367
  document.getElementById('profile-id').textContent = d.peer_id;
368
  document.getElementById('login-section').style.display = 'none';
369
 
 
370
  initPeer(() => {
371
  loadFriends();
372
  });
 
593
  users = load_json(USERS_FILE)
594
 
595
  if code in users:
 
596
  return JSONResponse({
597
  "success": True,
598
  "name": users[code]["name"],
599
  "peer_id": users[code]["peer_id"]
600
  })
601
  else:
 
602
  peer_id = str(uuid.uuid4())
603
  name = f"User_{len(users) + 1}"
604
  users[code] = {
 
620
  try:
621
  users = load_json(USERS_FILE)
622
  code = generate_word_code()
 
623
  while code in users:
624
  code = generate_word_code()
625
  return JSONResponse({"success": True, "code": code})