تختفي معظم مقاطع الفيديو حسب الطلب (VOD) على Twitch عاجلاً أم آجلاً. إما بسبب انتهاء مدة توفرها أو لأنه تم حذفها بشكل صريح. لذا، إذا لم تنته من مشاهدة VOD في الوقت المناسب، فسيختفي المحتوى. يمكنك تحميل الفيديو، ولكن ماذا عن الدردشة؟ يحل "Twitch VOD Offline Viewer" هذه المشكلة. ما عليك سوى تنزيل الفيديو + الدردشة وتشغيله تمامًا مثل VOD العادي في أي وقت، حتى دون الاتصال بالإنترنت¹.
¹ لن تظهر المشاعر في الدردشة إلا عندما يكون من الممكن تنزيل الصور. لذا، لتتمكن من رؤية المشاعر، لا يزال يتعين عليك الاتصال بالإنترنت.
وقت تشغيل Node.js
توصية: استخدم TwitchDownloader لتنزيل الفيديو المطلوب، راجع علامة التبويب "تنزيل VOD". ولكن أي أداة أخرى لتنزيل VOD ستفي بالغرض أيضًا.
أي برنامج ترميز يدعمه علامة الخاصة بالمتصفح الخاص بك.
توصية: استخدم TwitchDownloader لتنزيل الدردشة المقابلة، راجع علامة التبويب "تنزيل الدردشة". حدد "نص" و"نسبي".
إذا قمت بإنشاء ملف الدردشة بوسائل أخرى، فإن التنسيق المتوقع هو:
[0:00:01] Alice: hi everyone HeyGuys [0:00:01] John: PogChamp [0:00:03] Bob: hey @Alice [0:00:07] Alice: nice to see you, Bob
الطابع الزمني بين قوسين مربعين (يمكن أن تتكون الساعة من رقم أو رقمين)
فضاء
اسم المستخدم، متبوعًا بنقطتين
فضاء
رسالة
السطر الجديد
انقل ملف الفيديو الذي تم تنزيله إلى /stream/video.mp4
. (استبدل الملف الوهمي.)
انقل ملف الدردشة الذي تم تنزيله إلى /stream/chat.txt
. (استبدل الملف الوهمي.)
قم بتشغيل node chat.mjs
لبدء خادم Node.js HTTP الذي سيخدم رسائل الدردشة في متصفحك.
افتح index.html
في متصفحك المفضل.
توقف في أي وقت. يتم تذكر موضع التشغيل واستعادته تلقائيًا.
استخدم watch.bat
للاستئناف (يقوم بالخطوتين 4 و5 لك).
لكي تتمكن من رؤية المشاعر الخاصة بالقناة، ستحتاج إلى تحديد معرف القناة. هناك العديد من الطرق لاسترداد هذه المعلومات، على سبيل المثال باستخدام Twitch Channel ID Finder.
سيتم تنزيل هذه المشاعر تلقائيًا عند بدء تشغيل خادم الدردشة. تأكد من ضبط متغير CHANNEL_ID
في الجزء العلوي من الملف المصدر chat.mjs
قبل تشغيل الخادم.
يتم توفير عواطف Twitch العالمية بشكل افتراضي. ومع ذلك، يجب توفير العواطف الحصرية للبث يدويًا نظرًا لطلب OAuth للوصول إلى Twitch API. بمجرد المصادقة، قم بتقديم الطلب واحفظ استجابة نقطة النهاية باسم
في /emotes/
. تأكد من ضبط متغير CHANNEL_ID
في الجزء العلوي من الملف المصدر chat.mjs
قبل تشغيل الخادم.
قم بإنشاء تطبيق عبر وحدة تحكم مطور Twitch. سيؤدي هذا إلى الحصول على "معرف العميل" و"سر العميل".
اطلب رمز وصول باستخدام client_id
و client_secret
:
curl -L 'https://id.twitch.tv/oauth2/token' -H 'Content-Type: application/x-www-form-urlencoded' -d 'grant_type=client_credentials' -d 'client_id={{client_id}}' -d 'client_secret={{client_secret}}'
قم بتخزين قيمة access_token
من الاستجابة.
جلب معرف القناة:
curl -L 'https://api.twitch.tv/helix/users?login={{channel_name}}' -H 'Authorization: Bearer {{access_token}}' -H 'Client-Id: {{client_id}}'
قم بتخزين قيمة data[0].id
( channel_id
) من الاستجابة.
جلب عواطف القناة:
curl -L 'https://api.twitch.tv/helix/chat/emotes?broadcaster_id={{channel_id}}' -H 'Authorization: Bearer {{access_token}}' -H 'Client-Id: {{client_id}}'
احفظ الرد على الملف.
إذا كنت لا تهتم بأسماء المستخدمين في الدردشة، فقم بتغيير المتغير CHAT_USERNAMES
في ملف المصدر index.html
إلى false
.
CHAT_USERNAMES = true | CHAT_USERNAMES = false |
---|---|
تتسبب عمليات قطع الاتصال القصيرة أثناء البث المباشر في عدم مزامنة سجل الدردشة. لإصلاح مثل هذه المشكلة، يمكنك ضبط المتغير CHAT_OFFSET
في ملف المصدر index.html
. قم بتحديث صفحة الويب لتطبيق التغييرات.
إذا كنت تستخدم ملحق Adblock في متصفحك، مثل uBlock Origin، فقد يكون الاتصال بخادم الدردشة محظورًا. يحدث هذا بسبب حظر الاتصالات من localhost
. قم إما localhost:8787
في القائمة البيضاء أو قم بتعطيل الامتداد بشكل مؤقت.