تحديث 2022
لم يتم تجاهل الموجات فوق الصوتية ، ولكن ليس لدي الكثير من الوقت الذي أرغب في العمل على تطويره. أخطط للعودة إليها في المستقبل، وآمل أن تتمكن من تحمل معي! هناك تحديث قادم مهم يتعلق بـ Ultrasonics-api . أستضيف حاليًا إصدارًا عامًا من طبقة Heroku المجانية، والذي سيتم إيقافه في نهاية نوفمبر 2022 كما تم الإعلان عنه في أغسطس. إنه ضروري لأي خدمات بث عامة (Spotify، Last.fm، إلخ).
ليس لدي أي إعداد بديل حتى الآن، لذا قبل أن يحين الوقت، أحثك على إعداد مثيل واجهة برمجة تطبيقات الموجات فوق الصوتية الخاص بك جنبًا إلى جنب مع الموجات فوق الصوتية ومفاتيح أي خدمات عبر الإنترنت تريد مزامنتها. التعليمات كلها متاحة في هذا الريبو!
ملخص
تثبيت
systemd
الخيار 1 (التثبيت اليدوي)
الخيار 2 (عامل الميناء)
تطبيقات
المدخلات
المعدلات (اختياري)
النواتج
المشغلات
الإضافات
وضع قوائم التشغيل مقابل وضع الأغاني
المساهمة
كتابة البرنامج المساعد الخاص بك
تحسين كود مصدر الموجات فوق الصوتية
مرحبا بكم في الموجات فوق الصوتية !
الموجات فوق الصوتية هي أداة مصممة لمساعدتك في التحكم في مكتبة الموسيقى وقوائم التشغيل الموسيقية الخاصة بك. لقد ولت الأيام التي كانت فيها قوائم التشغيل الخاصة بك متناثرة عبر ثلاث خدمات مختلفة، أو كانت تقتصر على استخدام خدمة واحدة لأنه ليس لديك الوقت الكافي لتنظيم نسخ متعددة يدويًا من نفس قائمة التشغيل.
تستخدم الموجات فوق الصوتية المكونات الإضافية للتفاعل مع خدماتك المفضلة. وهذا يعني أنه يمكن إضافة الوظائف ببساطة عن طريق تثبيت مكون إضافي جديد. قد يوفر كل مكون إضافي التوافق مع إحدى الخدمات، على سبيل المثال، روابط المكون الإضافي الرسمي لـ Spotify تصل إلى... حسنًا، Spotify بالطبع. توفر المكونات الإضافية الأخرى وظائف إضافية، مثل دمج قوائم التشغيل من أكثر من مصدر.
يمكن العثور على نظرة عامة على جميع المكونات الإضافية المضمنة على [الوثائق غير مكتملة].
لتشغيل الموجات فوق الصوتية لديك خياران:
تحميل وتشغيل الموجات فوق الصوتية مباشرة.
قم بسحب وتشغيل صورة عامل الإرساء الرسمية.
تم تطوير الموجات فوق الصوتية على نظام Linux. يجب أن يكون متوافقًا مع الأنظمة الأساسية، ولكن لم يتم اختباره، لذا كن مستعدًا للأخطاء أو المشكلات على نظامي التشغيل Windows / macOS!
تأكد من تثبيت Python 3
# إذا لم يعمل هذا الأمر، قم بتثبيت Python 3callum في uluru في ~↪ python3 --version بايثون 3.8.2
انسخ الريبو إلى دليل التثبيت، ربما /opt/ultrasonics
# انتقل إلى دليل التثبيت الخاص بك callum في uluru في ~↪ cd /opt# انسخ هذا repocallum في uluru في /opt ↪ git clone https://github.com/XDGFX/ultrasonics# تأكد من حصولك على ملكية مجلد الموجات فوق الصوتية callum في uluru في /opt ↪ sudo chown -R callum:callum الفوق صوتيات/
إنشاء بيئة افتراضية، وتثبيت التبعيات المطلوبة بداخلها.
# انتقل إلى دليل الموجات فوق الصوتية callum في uluru في /opt ↪ cd Ultrasonics# قم بإنشاء بيئة افتراضية في المجلد '.venv'callum في uluru في /o/ultrasonics ↪ python3 -m venv .venv# قم بتنشيط البيئة.# إذا كنت تستخدم غلافًا مختلفًا، فاستخدم التنشيط.<shell># على سبيل المثال source .venv/bin/activate.fish للأسماك!callum at uluru in /o/ultrasonics ↪ المصدر .venv/bin/activate# تأكد من أن venv الخاص بك نشط (راجع .venv في بداية السطر)# قم بتثبيت تبعيات Pythoncallum في uluru في /o/ultrasonics (.venv) ↪ pip3 install -r require.txt
قم بتشغيل app.py
# مع استمرار نشاط venv، قم بتشغيل app.pycallum على uluru في /o/ultrasonics (.venv) ↪ python3 app.py
إذا كنت تريد تشغيل هذا كعملية systemd، فاتبع الخطوات التالية:
انسخ ملف الخدمة النموذجي إلى /etc/systemd/system/ultrasonics.service
Sudo cp Ultrasonics.service /etc/systemd/system/ultrasonics.service
أعد تحميل البرنامج الخفي systemctl لالتقاط الخدمة الجديدة
sudo systemctl daemon-reload
تمكين وبدء الخدمة
تمكين سودو systemctl - الآن الموجات فوق الصوتية
يمكنك التحقق من حالة العملية باستخدام:
حالة الموجات فوق الصوتية systemctl
توجد صورة الموجات فوق الصوتية الرسمية على xdgfx/ultrasonics. يمكنك سحبه وتشغيله يدويًا، أو لصقه في ملف docker-compose.yml
الخاص بك.
الإصدار: "3.7" الخدمات: الموجات فوق الصوتية: الصورة: xdgfx/ultrasonicscontainer_name: إعادة تشغيل الموجات فوق الصوتية: المنافذ ما لم يتم إيقافها: - 5000:5000 مجلد: - /path/to/config:/config - /path/to/plugins:/plugins # يستخدم لبيئة المكونات الإضافية التابعة لجهات خارجية: - PUID=${PUID} - PGID=${PGID}
إذا كنت قد استخدمت IFTTT من قبل، فأنت تفهم الأساسيات بالفعل. تعمل الموجات فوق الصوتية مع مفهوم "التطبيقات الصغيرة". يحتوي كل برنامج صغير تقوم بإنشائه على مكونات إضافية تندرج ضمن إحدى الفئات الأربع:
تتصل هذه المكونات الإضافية بخدمة للحصول على قائمة بالأغاني أو قوائم التشغيل، وتمرير تلك القائمة إلى المعدلات والمكونات الإضافية للإخراج.
تأخذ هذه المكونات الإضافية قائمة بالأغاني أو قوائم التشغيل من واحد أو أكثر من مكونات الإدخال الإضافية، وتقوم بتعديل القائمة بطريقة ما. على سبيل المثال، يمكنهم دمج قوائم التشغيل المكررة، أو استبدال الأغاني بأغاني مماثلة باستخدام واجهة برمجة تطبيقات اكتشاف الموسيقى.
تأخذ هذه المكونات الإضافية قائمة قوائم التشغيل التي تم تمريرها إليها، وتحفظها في إحدى الخدمات. ربما يقومون بتحديث أو إنشاء قوائم التشغيل الخاصة بك في Plex، أو حفظها في ملف .m3u على خادم منزلك.
هذه المكونات الإضافية ليست جزءًا من تدفق الأغاني/قوائم التشغيل، ولكنها تحدد بدلاً من ذلك متى يتم تشغيل التطبيق الصغير فعليًا. يعتمد المشغل الأكثر بساطة على الوقت، على سبيل المثال "التشغيل مرة واحدة كل 6 ساعات".
يمكنك إنشاء تطبيقاتك المخصصة باستخدام المكونات الإضافية المثبتة، وحفظها في قاعدة البيانات، وبعد ذلك سيتم تشغيلها تلقائيًا من مكون إضافي Trigger، أو عن طريق تشغيل التطبيق الصغير يدويًا من الصفحة الرئيسية.
تأتي الموجات فوق الصوتية مرفقة بالعديد من المكونات الإضافية الرسمية. لمزيد من المعلومات، راجع [الوثائق غير مكتملة].
يمكن تثبيت المكونات الإضافية الجديدة ببساطة عن طريق نسخ المجلد الذي يحتوي على المكونات الإضافية في دليل plugins
.
يحتاج كل تطبيق صغير إلى إدخال واحد على الأقل ومكوّن إضافي واحد للإخراج. للتشغيل تلقائيًا، يحتاج أيضًا إلى مكون إضافي للتشغيل.
ستحتوي معظم المكونات الإضافية على إعدادات لتكوينها، والتي يمكن أن تكون إعدادات ثابتة عامة (شائعة في جميع مثيلات المكون الإضافي، عبر جميع تطبيقاتك الصغيرة)، أو خاصة بمثيل المكون الإضافي هذا.
سيُطلب منك إدخال أي إعدادات مطلوبة عند إنشاء التطبيق الصغير الخاص بك.
يمكن دائمًا ترك الإعدادات فارغة! في بعض الحالات، يكون هذا أمرًا جيدًا أو متوقعًا، ولكن في حالات أخرى قد يؤدي ذلك إلى أخطاء في البرنامج المساعد قد تتطلب إصلاحًا يدويًا لقاعدة بيانات الموجات فوق الصوتية! تأكد من ملء أي إعدادات من المفترض أن تقوم بها!
تم تصميم بعض المكونات الإضافية للعمل مع قوائم التشغيل - على سبيل المثال، يتفاعل مكون Spotify الإضافي مع قوائم تشغيل Spotify الخاصة بك. تم تصميم بعض المكونات الإضافية للعمل مع الأغاني، على سبيل المثال، أفضل 100 أغنية على Last.fm.
إذا كان المكوّن الإضافي يعمل فقط في وضع الأغاني، فسيتم عرض تحذير على شاشة "تحديد المكوّن الإضافي".
ستعمل إضافة مكون إضافي لوضع الأغاني إلى أحد المدخلات بشكل فعال عن طريق إضافة قائمة تشغيل واحدة إلى تدفق التطبيق الصغير. من المفترض أن يعمل هذا بدون مشكلة، طالما أن المكون الإضافي المعني يوفر اسمًا لقائمة التشغيل الفردية هذه.
من المحتمل أن تؤدي محاولة إدخال قوائم تشغيل متعددة في مكون إضافي واحد لإخراج وضع الأغاني إلى حدوث مشكلات، ولا يوصى بذلك.
هل تريد المساعدة في تحسين الموجات فوق الصوتية؟ بادئ ذي بدء - شكرا لك! باعتباري شخصًا ليس مهندس برمجيات، يعد هذا أحد أكبر المشاريع التي عملت عليها. هي موضع تقدير كبير أي مساعدة أو اقتراحات!
التوسع في وظائف الموجات فوق الصوتية أمر سهل! المكون الإضافي عبارة عن تثبيت بالسحب والإفلات، وبالتالي يمكنه تحسين المشروع بشكل كبير بأقل قدر من التعقيد. أفضل طريقة للتعلم هي من خلال الويكي. يمكنك تفرع هذا المشروع، أو إنشاء الريبو الخاص بك خصيصًا للمكون الإضافي الخاص بك. يمكن أن تظل منفصلة، أو إذا كنت تشعر أنها ستفيد المجتمع من خلال جعلها مكونًا إضافيًا افتراضيًا، فأخبرني بذلك من خلال مشكلة GitHub!
سأضع أي خطط مستقبلية أو مشكلات معروفة أو تحسينات عامة في المشكلات. قم أيضًا بإلقاء نظرة على لوحات المشروعات، والتي يجب أن تعرض المشكلات ذات الأولوية العالية.
أو، إذا كانت لديك فكرة جديدة، جرّبها وأخبرني بطلب سحب أو مشكلة! ؟