كيفية نشر الصور تلقائيًا في قناة Discord

ديب لاب

ديب لاب

Moderator
مشـــرف
17 ديسمبر 2023
1,579
8
36
Advertisement
Discord image auto upload cover image

هل تدير خادم Discord وترغب في نشر الصور تلقائيًا على قناة معينة على فترات منتظمة دون تحريك إصبعك؟ ستوضح لك هذه المقالة كيفية تحميل الصور تلقائيًا إلى قناة Discord باستخدام أداة Discord-AIU والبرامج النصية المخصصة.
Advertisement

تخيل أنك تدير خادم Discord مخصصًا للأنيمي، وترغب في إبقاء أعضائك منخرطين من خلال نشر أعمال فنية جديدة كل يوم. تبدو الفكرة بسيطة التنفيذ: ما عليك سوى أن تتذكر نشر صورة كل 24 ساعة، أليس كذلك؟ خطأ. تصبح الحياة مزدحمة، وقبل أن تدرك ذلك، يصرخ أعضاؤك في وجهك، متسائلين عن أين ذهبت جرعتهم اليومية من الأنيمي. هنا يأتي دور الأتمتة لإنقاذ الموقف – وعقلك.

Advertisement
لنشر الصور تلقائيًا على قناة Discord الخاصة بك، سنستخدم مجموعة من الأدوات والبرامج النصية. هدفنا الرئيسي هو إعداد نظام يقوم بتحميل الصور بانتظام إلى قناة Discord المحددة الخاصة بك دون أي تدخل يدوي. سنستخدم
من فضلك قم , تسجيل الدخول أو تسجيل لعرض المحتوى
(أداة تحميل الصور التلقائية) كأساس لنا، إلى جانب بعض البرامج النصية المخصصة للتعامل مع عملية الجدولة واختيار الصور.

Advertisement

تثبيت Discord-AIU​


الآن بعد أن حددنا هدفنا، فلنبدأ في إنشاء روبوت تحميل الصور باستخدام Discord-AIU. أولاً، ستحتاج إلى تنزيل Discord-AIU منها
من فضلك قم , تسجيل الدخول أو تسجيل لعرض المحتوى
أنصحك بالحصول على الإصدار الأحدث وفك ضغطه في مكان مناسب. تم تطوير الأداة بلغة بايثون، لذا يمكنك تشغيلها على أي نظام تشغيل رئيسي.
Advertisement

Download discord aiu from github 800x419

Advertisement
بمجرد تنزيل Discord-AIU، ستحتاج إلى تثبيت تبعيات Python الضرورية. إذا تم تثبيت Python على نظامك، فيمكنك فقط فتح المحطة الطرفية أو موجه الأوامر، والانتقال إلى دليل Discord-AIU، وتشغيل الأمر pdm install (قد تحتاج أيضًا إلى
من فضلك قم , تسجيل الدخول أو تسجيل لعرض المحتوى
لتنفيذه).

Advertisement
Discord aiu dependencies installation 800x507

سيقوم الأمر بتثبيت جميع الحزم المطلوبة للأداة للعمل بشكل صحيح، وهي: pillow، وpython-dotenv، وrequests.
Advertisement

إنشاء نقطة نهاية Webhook لقناتك​


الخطوة التالية هي إنشاء نقطة نهاية webhook في خادم Discord الخاص بك. هذا الخطاف هو نقطة الاتصال بين Discord-AIU وخادمك. للقيام بذلك، افتح اعدادات الخادم وانتقل إلى التكاملات فاتورة غير مدفوعة.
Advertisement

Discord create webhook 800x460

Advertisement
اضغط على إنشاء Webhook اضغط على الزر، وستظهر لك خيارات لتخصيص خطاف الويب الخاص بك. يمكنك تحرير الصورة الرمزية واختيار القناة التي سيتم نشر الصور عليها وإعطاء خطاف الويب الخاص بك اسمًا.

Discord copy webhook url 800x460
Advertisement

بعد إعداد هذه الإعدادات، يمكنك النقر فوق نسخ عنوان URL لـ Webhook زر للحصول على عنوان URL لخطاف الويب الذي تم إنشاؤه حديثًا.

Advertisement

تكوين إعدادات Discord-AUI​


بعد إعداد خطاف الويب الخاص بك، حان الوقت لتكوين Discord-AIU. افتح مجلد Discord-AUI وانتقل إلى المصدر مجلد فرعي.

Advertisement
Discord aiu src subfolder 800x379

هناك، ابحث عن ملف يسمى discord_aiu.py وافتحه في محرر النصوص المفضل لديك. الصق عنوان URL لـ Webhook في خيار التكوين المقابل بالقرب من أعلى الملف. يجب أن يبدو الأمر على هذا النحو:
Advertisement


WEBHOOK_URL = "

Advertisement

أوصيك أيضًا بتعديل خيار تكوين FOLDER_PATH بناءً على تفضيلاتك. بشكل افتراضي، يتم تعيينه على:

Advertisement

FOLDER_PATH = './images/'


Advertisement
هذا المسار نسبي لموقع ملف discord_aiu.py. بمعنى آخر، يجب إنشاء مجلد “images” في نفس الدليل الذي يحتوي على البرنامج النصي discord_aiu.py. لا تتردد في حفظ الملف وإنشاء المجلد الآن.

نشر صور متعددة تلقائيًا على Discord​


Advertisement
لاختبار ما إذا كان Discord-AUI يعمل كما ينبغي، ضع صورة أو أكثر كعينة في مجلد الصور الذي حددته حديثًا. ثم افتح المحطة الطرفية أو موجه الأوامر، وانتقل إلى دليل Discord-AIU، وقم بتشغيل الأمر التالي:


Advertisement
pdm run ./src/discord_aiu.py


إذا تم إعداد كل شيء بشكل صحيح، فيجب أن ترى ظهور جميع صور الاختبار في قناة Discord المخصصة في غضون لحظات. يمكنك أيضًا إلقاء نظرة على مخرجات الأداة، والتي يجب أن تخبرك بالضبط بعدد الصور التي تم تحميلها بنجاح.
Advertisement

Discord aiu 800x495

Advertisement
المشكلة الوحيدة هي أن الأمر يقوم دائمًا بتحميل جميع الصور الموجودة في المجلد المحدد بشكل مجمع. ورغم أن هذا قد يكون مفيدًا للغاية ويوفر الوقت إذا كنت بحاجة إلى مشاركة الكثير من الصور مع مجتمعك، فإن هدفنا هو تحميل صورة واحدة في كل مرة إلى Discord تلقائيًا على فترات منتظمة. ولحسن الحظ، كل ما نحتاجه هو نص برمجي مخصص.

جدولة Discord-AUI للتنفيذ على فترات منتظمة​


Advertisement
الآن بعد أن تأكدنا من عمل Discord-AUI، فلنبدأ في أتمتة عملية نشر الصور على فترات منتظمة. سننشئ نصًا برمجيًا ينفذ المهام التالية:

  1. يختار ملفًا عشوائيًا من مجلد قائمة الانتظار.
  2. ينقله إلى مجلد الصور.
  3. تنفيذ أداة Discord-AUI.
  4. نقل الصورة التي تم تحميلها إلى مجلد “تم تحميلها”.

Advertisement
إذا كنت تستخدم نظام التشغيل Windows، فأنت بحاجة إلى إنشاء ملف نص عادي جديد (يمكنك استخدام المفكرة) ونسخ ولصق الكود التالي:


Advertisement
$QUEUE_FOLDER = "C:\path\to\Discord-AIU\src\queue"
$IMAGES_FOLDER = "C:\path\to\Discord-AIU\src\images"
$UPLOADED_FOLDER = "C:\path\to\Discord-AIU\src\uploaded"
Advertisement
$DISCORD_AIU_PATH = "C:\path\to\Discord-AIU\src\discord_aiu.py"

# Pick a random file from the queue
Advertisement
$RANDOM_FILE = Get-ChildItem -Path $QUEUE_FOLDER | Get-Random -Count 1

if ($RANDOM_FILE) {
Advertisement
# Move the file to the images folder
Move-Item -Path $RANDOM_FILE.FullName -Destination $IMAGES_FOLDER

Advertisement
# Run Discord-AIU
Set-Location -Path "C:\path\to\Discord-AIU"
pdm run $DISCORD_AIU_PATH
Advertisement

# Move the processed file to the uploaded folder
$PROCESSED_FILE = Get-ChildItem -Path $IMAGES_FOLDER
Advertisement
Move-Item -Path $PROCESSED_FILE.FullName -Destination $UPLOADED_FOLDER
}


Advertisement
حفظ البرنامج النصي باسم سكربت.ps1 أو شيء مماثل (.ps1 هو امتداد لنصوص PowerShell).

يمكن لمستخدمي Linux وmacOS إنشاء سكربت.sh ملف يحتوي على البرنامج النصي bash التالي:
Advertisement


#!/bin/bash
Advertisement

QUEUE_FOLDER="/path/to/Discord-AIU/src/queue"
IMAGES_FOLDER="/path/to/Discord-AIU/src/images"
Advertisement
UPLOADED_FOLDER="/path/to/Discord-AIU/src/uploaded"
DISCORD_AIU_PATH="/path/to/Discord-AIU/src/discord_aiu.py"

Advertisement
# Pick a random file from the queue
RANDOM_FILE=$(find "$QUEUE_FOLDER" -type f | shuf -n 1)

Advertisement
if [ -n "$RANDOM_FILE" ]; then
# Move the file to the images folder
mv "$RANDOM_FILE" "$IMAGES_FOLDER"
Advertisement

# Run Discord-AIU
cd /path/to/Discord-AIU && pdm run "$DISCORD_AIU_PATH"
Advertisement

# Move the file to the uploaded folder
mv "$IMAGES_FOLDER"/* "$UPLOADED_FOLDER"
Advertisement
fi


لا تنس إنشاء المجلدات اللازمة وتعديل المسارات لتعكس مواقعها، بالإضافة إلى موقع مجلد Discord-AIU نفسه. تحتاج أيضًا إلى جعل البرنامج النصي قابلاً للتنفيذ باستخدام chmod +X /path/to/script يأمر.
Advertisement

أخيرًا، تحتاج إلى جدولة ملف script.ps1 (Windows) أو ملف script.sh (Linux وmacOS) ليتم تشغيله تلقائيًا – لنقل مرة واحدة يوميًا.

Advertisement
باعتبارك مستخدمًا لنظام التشغيل Windows، يمكنك فتح جدول المهام من خلال البحث عنه في قائمة ابدأ، انقر فوق إنشاء مهمة أساسية في اللوحة اليمنى وأعطي مهمتك اسمًا، مثل “Discord Image Uploader”.

Task scheduler windows create basic task 800x519
Advertisement

يختار يوميًا للتشغيل وضبط الوقت المفضل لديك. بالنسبة للإجراء، حدد بدء برنامج. في ال البرنامج/النص الحقل، أدخل “powershell”، وفي إضافة الحجج الحقل، أدخل -ExecutionPolicy Bypass -File "C:\path\to\your\script.ps1".

Advertisement
Crontab macos 800x507

إذا كنت تستخدم Linux أو macOS، فيمكنك فتح صالة و النوع
Advertisement

لتحرير مهام cron الخاصة بك (يمكنك أيضًا استخدام sudo EDITOR=nano crontab -e (لاستخدام محرر Nano بدلاً من Vim).

Advertisement
أضف سطرًا جديدًا لتشغيل البرنامج النصي يوميًا في الساعة 12:00 ظهرًا (الظهر)، والذي يبدو بهذا الشكل:


Advertisement
0 12 * /path/to/your/script.sh


احفظ ثم اخرج من المحرر.
Advertisement

بمجرد إكمال هذه الخطوات، سيتم تشغيل البرنامج النصي الذي اخترته تلقائيًا كل يوم، مما يجعل قناة Discord الخاصة بك متجددة بالصور الجديدة. فقط تذكر أن تحرص على إبقاء مجلد قائمة الانتظار لديك مليئًا بالصور الجديدة لضمان تدفق ثابت للمحتوى. إذا كنت ترغب في جعل خادمك مكانًا أكثر تسلية للزيارة، فيمكنك متابعة ذلك من خلال تعلم كيفية تحويل Raspberry Pi إلى محطة راديو Discord.
 
Advertisement
Advertisement