Reoo88 commited on
Commit
33e44f7
·
verified ·
1 Parent(s): 01d4ebd

Update index.js

Browse files
Files changed (1) hide show
  1. index.js +25 -22
index.js CHANGED
@@ -2,14 +2,17 @@ const { WebcastPushConnection } = require('tiktok-live-connector');
2
  const axios = require('axios');
3
  const dns = require('dns');
4
 
5
- // --- إعداداتك الخاصة ⚙️ ---
6
- const TIKTOK_USERNAME = "talalmsa455";
7
  const TELEGRAM_TOKEN = "8576498050:AAHB51H9vLwFhDUFqYWttPaSa5qhPLzQVWE";
8
  const TELEGRAM_CHAT_ID = "-1002856018359";
9
 
10
  dns.setServers(['8.8.8.8']);
11
 
12
- // دالة إرسال الرسائل إلى تلجرام 📨
 
 
 
13
  async function sendToTelegram(text) {
14
  try {
15
  const addrs = await new Promise(r => dns.resolve4('api.telegram.org', (e, a) => r(a)));
@@ -17,12 +20,11 @@ async function sendToTelegram(text) {
17
  chat_id: TELEGRAM_CHAT_ID,
18
  text: text,
19
  parse_mode: 'HTML',
20
- disable_web_page_preview: false
21
  }, { headers: { 'Host': 'api.telegram.org' } });
22
  } catch (e) { console.log("خطأ في إرسال التلجرام"); }
23
  }
24
 
25
- // إعداد الاتصال ببث تيك توك 📡
26
  let tiktokConnection = new WebcastPushConnection(TIKTOK_USERNAME, {
27
  processInitialData: true,
28
  enableWebsocketUpgrade: true,
@@ -32,40 +34,41 @@ let tiktokConnection = new WebcastPushConnection(TIKTOK_USERNAME, {
32
  }
33
  });
34
 
35
- let lastViewerCount = 0;
36
-
37
- // 1. حدث: عند اكتشاف بدء البث المباشر 🔴
38
  tiktokConnection.connect().then(state => {
 
 
 
 
39
  const liveLink = `https://www.tiktok.com/@${TIKTOK_USERNAME}/live`;
40
  const msg = `🚀 <b>بدأ البث المباشر الآن!</b>\n\n` +
41
  `👤 الحساب: <code>${TIKTOK_USERNAME}</code>\n` +
42
  `🔗 الرابط: ${liveLink}\n` +
43
  `📊 الحالة: متصل وجاري المراقبة`;
44
  sendToTelegram(msg);
45
- console.log("✅ تم إرسال تنبيه بدء البث والرابط");
46
  }).catch(err => {
47
- console.log("🔎 الحساب أوفلاين، سأحاول مجدداً بعد قليل...");
48
  });
49
 
50
- // 2. حدث: تحديث عدد المشاهدين بشكل دوري 👁️
51
  tiktokConnection.on('roomUser', (data) => {
52
- const currentViewers = data.viewerCount;
53
- console.log(`📈 عدد المشاهدين الحالي: ${currentViewers}`);
54
 
55
- // إرسال تحديث للتلجرام فقط إذا تغير العدد بمقدار كبير (مثلاً 50 مشاهد)
56
- // لتجنب إزعاجك بكثرة الرسائل
57
- if (Math.abs(currentViewers - lastViewerCount) >= 50) {
58
- const liveLink = `https://www.tiktok.com/@${TIKTOK_USERNAME}/live`;
59
- sendToTelegram(`📊 <b>تحديث عدد المشاهدين</b>\n\n👁️ العدد الحالي: <b>${currentViewers}</b>\n🔗 الرابط: ${liveLink}`);
60
- lastViewerCount = currentViewers;
 
 
 
61
  }
62
  });
63
 
64
- // 3. إعادة الاتصال التلقائي 🔄
65
  tiktokConnection.on('disconnected', () => {
66
- console.log("🔌 انقطع الاتصال، جاري إعادة المحاولة...");
67
  setTimeout(() => tiktokConnection.connect(), 15000);
68
  });
69
 
70
- // سيرفر للبقاء نشطاً على Hugging Face 🔌
71
  require('http').createServer((req, res) => res.end('Radar Active')).listen(7860);
 
2
  const axios = require('axios');
3
  const dns = require('dns');
4
 
5
+ // --- إعدادات الحساب الجديد والتلجرام ⚙️ ---
6
+ const TIKTOK_USERNAME = "ah_md107";
7
  const TELEGRAM_TOKEN = "8576498050:AAHB51H9vLwFhDUFqYWttPaSa5qhPLzQVWE";
8
  const TELEGRAM_CHAT_ID = "-1002856018359";
9
 
10
  dns.setServers(['8.8.8.8']);
11
 
12
+ // متغيرات لتتبع حالة الإشعارات لضمان عدم التكرار المزعج 🔑
13
+ let notified150 = false;
14
+ let notified200 = false;
15
+
16
  async function sendToTelegram(text) {
17
  try {
18
  const addrs = await new Promise(r => dns.resolve4('api.telegram.org', (e, a) => r(a)));
 
20
  chat_id: TELEGRAM_CHAT_ID,
21
  text: text,
22
  parse_mode: 'HTML',
23
+ disable_web_page_preview: false // للسماح بظهور صورة الحساب من الرابط 🖼️
24
  }, { headers: { 'Host': 'api.telegram.org' } });
25
  } catch (e) { console.log("خطأ في إرسال التلجرام"); }
26
  }
27
 
 
28
  let tiktokConnection = new WebcastPushConnection(TIKTOK_USERNAME, {
29
  processInitialData: true,
30
  enableWebsocketUpgrade: true,
 
34
  }
35
  });
36
 
37
+ // 1. إشعار عند فتح البث مباشرة 🚀
 
 
38
  tiktokConnection.connect().then(state => {
39
+ // تصفير الحالات عند بداية كل بث جديد
40
+ notified150 = false;
41
+ notified200 = false;
42
+
43
  const liveLink = `https://www.tiktok.com/@${TIKTOK_USERNAME}/live`;
44
  const msg = `🚀 <b>بدأ البث المباشر الآن!</b>\n\n` +
45
  `👤 الحساب: <code>${TIKTOK_USERNAME}</code>\n` +
46
  `🔗 الرابط: ${liveLink}\n` +
47
  `📊 الحالة: متصل وجاري المراقبة`;
48
  sendToTelegram(msg);
 
49
  }).catch(err => {
50
+ console.log("🔎 يبحث عن بث نشط...");
51
  });
52
 
53
+ // 2. مراقبة مستويات المشاهدين (150 و 200) 👁️
54
  tiktokConnection.on('roomUser', (data) => {
55
+ const viewers = data.viewerCount;
56
+ const liveLink = `https://www.tiktok.com/@${TIKTOK_USERNAME}/live`;
57
 
58
+ // تنبيه عند وصول المشاهدين إلى 200 فأكثر 🔥
59
+ if (viewers >= 200 && !notified200) {
60
+ sendToTelegram(`🔥 <b>إنجاز جديد! البث يتخطى 200 مشاهد</b>\n\n👁️ العدد الحالي: <b>${viewers}</b>\n🔗 الرابط: ${liveLink}`);
61
+ notified200 = true; // إغلاق التنبيه لمنع التكرار
62
+ }
63
+ // تنبيه عند وصول المشاهدين إلى 150 (ولم يصل للـ 200 بعد) 📈
64
+ else if (viewers >= 150 && viewers < 200 && !notified150) {
65
+ sendToTelegram(`📈 <b>تحديث: البث يتخطى 150 مشاهد</b>\n\n👁️ العدد الحالي: <b>${viewers}</b>\n🔗 الرابط: ${liveLink}`);
66
+ notified150 = true; // إغلاق التنبيه لمنع التكرار
67
  }
68
  });
69
 
 
70
  tiktokConnection.on('disconnected', () => {
 
71
  setTimeout(() => tiktokConnection.connect(), 15000);
72
  });
73
 
 
74
  require('http').createServer((req, res) => res.end('Radar Active')).listen(7860);