import {useApp} from '../../context/AppContext'; import {getToken} from '../../services/auth'; import React, { useEffect, useState, useRef } from 'react'; import { Send, CheckCircle2, AlertTriangle, Loader2, Unplug } from 'lucide-react'; import { telegramDurum, telegramBagla, telegramTest, telegramSil } from '../../services/account'; /** * Telegram bildirim bağlantısı — kullanıcı kendi kurar. * Bot tokenı sunucuda (TELEGRAM_BOT_TOKEN); kullanıcı 6 haneli kodu bota yazar, * "Doğrula" deyince sunucu kodu görüp sohbeti hesaba bağlar. Token bizden geçmez. */ const kodUret = () => String(Math.floor(100000 + Math.random() * 900000)); export const TelegramBaglanti = () => { const {authUser,isAdmin}=useApp(); return ; }; const TelegramPanel = ({isAdmin}) => { const [d, setD] = useState(null); const [kod] = useState(kodUret); const [busy, setBusy] = useState(null); const [mesaj, setMesaj] = useState(null); const alive=useRef(true),locked=useRef(false); const yenile = async () => { const data=await telegramDurum(); if(typeof data.bagli!=='boolean'||typeof data.yapilandirilmis!=='boolean')throw new Error('Telegram bağlantı durumu doğrulanamadı.'); if(alive.current)setD(data); }; const calistir = async (ad, fn, basari) => { if(locked.current)return;locked.current=true; setBusy(ad);setMesaj(null); try {await fn();if(!alive.current)return;if(ad!=='load')await yenile();if(alive.current&&basari)setMesaj({tur:'ok',metin:basari});} catch(e){if(alive.current)setMesaj({tur:'hata',metin:e.message});} finally{locked.current=false;if(alive.current)setBusy(null);} }; useEffect(()=>{alive.current=true;void calistir('load',yenile);return()=>{alive.current=false;};},[]); if(!d)return

Telegram Bildirimi

{busy&&

Bağlantı durumu yükleniyor…

} {mesaj&&

{mesaj.metin}

}
; return (

Telegram Bildirimi

{d.bagli ? bağlı{d.ad ? ` · ${d.ad}` : ''} : bağlı değil}

Telegram bağlantısı ve ilgili bildirim hizmetleri etkinse ihale özetleri bu kanaldan gönderilebilir. Gönderim, okunma veya her kaynak değişikliğinin yakalanması garanti edilmez.

{!d.yapilandirilmis ? (
{isAdmin ? <>

Sunucuda Telegram botu henüz tanımlı değil. Kurulum (yönetici, bir kez):

  1. Telegram'da @BotFather'a yazın: /newbot → bir ad ve …bot ile biten kullanıcı adı verin.
  2. BotFather'ın verdiği tokenı Coolify → ihaleist → Environment'a TELEGRAM_BOT_TOKEN olarak ekleyin, Redeploy.
  3. Bu sayfa yeniden açıldığında aşağıdaki bağlama adımları görünür.

Token yalnızca sunucuda durur; uygulamaya girilmez.

:

Telegram bildirim hizmeti henüz etkin değil. Kurulum için yöneticinizle görüşün.

}
) : d.bagli ? (
) : (

Bağlamak için 3 adım:

  1. Telegram'da botu açın:{' '} {d.bot ? @{d.bot} : (bot adı alınamadı — yöneticiye sorun)} {' '}ve Başlat'a basın.
  2. Bota şu kodu yazıp gönderin: {kod}
  3. Sonra buraya dönüp Doğrula'ya basın.
)} {mesaj && (
{mesaj.tur === 'ok' ? : } {mesaj.metin}
)}
); };