واجهة برمجة التطبيقات للتكامل المخصص
واجهة برمجة تطبيقات التكامل المخصصة T 778
المعلومات الواردة في هذا الدليل هي ملكية لشركة Lenbrook Industries.
هذا البروتوكول مخصص للاستخدام المهني فقط. لا تتحمل شركة لينبروك إندستريز أي مسؤولية عن دقة هذا البروتوكول. يُقدم هذا البروتوكول "كما هو"، مع جميع العيوب، ودون أي ضمان من أي نوع، سواءً صريحًا أو ضمنيًا.
سياسة استخدام واجهة برمجة التطبيقات
بالوصول إلى واجهات برمجة التطبيقات، فإنك توافق على سياسة استخدام واجهات برمجة التطبيقات هذه ("السياسة") وشروطنا. نوفر واجهات برمجة التطبيقات هذه لتمكين الشركات والأفراد من الاستفادة من خدمتنا من خلال إنشاء برامج أو خدمات أو وحدات متصلة بمنصتنا أو يمكنها الوصول إلى البيانات داخلها عبر واجهات برمجة التطبيقات الخاصة بنا ("التكامل"). تُعتبر هذه السياسة، وستظل، جزءًا من شروطنا.
يُقدَّم البرنامج "كما هو"، دون أي ضمان من أي نوع، صريحًا كان أم ضمنيًا، بما في ذلك على سبيل المثال لا الحصر ضمانات قابلية التسويق والملاءمة لغرض معين وعدم التعدي. لا يتحمل المؤلفون أو أصحاب حقوق الطبع والنشر، بأي حال من الأحوال، مسؤولية أي مطالبة أو أضرار أو أي مسؤولية أخرى، سواءً في دعوى عقدية أو دعوى ضرر أو غير ذلك، ناشئة عن البرنامج أو استخدامه أو أي تعاملات أخرى تتعلق به، أو مرتبطة به.
الاستخدام المسموح به
لا يجوز لك استخدام واجهة برمجة التطبيقات (API) لإرسال رسائل غير مرغوب فيها أو اتخاذ أي إجراءات تنتهك سياسة الاستخدام المقبول وشروط الاستخدام القياسية. تلتزم بجميع القوانين السارية (بما في ذلك قوانين الخصوصية وقوانين مراقبة الصادرات الأمريكية، ولوائح حماية البيانات العامة الأوروبية (GPR) وقوانين ولوائح العقوبات الاقتصادية). تلتزم بجميع الوثائق التي نقدمها لواجهات برمجة التطبيقات. لن تحاول اختراق أو تغيير طريقة عمل الخدمة. قد نراقب استخدامك لواجهات برمجة التطبيقات للتأكد من امتثالك لهذه القواعد، وقد نمنعك من الوصول إليها في حال انتهاكك لهذه السياسة.
خصوصية
لك يجب أن يعرض التكامل سياسة خصوصية للمستخدمين، تُفصّل المعلومات التي ستجمعها منهم عند استخدامهم له. لن تتمكن من الوصول إلى بيانات المستخدم إلا بالقدر الذي يسمح به المستخدم والموضح في سياسة الخصوصية الخاصة بك. يجب عليك حذف بيانات المستخدم فورًا إذا طلب الحذف أو أنهى حسابه لديك.
حماية
ستُطبّق وتُحافظ على إجراءات أمنية تقنية وتنظيمية مناسبة لحماية البيانات والحفاظ على أمنها وسلامتها وسريتها. ستمنع هذه الإجراءات الأمنية الوصول غير المصرح به أو الكشف عن البيانات الشخصية أو السرية التي تُعالجها.
ملكية
نمتلك جميع الحقوق والملكيات والمصالح في الخدمة وواجهات برمجة التطبيقات، بما في ذلك جميع حقوق الملكية الفكرية والعلامات التجارية والرموز والميزات. لن تنتهك أو تُجري هندسة عكسية أو تنسخ رموزنا أو تصميمنا أو محتوانا. لن تتمكن من الوصول إلى واجهات برمجة التطبيقات الخاصة بنا للتنافس مع خدمتنا. أي حقوق غير ممنوحة صراحةً بموجب هذه السياسة محجوبة، لذا إن لم تجدها هنا، فهذا ليس حقًا نمنحه لك.
استخدام العلامات التجارية
لا يجوز لك استخدام اسمنا وعلاماتنا التجارية (أي شعاراتنا وعلاماتنا التجارية وصورنا المحمية بحقوق الطبع والنشر) بأي شكل من الأشكال. لا يجوز لك تعديل أو إزالة أي إشعارات ملكية من علاماتنا التجارية. لا يجوز لك استخدام اسمنا أو علاماتنا التجارية في اسمك أو شعارك الخاص بشركة Integration، أو بأي شكل يوحي بموافقتنا.
الاستخدام العملي للعلامات التجارية
تشرح هذه الإرشادات كيفية استخدام اسمنا وعلاماتنا التجارية وأصول علامتنا التجارية عمليًا في جميع الأوقات. استخدامك يُشير إلى موافقتك على هذه الإرشادات، وتُدرك أن استخدامك المُخالف لهذه الإرشادات سيؤدي تلقائيًا إلى إنهاء إذنك باستخدام اسمنا وعلاماتنا التجارية وأصول علامتنا التجارية.
- يجب أن يتم ترخيص استخدام اسمنا وعلاماتنا التجارية وأصول علامتنا التجارية صراحةً وكتابيًا.
- لا يجوز تغيير أو تعديل أو تشويه أو نسخ أو تقليد أصول علامتنا التجارية بأي شكل من الأشكال، بما في ذلك تغيير اللون أو التدوير أو التمديد. بمعنى آخر، يجب الحفاظ على أصول علامتنا التجارية في شكلها الأصلي.
- لا تعطي اسمنا وعلاماتنا التجارية وأصول علامتنا التجارية أهمية غير مناسبة مقارنة باسمك وشعارك.
- لا يجوز عرض اسمنا أو علاماتنا التجارية أو أصول علامتنا التجارية بجوار أو في أي شكل من أشكال التسويق التنافسي، دون الحصول على موافقتنا الصريحة.
- يجب ألا يؤدي استخدامك إلى تضليل المستهلكين فيما يتعلق برعايتنا أو ارتباطنا أو تأييدنا لشركتك أو منتجاتك أو خدماتك.
- اسمنا وعلاماتنا التجارية وأصول علامتنا التجارية ملكٌ لنا حصريًا. كل ما ينتج عن استخدامك سيكون لمصلحتنا حصرًا. لن تتخذ أي إجراء يتعارض مع حقوقنا أو ملكيتنا.
- يجب استخدام اسمنا وعلاماتنا التجارية وأصول علامتنا التجارية باحترام، ولا يجوز استخدامها بطريقة تضر بنا أو بمنتجاتنا أو خدماتنا، أو بطريقة نرى أنها تُضعف أو تُضر بسمعتنا أو بسمعة اسمنا وعلاماتنا التجارية وأصول علامتنا التجارية. بمعنى آخر، يُرجى عدم ربط أصولنا بأي أنشطة غير مشروعة أو غير قانونية، أو استخدامها بطريقة خادعة أو ضارة.
Exampشروط الاستخدام المقبول:
"[اسم منتجك] (متوافق مع / يعمل مع BluOS)"
Exampقواعد الاستخدام غير المقبول
"[اسم منتجك] – BluOS"
"BluOS – [اسم منتجك]"
"[اسم منتجك] – يعمل بنظام BluOS"
التسويق والبيانات الصحفية
بعد الموافقة على طلبك، قد يتم إدراجه في قائمتنا البريدية. web الخصائص. لن نشارك عادةً في نشر البيانات الصحفية أو نساهم في التسويق المشترك لتطبيقك.
قبل نشر بيان صحفي حول تطبيقك، تأكد من التواصل معنا عبر البريد الإلكتروني [EMAIL]. إذا كنت ستذكر BluOS، فسنحتاج إلى إعادةview ننصحك بإرسال بيانك الصحفي النهائي في أقرب وقت ممكن.
تنصل
إلى أقصى حد يسمح به القانون، نوفر واجهات برمجة التطبيقات (APIs) كما هي. هذا يعني أننا لا نقدم أي ضمانات، سواءً صريحة أو ضمنية، بما في ذلك على سبيل المثال لا الحصر، قابلية التسويق والملاءمة لغرض معين.
التحديثات
يجوز لنا تحديث أو تعديل واجهات برمجة التطبيقات (APIs) وهذه السياسة من وقت لآخر عن طريق نشر التغييرات على هذا الموقع أو إخطارك عبر البريد الإلكتروني. قد تؤثر هذه التغييرات على استخدامك لواجهات برمجة التطبيقات أو على طريقة تفاعل تكاملك معها. إذا أجرينا تغييرًا لا تقبله، فعليك التوقف عن استخدام واجهات برمجة التطبيقات.
السرية
يجوز لك الوصول إلى معلومات سرية، وخاصة، وغير عامة، خاصة بواجهات برمجة التطبيقات (يُشار إليها فيما يلي بـ "المعلومات السرية"). يُسمح لك باستخدام هذه المعلومات فقط للبناء باستخدام واجهات برمجة التطبيقات. لن تُفصح عن هذه المعلومات السرية لأي شخص دون موافقتنا الكتابية، وستحميها من الاستخدام والإفصاح غير المصرح بهما بنفس الطريقة التي تحمي بها معلوماتك السرية.
التعويض
أنت توافق على تعويضنا وحماية فريقنا من أي خسائر (بما في ذلك أتعاب المحاماة) التي قد تنتج عن مطالبات الطرف الثالث المتعلقة باستخدامك لواجهة برمجة التطبيقات.
البقية
لا تُنشئ هذه السياسة أو تُشير إلى أي شراكة أو وكالة أو مشروع مشترك. ستظل هذه السياسة سارية طوال مدة استخدامك لواجهات برمجة التطبيقات أو حتى إنهائها وفقًا لشروطنا. في حال وجود تعارض بين هذه السياسة وشروط الاستخدام القياسية، تُعتد بشروط الاستخدام القياسية.
©2025 شركة لينبروك للصناعات المحدودة
633 جرانيت كورت، بيكرينغ، أونتاريو، كندا L1W 3K1
جميع الحقوق محفوظة
لا يجوز نسخ أو تخزين أو نقل أي جزء من هذا المنشور بأي شكل من الأشكال دون إذن كتابي من شركة لينبروك إندستريز المحدودة. مع أننا بذلنا قصارى جهدنا لضمان دقة المحتوى وقت النشر، إلا أن الميزات والمواصفات قد تخضع للتغيير دون إشعار.
| سجل المراجعة | ||
| إصدار | تاريخ | وصف |
| 1.0 | 6/17/2019 | الإصدار الأول |
| 1.2 | 01/12/2022 | أُضيفت إعادة تشغيل سلسة، ورنين جرس الباب، ورفع/خفض الصوت، ونقل المسار إلى قائمة الانتظار، وأوامر الإدخال المباشر. أُضيفت ملاحظة إلى الملحق LSDP. |
| 1.4 | 04/26/2022 | تمت إضافة أمر كتم الصوت؛ وتعديل أوامر الإدخال المباشر لـ HUB؛ وتحديث أمر التشغيل لتشغيل الصوت المخصص المتدفق. |
| 1.5 | 07/18/2022 | تمت إضافة أمر Bluetooth؛ وتم تحديث LSDP لإضافة الفئة 5 إلى 8؛ وتمت إضافة "الاستخدام العملي للعلامات" في سياسة استخدام API. |
| 1.6 | 03/13/2024 | تمت إضافة ملاحظة لـ/Status للاعبين المجمعين في القسم 2؛ تمت الإضافة /Play?seek=seconds is=trackid في القسم 4.1؛ |
| 1.7 | 04/09/2025 | تم تحديث القسم 8.3 السابقampتمت إضافة طلب تصفح قائمة السياق المضمنة على سبيل المثالampتم إضافة أمر اختيار الإدخال المباشر الجديد في القسم 7.1؛ تم تحديث القسم 11.2 لإضافة سمة "الصورة" للإعدادات المسبقة؛ تم إضافة تعليق "followRedirects=6.1" لجميع سمات الصورة؛ تم تحديث شرح تشغيل السماتURL وأضف الآن في القسم 7.1 |
مقدمة
BluOS™ هو نظام تشغيل متقدم وبرنامج لإدارة الموسيقى، يتيح لك الوصول إلى الموسيقى وبثها بدقة تصل إلى 24 بت/192 كيلوهرتز إلى جميع الغرف باستخدام شبكتك المنزلية. يتوفر BluOS في منتجات Bluesound وNAD Electronics وDALI Loudspeakers وغيرها.
أُنشئت هذه الوثيقة لمساعدة المطورين ومُدمجي الأنظمة العاملين في سوق التكامل المُخصص (CI). وهي تحتوي على مجموعة فرعية من طلبات واجهة برمجة التطبيقات (API) المُوثّقة في بروتوكول التحكم الكامل بواجهة برمجة تطبيقات BluOS.
جميع الطلبات الموضحة في هذه الوثيقة تُرسل كطلبات HTTP GET. المعلمات هي معايير. URL زوج الاسم/القيمة المُرمَّز. تستقبل مُشغِّلات BluOS هذه الأوامر، ثم تستجيب ببيانات XML مُرمَّزة بتنسيق UTF-8.
جميع الطلبات تكون بصيغة http:// : / أين:
- player_ip هو عنوان IP الخاص بمشغل BluOS (على سبيل المثال، 192.168.1.100)
- المنفذ هو منفذ TC المُستخدم للاتصالات. يُستخدم المنفذ 11000 لجميع مشغلات BluOS، باستثناء CI580. يحتوي CI580 على أربع عُقد بث في هيكل واحد، حيث تستخدم العقدة 1 المنفذ 11000، والعقدة 2 المنفذ 11010، والعقدة 3 المنفذ 11020، والعقدة 4 المنفذ 11030. يجب تحديد المنفذ المطلوب باستخدام بروتوكول MDNS باستخدام خدمتي musc.tcp وmusp.tcp.
- الطلب هو أمر BluOS الفعلي أو الاستعلام (على سبيل المثال، Play)
ملحوظة: سوف تستخدم هذه الوثيقة http://192.168.1.100:11000 كلاعب IP والمنفذ في جميع الحالاتampليز.
استعلامات الحالة
يتم استخدام استعلامات الحالة للاستعلام عن مشغل BluOS.
يوفر BluOS آليتين لإجراء استعلامات الحالة: الاستطلاع العادي والاستطلاع الطويل. يُرجع الاستطلاع العادي نتيجة الاستعلام فورًا. أما الاستطلاع الطويل فيُبقي الاتصال لفترة محددة، ولا يُرجع نتيجة الاستعلام إلا عند تغيير المعلومات أو انتهاء المهلة. يُقلل الاستطلاع الطويل بشكل كبير من عدد المكالمات إلى المشغل.
عند عدم استخدام الاستطلاعات الطويلة، يجب على العملاء تحديد معدل الاستطلاعات لطلب واحد كل 30 ثانية كحد أقصى. عند استخدام الاستطلاعات الطويلة، يجب على العميل عدم إرسال طلبين متتاليين لنفس المورد بفارق أقل من ثانية واحدة، حتى لو عاد الطلب الأول في أقل من ثانية واحدة.
تتطلب طلبات الاستطلاع الطويلة معامِلين: مهلة زمنية وtag. مهلة الانتظار هي مدة طلب الاستطلاع الطويل وtag تم أخذها من الاستجابة السابقة (سمة في العنصر الجذر للاستجابة).
بشكل عام، من الضروري فقط تفعيل استطلاع رأي طويل الأمد لأحد /Status أو /SyncStatus. تتضمن استجابة /Status عنصرًا ( ) يشير إلى ما إذا كان /SyncStatus قد تغير. يجب استطلاع /SyncStatus إذا كان اسم المشغل وحجمه وحالة التجميع هي التي تهم فقط. يجب استطلاع /Status إذا كانت هناك حاجة إلى حالة التشغيل الحالية.
عند تجميع اللاعبين، يكون اللاعب الأساسي هو اللاعب الرئيسي في المجموعة. ويرتبط اللاعبون الثانويون باللاعب الأساسي. استجابة حالة اللاعبين الثانويين هي نسخ من استجابة اللاعب الأساسي. عندئذٍ، يلزم إجراء استطلاع طويل لحالة المزامنة لتتبع مستوى صوت كل لاعب ثانوي.
2.1 حالة التشغيل
وصف
نقطة النهاية /Status تستعلم عن مستوى الصوت والتشغيل. يُرجع هذا الاستعلام العديد من سمات الاستجابة،
بعضها لا ينطبق على هذه الوثيقة. يُرجى تجاهل الردود غير الموثقة.
طلب
/الحالة؟ المهلة = ثانية&etag=etag-قيمة
| حدود | وصف |
| نفذ الوقت | مُعامل اختياري يُستخدم مع الاستطلاعات الطويلة. فترة الاستطلاع المُوصى بها هي ١٠٠ ثانية، ويجب أن تكون مُحددة بمعدل ٦٠ ثانية تقريبًا، وألا تتجاوز ١٠ ثوانٍ أبدًا. |
| etag | معلمة اختيارية تُستخدم مع الاستطلاع الطويل. هذا هوtag صفة من |
| حدود | وصف |
| الاستجابة للمكالمة السابقة/الحالة. |
إجابة
<status etag=”4e266c9fbfba6d13d1a4d6ff4bd2e1e6″>
÷ (ديلوكس)
إد شيران
حقيقي
1
159
ديزر:142986206
/عمل فني؟ الخدمة=Deezer&معرف الأغنية=Deezer%3A142986206
0
187
1
ممتاز
1054
0
320000
2
ديزر
/المصادر/الصور/DeezerIcon.png
0
8
19
يوقف
MP3 320 كيلو بايت/ثانية
5
ممتاز
إد شيران
÷ (ديلوكس)
263
4
35
ملحوظة: لا تظهر جميع سمات الاستجابة في الجدول التالي. قد توجد عناصر أخرى، لذا يجب تجاهلها.
| سمات الاستجابة | وصف |
| etag | سمة عنصر جذر الاستجابة. قيمة غير شفافة تُستخدم مع الاستطلاع الطويل للكشف عن تغييرات الاستجابة. إذا لم تتغير القيمة منذ الاستجابة السابقة، فمن المؤكد أن الاستجابة لم تتغير (انظر أيضًا الثواني أدناه). |
| ثواني التنبيه المتبقية | إذا كان التشغيل هو نتيجة إنذار، فهذا هو عدد الثواني قبل أن يتوقف. |
| فعل | راجع قسم "الإجراءات الخاصة بمحطات البث الإذاعي" للحصول على الوصف. |
| الألبوم | اسم ألبوم الأغنية النشطة حاليًا. انظر أيضًا سمة العنوان1. |
| فنان | اسم الفنان للأغنية النشطة حاليًا. انظر أيضًا سمة العنوان 1. |
| بطارية | يظهر إذا كان لدى اللاعب بطارية. يتضمن السمات التالية: · المستوى - حالة الشحن، النسبة المئوية · الشحن – 1 إذا كان الشحن جاريًا · أيقونة – URL صورة اللاعب التي تشير إلى حالة الشحن الحالية |
|
يمكن تحريك التشغيل |
يكون صحيحًا إذا كان من الممكن نقل المحتوى الحالي قيد التشغيل أو المتوقف مؤقتًا إلى مشغل آخر. |
|
كان سيك |
إذا كانت القيمة 1، فمن الممكن تصفح المسار الحالي، ضمن نطاق 0..totlen، باستخدام معامل البحث /Play. على سبيل المثالample: /Play?seek=34. |
| db | مستوى الصوت بالديسيبل. |
| اسم المجموعة | اسم المجموعة. يجب أن يكون اللاعب هو اللاعب الرئيسي في المجموعة. |
| حجم المجموعة | مستوى صوت المجموعة. يجب أن يكون اللاعب الرئيسي في المجموعة. |
| صورة | URL من الصورة المرتبطة بالصوت الحالي (الألبوم، المحطة، الإدخال، وما إلى ذلك). إذا |
| سمات الاستجابة | وصف |
| ال URL يبدأ بـ /Artwork، وقد يؤدي إلى إعادة التوجيه. إضافة معلمة/مفتاح متابعة إعادة التوجيه=1 عند استرجاع الصورة يمكن تجنب إعادة التوجيه. | |
| صامت | حالة كتم الصوت. اضبط على ١ إذا كان مستوى الصوت مكتومًا. |
| قاعدة بيانات صامتة | إذا تم كتم صوت المشغل، فسيحتوي هذا على مستوى الصوت غير المكتوم بالديسيبل. |
| كتم الصوت | إذا كان الصوت مكتومًا، فهذا يعني مستوى الصوت غير مكتوم. القيم تتراوح من ٠ إلى ١٠٠. |
| اسم | عنوان المقطع الصوتي المُشغَّل حاليًا. انظر أيضًا السمة title1. |
| أبلغurl | URL للحصول على إشعار منبثق. |
| id | مُعرِّف قائمة التشغيل الفريد. يُطابق مُعرِّف استجابة /Playlist. في حال تغيير قائمة التشغيل، سيتغير هذا الرقم. |
| يتخلص | مُعرِّف الإعداد المسبق الفريد. يُطابق هذا المُعرِّف سمة prid في استجابة /Presets. في حال تغيير إعداد مسبق، سيتغير هذا الرقم، مما يُشير إلى ضرورة حذف أي استجابة مُخزَّنة مؤقتًا لـ /Presets. |
| جودة | جودة مصدر الصوت الذي يتم تشغيله: · CD – صوت بدون فقدان بجودة CD · HD – صوت بدون فقدان مع دقة أعلى من جودة الأقراص المضغوطة أوampمعدل 88200 ثانيةampأقل/أقل أو أكثر · دولبي أوديو – دولبي ديجيتال أو AC3 · mqa – فك تشفير صوت MQA صالح · mqaAuthored – فك تشفير الصوت المعتمد من MQA القيمة الرقمية هي معدل البت التقريبي لجودة مصدر الصوت المضغوط file. |
|
يكرر |
0 أو 1 أو 2. 0 يعني تكرار قائمة التشغيل، و1 يعني تكرار المسار، و2 يعني إيقاف التكرار |
| ثواني | عدد الثواني التي تم فيها تشغيل المقطع الصوتي الحالي. لا تُستخدم هذه القيمة في حساب etag ولن يؤدي التقدم بحد ذاته إلى عودة من مكالمة استطلاع طويلة. يُطلب من العملاء زيادة موضع التشغيل، عندما تكون الحالة تشغيلًا أو بثًا، بناءً على الفاصل الزمني منذ الاستجابة. |
| خدمة | مُعرِّف خدمة الصوت الحالي. هذه القيمة ليست للعرض في واجهة المستخدم، لأن |
| سمات الاستجابة | وصف |
| قد يختلف الاسم الفعلي عن اسم الخدمة الرسمي. | |
| أيقونة الخدمة | URL من أيقونة الخدمة الحالية. |
| خلط | 0 أو 1. 0 يعني إيقاف التشغيل العشوائي و 1 يعني تشغيل التشغيل العشوائي. |
| ينام | الدقائق المتبقية قبل تفعيل مؤقت النوم. |
| أغنية | موضع المسار الحالي في قائمة التشغيل. انظر أيضًا "البث"Url. |
| ولاية | حالة اللاعب الحالية. قد تكون تشغيلًا، إيقافًا مؤقتًا، إيقافًا مؤقتًا، بثًا مباشرًا، اتصالًا، إلخ. يمكن استخدام /Play لاستئناف التشغيل عند التواجد في حالة الإيقاف المؤقت ولكن ليس عند التواجد في حالة التوقف. يجب اعتبار أن اللعب والبث لهما نفس المعنى. انظر أيضًا البث.Url. |
|
صورة المحطة |
URL لصورة محطة راديو، إذا كان الصوت الحالي محطة راديو، مثل راديو ديزر. قد يكون هو نفسه الصورة. |
| تنسيق التدفق | تنسيق الصوت. |
| تدفقUrl | يجب اعتبار وجود هذا العنصر علامةً، ومحتوياته قيمةً غير شفافة. إذا كان موجودًا، فهذا يدل على: · قائمة التشغيل ليست مصدر الصوت الحالي (الأغنية غير ذات صلة) · لا يعد الخلط والتكرار أمرًا ذا صلة ويجب إزالتهما من أي واجهة مستخدم إذا كان ذلك ممكنًا · التالي والسابق غير متاحين (ولكن انظر أيضًا الإجراءات) |
| سينك ستات | مُعرِّف فريد يُشير إلى أي تغيير في استجابة /SyncStatus. يُطابق هذا المُعرِّف سمة syncStat في استجابة /SyncStatus. ويتغير عند حدوث تغيير في حالة المزامنة. |
| العنوان 1 | السطر الأول من المعلومات التي تصف الصوت الحالي. العنوان 1 والعنوان 2 والعنوان 3 يجب استخدامه كنص لأي واجهة مستخدم تعرض ثلاثة أسطر من بيانات التشغيل الحالية. لا تستخدم قيمًا مثل الألبوم والفنان والاسم. |
| العنوان 2 | السطر الثاني من المعلومات التي تصف الصوت الحالي. |
| العنوان 3 | السطر الثالث من المعلومات التي تصف الصوت الحالي. |
| توتلن | الطول الإجمالي للمسار الحالي، بالثواني. |
| عنوان سطرين 1 | السطر الأول من سطرين يصفان الصوت الحالي. twoline_title1 و twoline_title2، إذا كانا موجودين، يجب استخدامهما كنص لأي واجهة مستخدم تعرض ملفين صوتيين. |
| سمات الاستجابة | وصف |
| خطوط البيانات الوصفية التي يتم تشغيلها الآن. | |
| عنوان سطرين 2 | السطر الثاني من سطرين يصفان الصوت الحالي. |
| مقدار | مستوى صوت اللاعب بالنسبة المئويةtage؛ -1 يعني أن مستوى صوت المشغل ثابت. |
| ثواني | عدد الثواني التي تم تشغيل المسار الصوتي الحالي فيها. |
Example
http://192.168.1.100:11000/Status
يحصل على حالة تشغيل المشغل.
http://192.168.1.100:11000/Status؟مهلة=100&etag=4e266c9fbfba6d13d1a4d6ff4bd2e1e6
يحصل على حالة تشغيل المُشغِّل باستخدام الاستطلاع الطويل. تُعاد النتيجة قبل انقضاء مهلة ١٠٠ ثانية فقط في حال تغيّر حالة المُشغِّل. وإلا، تُعاد النتيجة بعد ١٠٠ ثانية.
2.2 حالة مزامنة اللاعب والمجموعة
وصف
يُرجع استعلام SyncStatus معلومات اللاعب ومعلومات تجميع اللاعبين. يُرجع هذا الاستعلام العديد من سمات الاستجابة، بعضها غير قابل للتطبيق على هذه الوثيقة. يُرجى تجاهل الاستجابات غير الموثقة.
طلب
/SyncStatus?timeout=ثواني&etag=etag-قيمة
| حدود | وصف |
| نفذ الوقت | مُعامل اختياري يُستخدم مع الاستطلاعات الطويلة. وهو فترة الاستطلاع بالثواني. الفترة المُوصى بها للاستطلاعات هي 180 ثانية. |
| etag | معلمة اختيارية تُستخدم مع الاستطلاع الطويل. هذا هوtag السمة من استجابة استدعاء /SyncStatus السابقة. |
إجابة
<SyncStatus icon=”/images/players/P300_nt.png” volume=”4″ modelName=”PULSE” name=”PULSE0278″ model=”P300″ brand=”Bluesound” etag= "23" المستوى الخارجي = "-62.9" إصدار المخطط = "25" تم تهيئة = "صحيح" المجموعة = "PULSE-0278 + 2" syncStat = "23" المعرف = "192.168.1.100:11000" mac = "90:56:82:9F:02:78"> 11000
…..
ملاحظة: لا تُدرَج جميع سمات الاستجابة في الجدول التالي. قد توجد عناصر أخرى، لذا يُرجى تجاهلها.
| سمات الاستجابة | وصف |
| بطارية | يظهر إذا كان لدى اللاعب بطارية. يتضمن السمات التالية: · المستوى - حالة الشحن، النسبة المئوية · الشحن – 1 إذا كان الشحن جاريًا · أيقونة – URL صورة اللاعب التي تشير إلى حالة الشحن الحالية |
| ماركة | اسم العلامة التجارية للاعب. |
| db | مستوى الصوت بالديسيبل. |
| etag | Tag من استجابة /SyncStatus، المستخدمة للاستطلاع الطويل. |
| مجموعة | اسم المجموعة. |
| رمز | URL الذي يحتوي على صورة أيقونة اللاعب. |
| id | عنوان IP الخاص باللاعب والمنفذ. |
| تم البدء | صحيح يعني أن المشغل مُثبّت بالفعل، خطأ يعني أن المشغل بحاجة إلى إعداد. يجب إعداد المشغل باستخدام تطبيق BluOS Controller. |
| ماك | مُعرِّف فريد للاعب لواجهة الشبكة. قد يكون عنوان MAC. |
| يتقن | عنوان IP الرئيسي للاعب. يظهر فقط إذا كان اللاعب لاعبًا ثانويًا في المجموعة. السمات: · المنفذ – رقم المنفذ. · إعادة الاتصال - صحيح إذا كنت تحاول إعادة الاتصال بالمشغل الأساسي |
| نموذج | معرف نموذج اللاعب. |
| اسم النموذج | اسم موديل اللاعب. |
| صامت | اضبط على 1 إذا تم كتم الصوت. |
| قاعدة بيانات صامتة | إذا تم كتم صوت المشغل، فهذا هو مستوى الصوت غير المكتوم بالديسيبل. |
| سمات الاستجابة | وصف |
| كتم الصوت | إذا تم كتم صوت المشغل، فهذا هو مستوى الصوت غير المكتوم (0..100). |
| اسم | اسم اللاعب. |
| إصدار المخطط | إصدار مخطط البرنامج. |
| عبد | عناوين IP للاعبين الثانويين. تظهر فقط إذا كان اللاعب هو اللاعب الرئيسي في المجموعة. يمكن أن يكون هناك عدة لاعبين ثانويين. السمات: · معرف - عنوان IP · المنفذ - رقم المنفذ |
|
سينك ستات |
مُعرِّف حالة المزامنة. يتغير عند تغيير أي عنصر في استجابة /SyncStatus. تطابق مع عنصر في استجابة/الحالة. |
| مقدار | مستوى الصوت على مقياس يتراوح من 0 إلى 100. -1 يعني مستوى صوت ثابت. |
| منطقة | اسم المجموعة الثابتة. |
| منطقة ماستر | إذا كان اللاعب هو اللاعب الأساسي في مجموعة ثابتة، فسيتم تعيين هذا على "صحيح". |
| منطقة الرقيق | إذا كان اللاعب لاعبًا ثانويًا في مجموعة ثابتة، فسيتم تعيين هذا على "صحيح". |
Example
http://192.168.1.100:11000/SyncStatus
يحصل على حالة اللاعب والمجموعة الخاصة باللاعب.
http://192.168.1.100:11000/SyncStatus؟مهلة=100&etag=4e266c9fbfba6d13d1a4d6ff4bd2e1e6
يحصل على حالة اللاعب والمجموعة باستخدام الاستطلاع الطويل. تُعاد النتيجة قبل انقضاء مهلة ١٠٠ ثانية فقط في حال تغير حالة اللاعب. وإلا، تُعاد النتيجة بعد ١٠٠ ثانية.
التحكم في مستوى الصوت
يضبط مستوى صوت المُشغِّل. ويُستخدم أيضًا لكتم صوت المُشغِّل.
3.1 ضبط مستوى الصوت
وصف
يستعلم هذا الطلب عن مستوى صوت المشغل أو يعينه.
جميع متغيرات الأوامر، سواءً باستخدام مستوى 0..100 ديسيبل، أو مستوى ديسيبل مطلق، أو مستوى ديسيبل نسبي، مقيدة بقيم تُنتج مستوى صوت ضمن نطاق مستوى الصوت المتاح المُهيأ، والذي عادةً ما يكون -80. يُمكن تعديل نطاق مستوى الصوت باستخدام تطبيق BluOS Controller، من صفحة الإعدادات ← المُشغّل ← الصوت.
يدعم الاستعلام الاستطلاع الطويل (غير موضح أدناه).
طلب
/مقدار
/الحجم؟ المستوى = المستوى وإخبار العبيد = تشغيل وإيقاف
/الحجم؟ كتم الصوت = تشغيل وإيقاف وإخبار العبيد = تشغيل وإيقاف
/الحجم؟ abs_db=db&tell_slaves=on_off
/Volume?db=delta-db&tell_slaves=on_off
| حدود | وصف |
| مستوى | اضبط مستوى الصوت المطلق للمشغل. وهو عدد صحيح من ٠ إلى ١٠٠. |
| أخبر_العبيد | ينطبق على اللاعبين في مجموعات. عند ضبطه على ٠، يتغير مستوى صوت اللاعب المحدد حاليًا فقط. عند ضبطه على ١، يتغير مستوى صوت جميع اللاعبين في المجموعة. |
| صامت | إذا تم ضبطه على ٠، فسيتم كتم صوت المشغل. إذا تم ضبطه على ١، فسيتم إلغاء كتم صوت المشغل. |
| abs_db | ضبط مستوى الصوت باستخدام مقياس ديسيبل. |
| db | قم بإجراء تغيير نسبي في الحجم باستخدام مقياس حجم ديسيبل. يمكن أن يكون ديسيبل رقمًا موجبًا أو سالبًا. |
إجابة
<volume db=”-49.9″ mute=”0″ offsetDb=”0″ etag=”6213593a6132887e23fe0476b9ab2cba”>15</volume>
| سمات الاستجابة | وصف |
| سمات الاستجابة | وصف |
| db | مستوى الصوت بالديسيبل. |
| صامت | 1 إذا تم كتم صوت المشغل، 0 إذا تم إلغاء كتم صوت المشغل. |
| قاعدة بيانات صامتة | إذا تم كتم صوت المشغل، فهذا هو مستوى الصوت غير المكتوم بالديسيبل. |
| كتم الصوت | إذا تم كتم صوت المشغل، فهذا هو مستوى الصوت غير المكتوم (0..100). |
| مقدار | مستوى الصوت الحالي: 0..100 أو -1 لمستوى صوت ثابت. |
Example
http://192.168.1.100:11000/Volume?level=15
تعيين مستوى صوت المشغل إلى 15 (من 100).
http://192.168.1.100:11000/Volume? tell_slaves=1&db=2
يزيد مستوى صوت المشغل الرئيسي 192.168.1.100، وجميع المشغلات الثانوية في تلك المجموعة، بمقدار 2 ديسيبل.
http://192.168.1.100:11000/Volume?mute=1
كتم صوت المشغل.
3.2 رفع الصوت
وصف
يؤدي هذا الطلب إلى زيادة مستوى الصوت بمقدار ديسيبل معين (القيمة النموذجية هي 2 ديسيبل).
طلب
/الحجم؟db=db_value
| حدود | وصف |
| db | خطوات زيادة الحجم بالديسيبل (القيمة النموذجية 2 ديسيبل) |
إجابة
<volume db=”-25″ mute=”0″ offsetDb=”6″ etag=”a071a168fac1c879b1de291720c8a4b8″>27</volume>
| سمات الاستجابة | وصف |
| db | مستوى الصوت بالديسيبل. |
| صامت | 1 إذا تم كتم صوت المشغل، 0 إذا لم يتم كتم صوت المشغل |
| سمات الاستجابة | وصف |
| إزاحة قاعدة البيانات | |
| etag |
Example
http://192.168.1.100:11000/Volume?db=2
زيادة مستوى الصوت بمقدار 2 ديسيبل.
3.3 خفض مستوى الصوت
وصف
يؤدي هذا الطلب إلى خفض مستوى الصوت بمقدار ديسيبل معين (القيمة النموذجية هي -2 ديسيبل).
طلب
/الحجم؟ db=-db_value
| حدود | وصف |
| db | خطوات زيادة الحجم بالديسيبل (القيمة النموذجية -2 ديسيبل) |
إجابة
<volume db=”-25″ mute=”0″ offsetDb=”6″ etag=”a071a168fac1c879b1de291720c8a4b8″>27</volume>
| سمات الاستجابة | وصف |
| db | مستوى الصوت بالديسيبل |
| صامت | 1 إذا تم كتم صوت المشغل، 0 إذا لم يتم كتم صوت المشغل |
| إزاحة قاعدة البيانات | |
| etag |
Example
http://192.168.1.100:11000/Volume?db=-2
قم بخفض مستوى الصوت بمقدار 2 ديسيبل.
3.4 كتم الصوت
وصف
طلب
/الحجم؟كتم الصوت=1
| حدود | وصف |
| صامت | اضبط على 1 لكتم صوت اللاعب |
إجابة
<volume muteDb=”-43.1″ db=”100″
كتم الصوت = "11"
كتم الصوت = “1”
إزاحة Db=”0″
etag=”2105bed56563d9da46942a696cfadd63″>0</volume
>
| سمات الاستجابة | وصف |
| قاعدة بيانات صامتة | مستوى الصوت بالديسيبل قبل كتم الصوت |
| db | مستوى الصوت بالديسيبل |
| كتم الصوت | مستوى الصوت كنسبة مئوية قبل كتم الصوت |
| صامت | 1 يعني أن المشغل مكتوم الصوت |
| إزاحة قاعدة البيانات | |
| etag |
Example
http://192.168.1.100:11000/Volume?mute=1
3.5 إيقاف كتم الصوت
وصف
يؤدي هذا الطلب إلى إلغاء كتم صوت اللاعب.
طلب
/الحجم؟كتم الصوت=0
| حدود | وصف |
| صامت | اضبط على 0 لإلغاء كتم صوت المشغل |
إجابة
<volume db=”-43.1″ mute=”0″ offsetDb=”0″ etag=”e72d53db17baa526ebb5ee9c26060b1f”>11</volume>
| سمات الاستجابة | وصف |
| db | مستوى الصوت بالديسيبل |
| صامت | 0 يعني أن المشغل غير مكتوم الصوت |
| إزاحة قاعدة البيانات | |
| etag |
Example
http://192.168.1.100:11000/Volume?mute=0
التحكم في التشغيل
تُستخدم هذه الأوامر للتحكم الأساسي في التشغيل. تشمل الأوامر: التشغيل، والإيقاف المؤقت، والتوقف، والتخطي، والرجوع، والتشغيل العشوائي، والتكرار.
4.1 لعب
وصف
ابدأ تشغيل مصدر الصوت الحالي. تتيح لك المعلمات الاختيارية الانتقال إلى مسارات الصوت واختيار مُدخل قبل بدء تشغيل الصوت.
طلب
/يلعب
/تشغيل؟البحث=ثواني
/تشغيل؟ البحث = ثانية&معرف = معرف المسار
/يلعب؟url=التدفق المشفرURL
| حدود | وصف |
| يطلب | انتقل إلى موضع محدد في المسار الحالي. صالح فقط إذا تضمنت استجابة الحالة لا يمكن استخدامه مع معلمات inputType وindex. |
| تيار مشفرURL | URL من الصوت المخصص المُبث. يجب أن يكون URL مشفر. |
إجابة
يلعب
تدفق
| سمات الاستجابة | وصف |
|
ولاية |
الحالة بعد تنفيذ الأمر. راجع سمة حالة الاستجابة /Status لمزيد من التفاصيل. |
Example
http://192.168.1.100:11000/Play
بدء تشغيل الصوت للمسار الحالي.
http://192.168.1.100:11000/Play?seek=55
ابدأ تشغيل الصوت عند مرور 55 ثانية من المسار الحالي.
http://192.168.1.100:11000/Play?seek=55&id=4
ابدأ تشغيل الصوت عند الثانية 55 من المسار رقم 5 في قائمة الانتظار.
192.168.1.125:11000/تشغيل؟url=https%3A%2F%2Fwww%2Esoundhelix%2Ecom%2Fexamples%2Fmp3%
2FSoundHelix-Song-1%2Emp3
ابدأ تشغيل الصوت بصيغة mp3 عبر الإنترنت.
4.2 وقفة
وصف
إيقاف تشغيل الصوت الحالي مؤقتًا.
إذا كان هناك إنذار يتم تشغيله، وكان هناك مهلة زمنية محددة، فسيتم إلغاء مهلة المنبه.
طلب
/يوقف
/إيقاف مؤقت؟تبديل=1
| حدود | وصف |
| تبديل | إذا تم ضبطه على 1، فسيتم تبديل حالة الإيقاف المؤقت الحالية. |
إجابة
يوقف
| سمات الاستجابة | وصف |
| ولاية | الحالة بعد تنفيذ الأمر. راجع سمة حالة الاستجابة /Status لمزيد من التفاصيل. |
Example
http://192.168.1.100:11000/Pause
يقوم بإيقاف تشغيل الصوت الذي يتم تشغيله حاليًا.
4.3 توقف
وصف
أوقف تشغيل الصوت الحالي. إذا كان هناك منبه قيد التشغيل، وانتهى وقت تشغيله، فسيتم إلغاء وقت تشغيله. طلب
/قف
| حدود | وصف |
| لا أحد |
إجابة
قف
| سمات الاستجابة | وصف |
| ولاية | "إيقاف" يعني أن الصوت الحالي متوقف. |
Example
http://192.168.1.100:11000/Stop
إيقاف تشغيل الصوت الذي يتم تشغيله حاليًا.
4.4 تخطي
وصف
انتقل إلى المسار الصوتي التالي في قائمة التشغيل
عند التشغيل من قائمة التشغيل، سيتم الانتقال إلى المسار التالي فيها. إذا كان المسار الحالي هو الأخير، فسيتم الانتقال إلى المسار الأول عند استدعاء /Skip. سيتم الانتقال إلى المسار التالي أو الأول بغض النظر عن حالة إعداد التكرار.
لتحديد ما إذا كنت تستخدم قائمة التشغيل، تأكد من عدم وجودUrl> إدخال في استجابة /Status.
وبعد ذلك يمكنك استخدام الأمر /Skip.
يمكنك أيضًا تخطي مسارات بعض محطات البث الإذاعي. يتم ذلك باستخدام الأمر /Action.
بعض المصادر، مثل TuneIn والمدخل البصري، لا تدعم خيار التخطي. ستحتوي هذه المصادر علىURL> إدخال ولكن لا يوجد اسم لإجراء التخطي في استجابة /Status.
طلب
/تخطى
| حدود | وصف |
| لا أحد |
إجابة
21
| سمات الاستجابة | وصف |
| id | مُعرِّف المسار بعد تنفيذ أمر التخطي. راجع سمة استجابة الأغنية /Status لمزيد من التفاصيل. |
Example
http://192.168.1.100:11000/Skip
تخطي إلى المسار التالي.
4.5 العودة
وصف
إذا تم تشغيل المسار واستمر تشغيله لأكثر من أربع ثوانٍ، فسوف يعود المسار إلى بداية المسار.
وإلا، فسينتقل أمر الرجوع إلى الأغنية السابقة في قائمة التشغيل الحالية. إذا كانت الأغنية الأولى في قائمة التشغيل، فسينتقل أمر الرجوع إلى الأغنية الأخيرة. سينتقل إلى المسار السابق أو الأول في قائمة الانتظار، بغض النظر عن حالة إعداد التكرار.
لتحديد ما إذا كنت تستخدم قائمة التشغيل، تأكد من عدم وجودUrl> عنصر في الاستجابة /Status.
وبعد ذلك يمكنك استخدام الأمر /Back.
يمكنك أيضًا الرجوع إلى مسارات بعض محطات البث الإذاعي. يتم ذلك باستخدام الأمر /Action.
بعض المصادر، مثل TuneIn والمدخل البصري، لا تدعم خيار الرجوع. ستحتوي هذه المصادر علىUrl> عنصر ولكن لا يوجد اسم لإجراء التخطي في استجابة /Status.
طلب
/خلف
| حدود | وصف |
| لا أحد |
إجابة
19
| سمات الاستجابة | وصف |
| id | مُعرِّف المسار بعد تنفيذ أمر الرجوع. راجع سمة أغنية الاستجابة /Status لمزيد من التفاصيل. |
4.6 التبديل
وصف
يُنشئ أمر الخلط قائمة انتظار جديدة بخلط قائمة الانتظار الحالية. تُحفظ قائمة الانتظار الأصلية (غير المُخلطة) لاستعادتها عند تعطيل خاصية الخلط.
طلب
/خلط؟حالة=0|1
| حدود | وصف |
| ولاية | · 0 لتعطيل الخلط ١ لتفعيل الخلط. لا يؤثر ذلك إذا كانت قائمة الانتظار في حالة خلط. راجع استجابة /Status عنصر. |
إجابة
| سمات الاستجابة | وصف |
| معدل | 1 يعني أن قائمة الانتظار تم تعديلها منذ تحميلها. 0 يعني لا. |
| طول | إجمالي عدد المسارات في قائمة الانتظار الحالية. |
| خلط | حالة الخلط. 1 يعني أن قائمة الانتظار الحالية تم خلطها. 0 يعني أن قائمة الانتظار الحالية لم يتم خلطها. |
| id | معرف قائمة الانتظار الحالية. يتغير عند تعديل قائمة انتظار التشغيل. |
Example
http://192.168.1.100:11000/Shuffle?state=1
خلط قائمة التشغيل الحالية.
4.7 كرر
وصف
يُحدد خيارات التكرار. للتكرار ثلاث حالات: ٠ يعني تكرار قائمة الانتظار الحالية، ١ يعني تكرار المسار الحالي، و٢ يعني عدم التكرار. جميع التكرارات غير محددة، أي أنها لا تتوقف.
طلب
/تكرار؟الحالة=0|1|2
| حدود | وصف |
| ولاية | · 0 لتكرار قائمة التشغيل بأكملها · 1 لتكرار المسار الحالي · 2 لإيقاف التكرار |
إجابة
| سمات الاستجابة | وصف |
| طول | العدد الإجمالي للمسارات الموجودة في قائمة التشغيل الحالية. |
| id | معرف قائمة الانتظار الحالية. يتغير عند تعديل قائمة انتظار التشغيل. |
| يكرر | حالة التكرار الحالية. |
Example
http://192.168.1.100:11000/Repeat?state=1
يكرر المسار الحالي الذي يتم تشغيله.
4.8 إجراءات لمحطات البث الإذاعي
وصف
تتيح لك الإجراءات التخطي للأمام والخلف والتفضيل وحظر المقاطع على محطات راديو البث المختارة، مثل Slacker أو Radio Paradise أو Amazon Music Prime Stations. لا تُحمّل محطات الراديو البث المقاطع في قائمة انتظار التشغيل، بل تُوفر... URL التي يمكنك استخدامها لإنجاز الوظيفة المطلوبة.
سينتقل "التخطي" إلى المقطع التالي، و"الرجوع" إلى المقطع السابق. سيُعلّم "الحب" المقطع بأنه مُعجب به في خدمة الموسيقى. سيُعلّم "الحظر" المقطع التالي بأنه غير مُعجب به في خدمة الموسيقى.
إذا كان هناكUrl> إدخال في استجابة الحالة، وإجراء مناسب، يمكنك تنفيذ هذه الوظائف. سيحتوي الإجراء على URL التي تستخدم لتنفيذ الفعل.
هنا مثال سابقample من استجابة /Status للاعب الذي يقوم بتشغيل راديو Slacker:
<action name=”skip” url=”/Action?service=Slacker&skip=4799148″/>
<action icon=”/images/loveban/love.png” name=”love” notification=”Track marked as favorite” state=”1″ text=”Love” url=”/Action?service=Slacker&love=4799148″/>
<action icon=”/images/loveban/ban.png” name=”ban” notification=”Track banned from this
محطة” state=”-1″ text=”حظر” url=”/Action?service=Slacker&ban=4799148″/>
في هذا المثال السابقampالعودة ليست متاحة، ولكن التخطي والحب والحظر ممكنة.
طلب
/الإجراء؟ الخدمة=اسم الخدمة&الإجراء=الإجراء-URL
ملحوظة: يتم تقديم تفاصيل الطلب المحددة (نقطة النهاية والمعلمات) بواسطة العنصر. الأوامر في Exampيمكن استخدام القسم أدناه بالكامل /Action ولكن من الممكن استخدام أي عنوان URI.
| حدود | وصف |
| متوفر في عنصر. |
إجابة
للرد، ستتلقى إشعارًا بالإجراء. للتخطي والرجوع، ستتلقى:
من أجل الحب تتلقى:
1
للحظر سوف تتلقى:
1
| سمات الاستجابة | وصف |
| إجابة | إذا كان العنصر الجذر للاستجابة هو عندها، تُعدّ عقدة النص إشعارًا يُعرض للمستخدم. إذا تم إرجاع عنصر جذر بديل، إذا تم تضمين سمة إعلام، فيجب أن يظهر هذا الإشعار. |
Example
http://192.168.1.100:11000/Action?service=Slacker&skip=10965139
ينتقل إلى مسار الراديو التالي الخاص بـ Slacker.
http://192.168.1.100:11000/Action?service=Slacker&ban=33332284
يحظر مسار الراديو Slacker الحالي الذي يتم تشغيله وينتقل إلى المسار التالي.
إدارة قائمة انتظار اللعب
إحدى طرق تشغيل المشغل هي تحميل المقطوعات الموسيقية إلى قائمة تشغيل، ثم تشغيلها منها. تتيح لك هذه الأوامر view وإدارة قائمة التشغيل.
5.1 قائمة المسارات
وصف
إما إرجاع حالة قائمة التشغيل، أو إرجاع المعلومات حول جميع المسارات الموجودة في قائمة التشغيل.
لا يُنصح باستخدام هذا الاستعلام بدون معلمات الطول أو البداية والنهاية، وإلا فقد يتم إنشاء استجابة طويلة جدًا.
طلب
/قائمة التشغيل
/قائمة التشغيل؟الطول=1
/Playlist?start=first&end=last (استرداد جزء من قائمة الانتظار، للترقيم الصفحي عادةً)
| حدود | وصف |
| الطول=1 | إرجاع السمات ذات المستوى الأعلى فقط وعدم إرجاع تفاصيل المسار. |
| يبدأ | الإدخال الأول في قائمة الانتظار ليتم تضمينه في الاستجابة، بدءًا من 0. |
| نهاية | آخر إدخال في قائمة الانتظار ليتم تضمينه في الاستجابة. |
إجابة
لحالة قائمة التشغيل:
13
243
1
للحصول على قائمة تشغيل:
2002
آن ماري
2002
ديزر:487381362
| سمات الاستجابة | وصف |
| اسم | اسم قائمة التشغيل الحالية. |
| معدل | 0 يعني أن قائمة الانتظار لم يتم تعديلها منذ تحميلها. 1 يعني أن قائمة الانتظار تم تعديلها منذ تحميلها. |
| طول | إجمالي عدد المسارات في قائمة الانتظار الحالية |
| id | معرف فريد لحالة قائمة الانتظار الحالية (مثل 1054). وهو نفس معرف في/استجابة الحالة. |
| أغنية | تتكون الأغنية من عدة عناصر فرعية: · albumid = معرف الألبوم الذي يوجد فيه المسار · الخدمة = خدمة الموسيقى للمسار · artistid = معرف الفنان للمسار · songid = معرف الأغنية · id = موضع المسار في قائمة الانتظار الحالية. إذا كان المسار محددًا حاليًا، فسيكون معرف المسار هو نفسه في/استجابة الحالة. · العنوان = اسم المسار · الفن = اسم الفنان · alb = اسم الألبوم |
Example
http://192.168.1.100:11000/Playlist
يعرض جميع المسارات الموجودة في قائمة التشغيل.
http://192.168.1.100:11000/Playlist?length=1
5.2 حذف المسار
وصف
إزالة المسار من قائمة التشغيل الحالية.
طلب
/حذف؟id=الموضع
| حدود | وصف |
| id | معرف المسار الذي سيتم حذفه من قائمة التشغيل الحالية. |
إجابة
9
| سمات الاستجابة | وصف |
| تم الحذف | الموضع في قائمة انتظار المسار الذي سيتم إزالته. |
Example
http://192.168.1.100:11000/Delete?id=9
يقوم بإزالة المسار الموجود في الموضع 9 في قائمة التشغيل.
5.3 نقل المسار
وصف
نقل المسار داخل قائمة التشغيل الحالية.
طلب
/نقل؟ جديد=الوجهة&قديم=الأصل
| حدود | وصف |
| جديد | موضع جديد على المسار الذي يتم نقله. |
| قديم | الموقع القديم للمسار الذي يتم نقله. |
إجابة
انتقلت
| سمات الاستجابة | وصف |
| انتقل | يشير إلى أن المسار تم نقله. |
Example
http://192.168.1.100:11000/Move?new=8&old=2
نقل المسار الموجود في الموضع 2 إلى الموضع 8 في قائمة التشغيل.
5.4 مسح قائمة الانتظار
وصف
مسح جميع المسارات من قائمة التشغيل الحالية
طلب
/واضح
| حدود | وصف |
| لا أحد |
إجابة
| سمات الاستجابة | وصف |
| معدل | 0 يعني أن قائمة الانتظار لم يتم تعديلها منذ تحميلها، 1 يعني أن قائمة الانتظار تم تعديلها منذ تحميلها. |
| طول | العدد الإجمالي للمسارات في قائمة الانتظار الحالية. |
| id | معرف فريد للقائمة الحالية. |
Example
http://192.168.1.100:11000/Clear
يؤدي هذا إلى إزالة جميع المسارات من قائمة التشغيل.
5.5 احفظ قائمة الانتظار
وصف
احفظ قائمة التشغيل كقائمة تشغيل BluOS مسماة.
طلب
/حفظ؟الاسم=اسم قائمة التشغيل
| حدود | وصف |
| اسم | اسم قائمة التشغيل المحفوظة. |
إجابة
126
| سمات الاستجابة | وصف |
| الإدخالات | العدد الإجمالي للمسارات الموجودة في قائمة التشغيل المحفوظة. |
Example
http://192.168.1.100:11000/Save?name=Dinner+Music
يؤدي هذا إلى حفظ قائمة التشغيل باسم "موسيقى العشاء".
الإعدادات المسبقة
تتيح لك طلبات الإعدادات المسبقة سرد جميع الإعدادات المسبقة لمشغل ما، وتحميل إعداد مسبق، ورفع/خفض الإعدادات المسبقة. يجب إضافة الإعدادات المسبقة وحذفها باستخدام تطبيق BluOS Controller. يمكن أن تشمل الإعدادات المسبقة محطات الراديو وقوائم التشغيل والمدخلات (مثل:
بلوتوث، تناظري، بصري، HDMI ARC).
6.1 قائمة الإعدادات المسبقة
وصف
قم بإدراج جميع الإعدادات المسبقة على مشغل BluOS الحالي.
طلب
/الإعدادات المسبقة
| حدود | وصف |
| لا أحد |
إجابة
<preset id=”6″ name=”Serenity” url=”راديو بارادايس:/42:4/الصفاء”
image=”https://img.radioparadise.com/channels/0/42/cover_512x512/0.jpg”/>
<preset id=”7″ name=”1980s Alternative Rock Classics” url=”/Load?service=المد والجزر&id=fd3f797e-
a3e9-4de9-a1e2-b5adb6a57cc7″ image=”/Artwork?service=Tidal&playlistimage=afacfc12-24034caf-a5c5-a2af28d811c8″/> </presets>
| سمات الاستجابة | وصف |
| فخر | مُعرِّف فريد للإعدادات المُسبقة للمُشغِّل. وهو نفس مُعرِّف في/استجابة الحالة. |
| اسم | اسم الإعداد المسبق. |
| id | معرف الإعداد المسبق. |
| url | الإعداد المسبق URL. إنه المصدر المحدد مسبقًا URL يستخدم لتحميل الإعداد المسبق. |
| صورة | صورة URL من الإعداد المسبق. إذا كان URL يبدأ بـ /Artwork، وقد يؤدي إلى إعادة التوجيه. إضافة معلمة/مفتاح متابعة إعادة التوجيه=1 عند استرجاع الصورة يمكن تجنب إعادة التوجيه. |
Example
http://192.168.1.100:11000/Presets
قم بإدراج جميع الإعدادات المسبقة على المشغل.
6.2 تحميل إعداد مسبق
وصف
يبدأ تشغيل إعداد مسبق. يمكنك اختيار رقم إعداد مسبق محدد، بالإضافة إلى الإعداد المسبق التالي أو السابق. ليس بالضرورة أن تكون أرقام الإعدادات المسبقة متسلسلة، أي يمكنك استخدام الإعدادات المسبقة ١، ٢، ٣، ٥، ٧، و٨. تتكرر الإعدادات المسبقة من الأعلى إلى الأسفل ومن الأسفل إلى الأعلى.
طلب
/الإعداد المسبق؟ معرف = معرف الإعداد المسبق | -1 | +1
| حدود | وصف |
| id | رقم تعريف الإعداد المسبق المراد تحميله. يمكنك العثور على قائمة معرفات الإعدادات المسبقة المتاحة باستخدام أمر "إظهار الإعدادات المسبقة". إذا كان مُعرِّف الإعداد المسبق +١، فسيتم تحميل الإعداد المسبق التالي. إذا كان مُعرِّف الإعداد المسبق -١، فسيتم تحميل الإعداد المسبق السابق. |
إجابة
إذا كان الإعداد المسبق عبارة عن قائمة من المسارات، فإنه يقوم بإرجاع عدد المسارات التي تم تحميلها من الإعداد المسبق.
60
إذا كان الإعداد المسبق عبارة عن راديو، فإنه يعيد حالة البث.
تدفق
| سمات الاستجابة | وصف |
| خدمة | اسم الخدمة للإعداد المسبق المحمّل |
| الإدخالات | عدد مسارات الإعداد المسبق المحملة |
Example
http://192.168.1.100:11000/Preset?id=4
قم بتحميل الإعداد المسبق باستخدام معرف الإعداد المسبق 4.
http://192.168.1.100:11000/Preset?id=+1
تصفح المحتوى والبحث فيه
يصف هذا القسم الأوامر الخاصة بتصفح محتوى خدمة الموسيقى والبحث عنه.
7.1 تصفح محتوى الموسيقى
وصف
التنقل عبر مصادر الموسيقى المتاحة، بالإضافة إلى المدخلات وقوائم التشغيل.
العنصر الجذري للاستجابات هو ما لم يكن هناك استجابة خطأ. معظم النتائج عبارة عن سلسلة من . في بعض الحالات تكون النتيجة عبارة عن سلسلة من ، كل منها يحتوي على تسلسل إذا يتم توفير جميع القيم باستخدام السمات. لا توجد عقد نصية.
قد تكون نتيجة استدعاء /Browse عبارة عن خطأ محاط بـ العنصر الجذري. تفاصيل الخطأ موجودة في ملف واحد و صفر أو أكثر عقد النص.
طلب
/تصفح؟key=key-value
/تصفح؟key=key-value&withContextMenuItems=1
| حدود | وصف |
| مفتاح | مُعامل اختياري. سيؤدي غياب هذا المُعامل إلى استعراض من المستوى الأعلى. يُرجع معلومات عن مستويات أخرى غير مستوى الاستعراض الأعلى. يستخدم القيمة المأخوذة من قيمة سمة "browseKey" أو "nextKey" أو "parentKey" أو "contextMenuKey" من استجابة سابقة. ملاحظة: يجب أن تكون القيمة الرئيسية URL مُشفّر |
| مع عناصر القائمة السياقية | معلمة اختيارية. القيمة دائما 1. يتم استخدام هذه المعلمة للحصول على قائمة سياقية مضمنة عند الحصول على نتيجة تصفح قوائم التشغيل والألبومات والمقاطع الصوتية والمحطات والفنانين وما إلى ذلك. |
إجابة
استجابة التصفح على المستوى الأعلى:
<item image=”/images/InputIcon.png” text=”Optical Input”
يلعبURL=”/لعب؟url=Capture%3Ahw%3A1%2C0%2F1%2F25%2F2%2Finput1″ inputType=”spdif”
النوع = “الصوت”/>
استجابة التصفح على مستوى آخر:
<browse sid=”16″ serviceIcon=”/Sources/images/DeezerIcon.png” serviceName=”Deezer”
الخدمة = "Deezer" مفتاح البحث = "Deezer: بحث" النوع = "القائمة">
تصفح العنصر: مفتاح = "/ قوائم التشغيل؟ الخدمة = Deezer & النوع = 0 & الفئة = القائمة العلوية" النص = "قوائم التشغيل الشائعة"
النوع = “الرابط”/>
النوع = “الرابط”/>
النوع = “الرابط”/>
تصفح العنصر: مفتاح = "/ الأغاني؟ الخدمة = Deezer & النوع = 0 & الفئة = القائمة العلوية" النص = "الأغاني الشعبية"
النوع = “الرابط”/>
| سمات الاستجابة | وصف |
| راجع جداول العناصر/السمات أدناه |
Example
ملحوظة: يجب أن تكون جميع المعلمات الرئيسية مشفرة بتنسيق UTF-8.
http://192.168.1.100:11000/Browse
هل يقوم بتصفح المستوى الأعلى؟
http://192.168.1.100:11000/Browse?key=Tidal%3A
يقوم بتصفح المستوى الثاني، وإرجاع فئات المد والجزر.
http://192.168.1.100:11000/Browse?key=Tidal%3AmenuGroup%2F3
يقوم بتصفح المستوى الثالث، ويعيد الفئات الفرعية Tidal Masters (المجموعة 3).
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DTidal%26category%3Dmasters
يقوم بتصفح المستوى الرابع، ويعيد المجموعة الأولى من ألبومات Tidal Masters.
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DTidal%26category%3Dmasters%26 start%3D30%26end%3D79
يقوم بتصفح المستوى الرابع مرة أخرى، ويعيد المجموعة الثانية من ألبومات Tidal Masters.
| عنصر | السمات (والقيم) | وصف | |
| أيقونة الخدمة | عنوان URI الخاص بأيقونة الخدمة التي يتم تصفحها حاليًا. | ||
| اسم الخدمة | اسم الخدمة التي يتم تصفحها حاليًا، لعرضها للمستخدم. | ||
| مفتاح البحث | قيمة تُستخدم كمعلمة رئيسية لطلب /Browse للبحث في الخدمة الحالية (أو في جزء أعمق من التسلسل الهرمي). بالإضافة إلى ذلك، يجب أن يحتوي الطلب على معلمة aq تحتوي على مصطلح البحث. | ||
| المفتاح التالي | قيمة لاستخدامها كمعلمة رئيسية لطلب /Browse للحصول على الصفحة التالية من العناصر الحالية viewلا يقع حجم جزء التقسيم إلى صفحات تحت سيطرة مستخدم واجهة برمجة التطبيقات، ولا ينبغي إجراء أي محاولة لتحليل أو معالجة معلمات الاستعلام الخاصة بهذه القيمة. | ||
| مفتاح الوالدين | قيمة لاستخدامها كمعلمة رئيسية لطلب /Browse للتنقل مرة أخرى إلى أعلى التسلسل الهرمي إذا كان من المفترض تجاوز التنقل الخلفي الافتراضي. | ||
| يكتب | قائمة طعام | عقدة تنقل قد تحتوي على مزيج من جميع أنواع العناصر. عادةً ما تحتوي فقط على روابط أو عناصر صوتية. | |
| قائمة السياق | قائمة العناصر من النوع المحدد. | ||
| الفنانين | |||
| عنصر | السمات (والقيم) | وصف | |
| الملحنين | |||
| الألبومات | |||
| قوائم التشغيل | |||
| المسارات | |||
| الأنواع | |||
| الأقسام | الأقسام الأبجدية. | ||
| أغراض | قائمة نتائج عامة. عادةً ما تكون مزيجًا من عُقد القائمة (النوع = "رابط") وعناصر الاختيار (النوع = "صوت"). | ||
| المجلدات | قد يحتوي على مجلدات فرعية ومسارات وإدخالات قوائم التشغيل. | ||
| نص | التوجه إلى الفئة. | ||
| المفتاح التالي | قيمة يتم استخدامها لمعلمة رئيسية لطلب /Browse للحصول على الصفحة التالية من العناصر الخاصة بالفئة. | ||
| مفتاح الوالدين | قيمة لاستخدامها كمعلمة رئيسية لطلب /Browse للتنقل مرة أخرى إلى أعلى التسلسل الهرمي إذا كان من المفترض تجاوز التنقل الخلفي الافتراضي. | ||
| يكتب | وصلة | عقدة عامة في التسلسل الهرمي للاستعراض تؤدي إلى عقد أخرى | |
| صوتي | عقدة يمكن تشغيلها مباشرة | ||
| فنان | عنصر يمثل فنانًا | ||
| عنصر | السمات (والقيم) | وصف | |
| ملحن | عنصر يمثل ملحنًا | ||
| الألبوم | عنصر يمثل ألبومًا أو مجموعة مماثلة | ||
| قائمة التشغيل | عنصر يمثل قائمة تشغيل أو مجموعة مماثلة | ||
| مسار | عنصر يمثل مسارًا واحدًا | ||
| نص | عقدة نص عادي. | ||
| قسم | قسم أبجدي. | ||
| مجلد | مجلد في تصفح المجلدات. | ||
| نص | السطر الرئيسي أو الأول من وصف العنصر | ||
| النص 2 | الخط الثاني | ||
| صورة | أيقونة أو عمل فني للعنصر. إذا بدأت الصورة بـ
قد يؤدي إضافة معلمة/مفتاح إلى إعادة التوجيه. متابعة إعادة التوجيه=1 عند استرجاع الصورة يمكن تجنب إعادة التوجيه. |
||
| مفتاح التصفح | قيمة لاستخدامها كمعلمة رئيسية لطلب /Browse لاحق للنزول في التسلسل الهرمي. | ||
| يلعبURL | عنوان URI يُمكن استدعاؤه مباشرةً لتشغيل العنصر المطلوب. عادةً ما يكون ذلك لمسح قائمة الانتظار وبدء تشغيله. | ||
| التشغيل التلقائيURL | URI يمكن استدعاؤه مباشرةً لإضافة مسار إلى قائمة الانتظار وتشغيله وإضافة مسارات لاحقة من الكائن المحتوي (مثل الألبوم) إلى التعبئة التلقائية | ||
| عنصر | السمات (والقيم) | وصف |
| قسم من قائمة التشغيل. | ||
| مفتاح القائمة السياقية | قيمة يتم استخدامها لمعلمة رئيسية لطلب /Browse للحصول على نتيجة عبارة عن قائمة سياقية للإجراءات المتعلقة بالعنصر. | |
| فعلURL | URI يمكن استدعاؤه مباشرة لأداء الإجراء المحدد. |
قد تحتوي عناصر قائمة السياق على القيم التالية لسمة النوع.
| يصف | ||
| وصف | ||
| مفضل | -يضيف | أضف العنصر كمفضل (أو ما يعادله) |
| -يمسح | إزالة العنصر من مفضلات المستخدم | |
| يضيف | أضف إلى قائمة التشغيل | |
| يضيف | -الآن | أضف إلى قائمة التشغيل بعد المسار الحالي وقم بالتشغيل الآن |
| -التالي | أضف إلى قائمة التشغيل بعد المسار الحالي | |
| -آخر | أضف إلى نهاية قائمة التشغيل | |
| إضافة الكل | -الآن | أضف كائنًا متعدد المسارات إلى قائمة التشغيل وقم بالتشغيل الآن |
| -التالي | إضافة كائن متعدد المسارات إلى قائمة التشغيل بعد المسار الحالي أو كائن متعدد المسارات | |
| -آخر | إضافة كائن متعدد المسارات إلى نهاية قائمة التشغيل | |
| تشغيل الراديو | تشغيل محطة راديو ذات صلة بالعنصر | |
| يمسح | احذف الكائن (عادةً قائمة تشغيل). يجب طلب تأكيد المستخدم. |
عند التصفح باستخدام المعلمة "withContextMenuItem=1"، ستحتوي النتيجة على قائمة سياق مضمنة.
Example
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DDeezer%26genre%3D0%26category %3Dtoplist&withContextMenuItems=1
هل يقوم طلب Deezer => What's Hot => Popular Albums بقائمة سياقية مضمنة.
إجابة
تحتوي الاستجابة على نص مضمن لكل عنصر.
<item text=”Essonne History X” contextMenuKey=”Deezer:contextMenu/Album?albumid=693798541″
يلعبURL=”/إضافة؟ خدمة=Deezer&albumid=693798541&playnow=1″ صورة=”/عمل فني؟ خدمة=Deezer&albumid=693798541″
browseKey=”Deezer:Album?artist=Ziak&album=Essonne%20History%20X&albumid=693798541″ text2=”Ziak” type=”album”>
<item text=”Favorite” type=”favourite-add” actionURL=”/AddFavourite?service=Deezer&albumid=693798541″/>
<item text=”Play now” type=”add-now”
فعلURL=”/إضافة؟ الخدمة=Deezer&تشغيل الآن=1&مسح=0&خلط=0&أين=الألبوم التالي&الألبوم=693798541″/>
<item text=”Shuffle” type=”add-shuffle”
فعلURL=”/إضافة؟ الخدمة=Deezer&خلط=1&تشغيل الآن=1&أين=الألبوم التالي&الألبوم=693798541″/>
<item text=”Add next” type=”addAll-next” actionURL=”/إضافة؟ الخدمة=Deezer&تشغيل الآن=-1&حيث=الألبوم التالي&الألبوم=693798541″/>
<item text=”Add last” type=”addAll-last” actionURL=”/إضافة؟ الخدمة=Deezer&تشغيل الآن=-1&حيث=الأخير&الألبوم=693798541″/>
…
ملاحظات وتلميحات التنفيذ
يتم توفير سمة نوع العنصر كتلميح قد يسهل خيارات العرض المختلفة.
يُشار إلى إمكانية تصفح محتويات عنصر ما بوجود سمة browseKey. ويُشار إلى إمكانية تشغيل عنصر (كامل) بوجود خاصية التشغيل.URL (وربما أيضًا التشغيل التلقائيURL) السمة. قد يحتوي العنصر على سمة browseKey وسمة playURL يصف.
عندما يلعب كلاهماURL والتشغيل التلقائيURL تتوفر السمات، ويجب أن يكون اختيار السمة التي سيتم استخدامها كخيار تشغيل افتراضي موضوعًا لتفضيلات المستخدم.
عادةً ما تكون قيم مُعرِّفات الموارد المُوحَّدة (URIs) نسبيةً ذات مُكوِّن مسارٍ مُطلق. تُحوَّل مُعرِّفات الموارد المُوحَّدة (URIs) النسبية إلى مُعرِّفات موارد مُوحَّدة (URIs) مُطلقة وفقًا لمعيار RFC 3986.
يجب دائمًا ترميز قيم السمات browseKey و contextMenuKey و searchKey باستخدام URI (نسبة مئوية مفلترة) عند استخدامها كقيمة لمعلمة مفتاح لطلب /Browse، كما هو الحال مع أي معلمات طلب أخرى.
عند النزول في التسلسل الهرمي للاستعراض، قد يكون من المفيد لرأس صفحة واجهة المستخدم أن يعرض نوعًا ما من مسار التنقل، ربما باستخدام عنوان (نص) العقد الأصلية والأجداد.
قد يكون من المفيد توفير قائمة السياق للوالد عند تصفح أطفاله.
قد يكون من المفيد مراعاة نوع الوالد عند اتخاذ القرار بشأن كيفية عرض أطفاله.
7.2 البحث عن محتوى الموسيقى
وصف
أمر للبحث داخل الخدمة.
طلب
/تصفح؟key=key-value&q=searchText
| حدود | وصف |
| مفتاح | القيمة المأخوذة من قيمة سمة "searchKey" من استجابة سابقة |
| q | سلسلة البحث. ابحث في السياق المحدد بواسطة معامل المفتاح (المأخوذ من سمة مفتاح البحث في الاستجابة). في حال عدم وجود معامل مفتاح، ابحث في المستوى الأعلى. |
إجابة
<browse sid=”16″ serviceIcon=”/Sources/images/DeezerIcon.png” serviceName=”Deezer”
الخدمة = "Deezer" مفتاح البحث = "Deezer: بحث" النوع = "القائمة">
لعرض أعلى مستوى من نتائج البحث. للاطلاع على نتائج بحث إضافية عن الفنانين أو الألبومات أو الأغاني أو قوائم التشغيل، يلزم استخدام أمر تصفح باستخدام مفتاح "browseKey".
على سبيل المثالampلرؤية نتيجة البحث عن الألبومات، أرسل الأمر:
http://192.168.1.100:11000/Browse?key=%2FAlbums%3Fservice%3DDeezer%26expr%3Dmichael
ستكون الاستجابة مماثلة للاستجابة لأمر /Browse العادي.
| سمات الاستجابة | وصف |
| راجع جداول العناصر/السمات في أمر الاستعراض |
Example
http://192.168.1.100:11000/Browse?key=Deezer:Search&q=michael بحث عن “michael” within the Deezer music service.
تجميع اللاعبين
يصف هذا القسم أوامر تجميع اللاعبين وفك تجميعهم افتراضيًا. يدعم BluOS أيضًا التجميع الثابت، وهو أمر خارج نطاق هذه الوثيقة.
يستخدم نظام BluOS مصطلحي "المشغل الرئيسي" و"المشغل الثانوي". المشغل الرئيسي هو المشغل الرئيسي في المجموعة، ويُستخدم لاختيار مصدر الموسيقى. يوجد مشغل رئيسي واحد فقط، ومشغل ثانوي متصل بالمشغل الرئيسي. يمكن أن يكون هناك عدة مشغلات ثانوية.
إذا كان اللاعب لاعبًا ثانويًا، فسيتم توجيه العديد من الطلبات، إذا وُجِّهت إلى اللاعب الثانوي، داخليًا إلى اللاعب الأساسي. وتشمل هذه الطلبات: /Status، و"التحكم في التشغيل"، و"إدارة قائمة التشغيل"، و"تصفح المحتوى والبحث فيه".
8.1 لاعبو المجموعة الثانية
وصف
قم بتجميع لاعب ثانوي واحد إلى لاعب أساسي.
طلب
/إضافة عبد؟ عبد=مشغل ثانوي IP&المنفذ=منفذ المشغل الثانوي&المجموعة=اسم المجموعة
| حدود | وصف |
| عبد | عنوان IP للاعب الثانوي. |
| ميناء | رقم منفذ المشغل الثانوي. رقم المنفذ الافتراضي هو ١١٠٠٠. تستخدم مشغلات مثل NAD CI11000، التي تحتوي على أربعة مشغلات بعنوان IP واحد، منافذ متعددة. |
| مجموعة | اختياري، اسم المجموعة. إذا لم يُحدَّد، فسيُعطي BluOS اسمًا افتراضيًا للمجموعة. |
إجابة
| سمات الاستجابة | وصف |
| ميناء العبيد | رقم منفذ المشغل الثانوي الذي تم تجميعه للتو. |
| Id | معرف اللاعب الثانوي الذي تم تجميعه للتو. |
Example
http://192.168.1.100:11000/AddSlave?slave=192.168.1.153&port=11000
هذه المجموعة تجمع المشغل 192.168.1.153 مع المشغل 192.168.1.100. المشغل 192.168.1.100 هو المشغل الرئيسي.
8.2 إضافة لاعبين متعددين إلى مجموعة
وصف
تجميع لاعبين اثنين أو أكثر في لاعب أساسي.
طلب
/إضافة عبد؟ العبيد=عنوان IP الخاص بالمشغل الثانوي&المنافذ=منافذ المشغل الثانوي
| حدود | وصف |
| العبيد | عناوين IP للاعبين الثانويين الذين سيتم إضافتهم إلى اللاعب الأساسي. يتم فصل عناوين IP بفاصلة. |
| الموانئ | منافذ المشغلات الثانوية المراد إضافتها إلى المشغل الرئيسي. أرقام المنافذ مفصولة بفاصلة. |
إجابة
| سمات الاستجابة | وصف |
| ميناء | منفذ اللاعب الثانوي الذي تم تجميعه. |
| Id | معرف اللاعب الثانوي الذي تم تجميعه. |
Example
http://192.168.1.100:11000/AddSlave?slaves=192.168.1.153,192.168.1.120&ports=11000,11000
مجموعات اللاعبين الثانويين 192.168.1.153 و192.168.1.120 إلى اللاعب الأساسي 192.168.1.100.
8.3 إزالة لاعب واحد من المجموعة
إزالة لاعب من مجموعة. في حال إزالة لاعب ثانوي من مجموعة، يُفصل اللاعب الثانوي عن المجموعة. أما في حال إزالة اللاعب الأساسي من مجموعة مكونة من ثلاثة لاعبين أو أكثر، يُفصل اللاعب الأساسي عن المجموعة، ويُشكل اللاعبون الثانويون المتبقون مجموعة جديدة.
طلب
/إزالة الرقيق؟ الرقيق = IP اللاعب الثانوي والمنفذ = منفذ اللاعب الثانوي
| حدود | وصف |
| عبد | عنوان IP الخاص باللاعب (الثانوي) الذي سيتم إضافته إلى لاعب آخر (أساسي). |
| ميناء | منفذ اللاعب (الثانوي) الذي سيتم إضافته إلى لاعب آخر (أساسي). |
إجابة
<SyncStatus icon=”/images/players/P300_nt.png” volume=”4″ modelName=”PULSE” name=”PULSE0278″ model=”P300″
العلامة التجارية = “بلوساوند” هـtag=”25″ outlevel=”-62.9″ schemaVersion=”25″ initialized=”true” group=”PULSE-0278+POWERNODE-0A6A” syncStat=”25″ id=”192.168.1.100:11000″mac=”90:56:82:9F:02:78″>
| سمات الاستجابة | وصف |
| راجع /SyncStatus للحصول على التفاصيل. |
Example
http://192.168.1.100:11000/RemoveSlave?slave=192.168.1.153&port=11000
إلغاء تجميع المشغل 192.168.1.153 من المجموعة التي تحتوي على المشغل الأساسي 192.168.1.100
8.4 إزالة لاعبين متعددين من مجموعة
وصف
إزالة لاعبين اثنين أو أكثر من المجموعة.
طلب
/RemoveSlave?slaves=secondaryPlayerIPs&ports=secondaryPlayerPorts
| حدود | وصف |
| العبيد | عناوين IP للاعبين الثانويين الذين سيتم إزالتهم من اللاعب الأساسي. يتم فصل عناوين IP بفاصلة. |
| حدود | وصف |
| الموانئ | منافذ المشغلات الثانوية المطلوب إزالتها من المشغل الرئيسي. أرقام المنافذ مفصولة بفواصل. |
إجابة
<SyncStatus icon=”/images/players/P300_nt.png” volume=”4″ modelName=”PULSE” name=”PULSE0278″ model=”P300″ brand=”Bluesound” etag=”41″ outlevel=”-62.9″ schemaVersion=”25″ initialized=”true” syncStat=”41″ id=”192.168.1.100:11000″ mac=”90:56:82:9F:02:78″></SyncStatus>
| سمات الاستجابة | وصف |
| راجع /SyncStatus للحصول على التفاصيل. |
Example
http://192.168.1.100:11000/RemoveSlave?slaves=192.168.1.153,192.168.1.120&ports=11000,11000
يقوم بإزالة اللاعبين 192.168.1.153 و192.168.1.120 من المجموعة التي تحتوي على اللاعب الأساسي 192.168.1.100.
إعادة تشغيل اللاعب
يصف هذا القسم الأمر الخاص بإعادة تشغيل اللاعب بشكل ناعم.
9.1 إعادة تشغيل المشغل
وصف
إعادة تشغيل المشغل بشكل ناعم.
طلب
أمر POST /reboot مع المعلمة yes (أي قيمة)
| حدود | وصف |
| نعم | أي قيمة (على سبيل المثال 1). |
إجابة
تم تحديث الإعدادات
جاري إعادة التشغيل. يُرجى إغلاق هذه النافذة.
انتظر من فضلك…
Example
curl -d نعم=1 192.168.1.100/إعادة التشغيل
أجراس الباب
يصف هذا القسم الأوامر الخاصة بجرس باب اللاعب.
10.1 أجراس الباب
وصف
تفعيل رنين جرس الباب.
طلب
http://PLAYERIP:PORT/Doorbell?play=1
| حدود | وصف |
| يلعب | تشغيل جرس الباب (دائمًا 1) |
إجابة
| سمات الاستجابة | وصف |
| يُمكَِن | أشر إلى الرنين |
| مقدار | حجم الرنين |
| رنين | صوت الرنين |
Example
http://192.168.1.100:11000/Doorbell?play=1 play doorbell chime
المساهمة المباشرة
يصف هذا القسم الأوامر الخاصة باختيار مصدر الإدخال المباشر.
11.1 اختيار الإدخال النشط
وصف
اختيار مصدر الإدخال النشط. يعمل هذا الأمر مع المدخلات النشطة التي تظهر في رد /RadioBrowse?service=Capture. يدعم هذا الأمر فقط اختيار مدخلات BluOS HUB.
طلب
/يلعب؟url=URL_قيمة
| حدود | وصف |
| url | ال URL السمة من الاستجابة إلى /RadioBrowse?service=Capture |
إجابة
تدفق
| سمات الاستجابة | وصف |
| ولاية | يشير إلى أن الإدخال قيد التشغيل |
Example
الخطوة 1. احصل على URL_قيمة المعلمة url
الطلب: http://192.168.1.100:11000/RadioBrowse?service=Capture
إجابة:
<item playerName=”Tick
ضع علامة صح على النص = "بلوتوث" نوع الإدخال = "بلوتوث" معرف = "الإدخال 2" URL=”التقاط%3Abluez%3Abluetooth” صورة=” /images/BluetoothIcon.png” نوع=”صوت”/>
<item playerName=”Tick Tick” text=”Analog
الإدخال "inputType="تناظري" id="input0" URL=”Capture%3Aplughw%3Aimxnadadc%2C0%2F48000%2F 24%2F2%3Fid%3Dinput0″ image=”/images/capture/ic_analoginput.png” type=”audio”/>
<item playerName=”Tick Tick” text=”Optical
الإدخال” inputType=”spdif” id=”input1″ URL=”Capture%3Ahw%3Aimxspdif%2C0%2F1%2F25%2F2%3Fid%
3Dinput1″ image=”/images/capture/ic_opticalinput.png” type=”audio”/>
<item playerName=”Tick
ضع علامة صح على النص = "Spotify" المعرف = "Spotify" URL=”Spotify%3Aplay” image=”/Sources/images/SpotifyIcon.png” الخدمة
النوع = "خدمة السحابة" النوع = "الصوت"/>
<remoteitem playerName=”Test Hub” text=”Analog Input” inputType=”analog” id=”hub192168114911000input0″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput0″
الصورة = “/ صور / التقاط / أنا
c_analoginput.png”
النوع = “الصوت”/>
<remoteitem playerName=”Test Hub” text=”Coaxial Input” inputType=”spdif” id=”hub192168114911000input3″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput3″
الصورة = “/ صور / التقاط / ic
_opticalinput.png”
النوع = “الصوت”/>
<remoteitem playerName=”Test Hub” text=”HDMI ARC” inputType=”arc” id=”hub192168114911000input4″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput4″
الصورة = “/ صور / التقاط / ic
_tv.png”
النوع = “الصوت”/>
<remoteitem playerName=”Test Hub” text=”Optical Input” inputType=”spdif” id=”hub192168114911000input2″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput2″
الصورة = “/ صور / التقاط / ic
_opticalinput.png”
النوع = “الصوت”/>
<remoteitem playerName=”Test Hub” text=”Phono Input” inputType=”phono” id=”hub192168114911000input1″
URL=”Hub%3A%2F%2F192.168.1.149%3A11000%2Finput1″
الصورة = “/ صور / التقاط / ic
_vinyl.png”
النوع = “الصوت”/>
الخطوة 2. تشغيل الإدخال التناظري على المشغل
http://192.168.1.100:11000/Play?url=Capture%3Aplughw%3A2%2C0%2F48000%2F24%2F2%3Fid%3Dinput0 or play Analog Input of a HUB named “Test Hub”
http://192.168.1.100:11000/Play?url= Hub%3A%2F%2F192.168.1.149%3A11000%2Finput0
ملحوظة: تأكد من أن المصادر متصلة وليست مخفية.
11.2 اختيار الإدخال الخارجي
وصف
اختيار مصدر الإدخال الخارجي. في بعض الأحيان، قد لا تظهر المدخلات الخارجية غير النشطة في الاستجابة.
/RadioBrowse?service=Capture. يعمل هذا الأمر مع كلٍّ من اختيارات الإدخال النشطة وغير النشطة. يُوصى به لاختيارات الإدخال الخارجي CI.
طلب (برامج BluOS الثابتة أحدث من v3.8.0 وأقدم من v4.2.0)
/تشغيل؟ inputIndex=IndexId
| حدود | وصف |
| مؤشر الإدخال | فهرس (يبدأ بالرقم ١) للمدخلات التي تظهر في الرد على /Settings?id=capture&shcemaVersion=1 (32 هو أحدث إصدار للمخطط) بالترتيب الرقمي. البلوتوث غير مشمول. |
إجابة
تدفق
| سمات الاستجابة | وصف |
| ولاية | يشير إلى أن الإدخال قيد التشغيل |
Example
الخطوة 1. الحصول على قيمة inputIndex
الطلب: http://192.168.1.100:11000/Settings?id=capture&schemaVersion=32
إجابة:
<menuGroup icon=”/images/settings/ic_capture.png” url=”/setting” id=”التقاط”
displayName=”تخصيص المصادر”>
<setting icon=”/images/settings/ic_bluetooth.png” refresh=”true” url=”/أوضاع الصوت”
id=”bluetooth” displayName=”Bluetooth” value=”3″ name=”bluetoothAutoplay” description=”Disabled” explain=”يسمح لك الوضع اليدوي بالتبديل بين المصادر في نافذة التنقل. ينتقل الوضع التلقائي إلى مصدر البلوتوث عندما يبدأ جهاز بلوتوث متصل بتشغيل الصوت. يمكنك بعد ذلك التبديل بين المصادر في نافذة التنقل. ينتقل وضع الضيف إلى مصدر البلوتوث عندما يبدأ جهاز بلوتوث متصل بتشغيل الصوت. إذا غيرت مصدرًا آخر، فسيتم فصل البلوتوث. لا يظهر مصدر البلوتوث في نافذة التنقل. يؤدي تعطيل المصدر إلى إزالته من نافذة التنقل، ولا يسمح لأي جهاز آخر بالاتصال بالمشغل كجهاز بلوتوث.
المصدر.”
…
<menuGroup icon=”/images/capture/ic_analoginput.png” url=”/setting” id=”captureinput0″
اسم العرض = "التناظرية
"إدخال">
<menuGroup icon=”/images/capture/ic_opticalinput.png” url=”/setting” id=”capture-input1″
اسم العرض = "المدخل البصري">
تُظهر الاستجابة البلوتوث، والمدخل التناظري، والمدخل البصري. تم استبعاد البلوتوث، لذا تكون قيمة inputIndex 1 للمدخل التناظري، و2 للمدخل البصري.
الخطوة 2. تشغيل الإدخال البصري على المشغل.
http://192.168.1.100:11000/Play?InputId=2
طلب (برنامج BluOS الثابت v4.2.0 أو أحدث)
/تشغيل؟ inputTypeIndex=$typeIndex
| حدود | وصف |
| نوع الإدخال الفهرس | typeIndex له التنسيق مؤشر النوع من المدخلات. إليك قائمة المدخلات يكتب: spdif (المدخل البصري) تناظري (مدخل تناظري، مدخل خطي) محوري (مدخل محوري) بلوتوث قوس (HDMI ARC) كمبيوتر صوتي (HDMI eARC) (فينيل). aesebu (AES/EBU) متوازن (متوازن في) الميكروفون (مدخل الميكروفون) ال فِهرِس يبدأ من 1. عندما يكون هناك أكثر من مدخل من نفس النوع، يكون المدخل 1 فِهرِس 1، المدخل 2 لديه فِهرِس 2، وهكذا. |
إجابة
تدفق
| سمات الاستجابة | وصف |
| ولاية | يشير إلى أن الإدخال قيد التشغيل |
Example
الطلب: http://192.168.1.100:11000/Play?inputTypeIndex=spdif-2 لتحديد الإدخال البصري 2
إجابة: تدفق
بلوتوث
يصف هذا القسم الأمر لتغيير وضع البلوتوث.
12.1 تغيير وضع البلوتوث
وصف
تغيير وضع البلوتوث: يدوي، تلقائي، ضيف، معطل.
طلب
/audiomodes?bluetoothAutoplay=value
| حدود | وصف |
|
التشغيل التلقائي للبلوتوث |
وضع البلوتوث قيمة 0 يعني يدوي، 1 يعني تلقائي، 2 يعني ضيف، 3 يعني معطل. |
لا يوجد رد
Example
الطلب: http://192.168.1.100:11000/audiomodes?bluetoothAutoplay=3 لتعطيل البلوتوث
زائدة
13.1 بروتوكول اكتشاف خدمة لينبروك
مقدمة
تعتمد طرق الاكتشاف الشائعة، مثل mDNS وSSDP، على اتصالات البث المتعدد UDP. تستخدم معظم منتجات Lenbrook الحالية mDNS للاكتشاف. للأسف، وجدنا أن عددًا كبيرًا من عملائنا لديهم شبكات منزلية لا تعمل فيها حركة البث المتعدد بشكل صحيح، مما يجعل اكتشاف أجهزتنا أمرًا صعبًا. وقد أدى ذلك إلى العديد من عمليات إرجاع المنتجات والشكاوى من موزعينا.
لمعالجة هذه المشكلة، أنشأنا بروتوكول اكتشاف مخصصًا يُسمى LSDP، والذي يستخدم بث UDP. وقد أظهرت الاختبارات الأولية أنه أكثر موثوقية بكثير من الاكتشاف القائم على mDNS.
انتهى البروتوكولview
أحد أهداف هذا البروتوكول هو أن يكون بسيطًا نسبيًا. يمكن استخدامه في الأجهزة المدمجة ذات الذاكرة المحدودة جدًا.
يستخدم البروتوكول جميع حزم البث UDP من وإلى منفذ UDP 11430. تم تسجيل هذا المنفذ لدى IANA وتم تعيينه إلى Lenbrook لاستخدام LSDP اعتبارًا من 27 مارس 2014.
في حالة مستقرة، كل عقدة لديها خدمة للإعلان تبث رسالة إعلانية كل دقيقة تقريبًا.
عند بدء التشغيل وعند تغيير قائمة الخدمات أو معلمات الشبكة، تُبث سبع حزم على فترات قصيرة للسماح بالاكتشاف الأولي وانتشار التغييرات بشكل أسرع. بالنسبة للعقد التي تُعلن عن خدمات، يجب أن تتضمن هذه الحزم السبع رسالة إعلان. بالنسبة للعقد التي تحاول اكتشاف الخدمات، يجب أن تتضمن الحزم السبع رسالة استعلام. بالنسبة للخدمات التي لم تعد متوفرة، يجب أن تتضمن الحزم السبع رسالة حذف.
تُرسل هذه الحزم الأولية سبع مرات نظرًا لعدم موثوقية حزم UDP. في حالة فشل جميع الحزم السبع، وهو أمر مستبعد، سيتم اكتشاف الخدمات بعد فترة من رسائل الإعلان الدورية التي تستغرق دقيقة واحدة.
إذا تلقت إحدى العقد رسالة استعلام لفئة خدمة تعلن عنها، فيجب عليها الرد برسالة إعلان بعد فترة زمنية عشوائية قصيرة وإعادة تعيين مهلة الإعلان الحالية.
يتضمن رأس الحزمة وجميع كتل الرسائل حقول طول. هذا يوفر مرونة إضافية ويسمح بإجراء تغييرات متوافقة مع الإصدارات السابقة مستقبلًا. يمكن إضافة حقول أو أنواع رسائل إضافية مستقبلًا، والتي قد تتخطاها التطبيقات القديمة عند التحليل. إذا قررنا إجراء تغيير غير متوافق مع الإصدارات السابقة، فسيوجد أيضًا حقل إصدار في رأس الحزمة قابل للزيادة.
يسمح البروتوكول أيضًا بتضمين سجلات TXT مع إعلانات الخدمة المشابهة لسجلات TXT المستخدمة
مع mDNS. هذا يوفر مرونة كبيرة لإدراج بيانات تعريفية عشوائية إضافية مع الخدمة.
الإعلانات دون تغيير البروتوكول.
تفاصيل البروتوكول
توقيت
ينبغي جدولة جميع الحزم المرسلة بتوقيت عشوائي أو تأخيرات للمساعدة في تجنب الاصطدامات.
- توقيت بدء تشغيل الحزمة: ٧ حزم في الوقت = [٠، ١، ٢، ٣، ٥، ٧، ١٠ ثوانٍ] + (من ٠ إلى ٢٥٠ مللي ثانية عشوائيًا). هذه أوقات مطلقة، وليست تأخيرات. يجب إرسال جميع الحزم السبع في غضون ١٠ ثوانٍ تقريبًا.
- فترة الإعلان الرئيسية: 57 ثانية + (من 0 إلى 6 ثوانٍ عشوائيًا)
- تأخير استجابة الاستعلام: (من 0 إلى 750 مللي ثانية عشوائيًا)
معرف العقدة
يجب أن يكون لكل عقدة مُعرِّف فريد يُستخدم لتحديد هويتها. يُضمَّن هذا المُعرِّف الفريد في رسائل الإعلان والحذف. يمكن للعملاء استخدام هذه القيمة كمفتاح أساسي عند تخزين القيم مؤقتًا ولتحديد العقدة بشكل فريد. يمكن أن يكون هذا المُعرِّف الفريد عنوان MAC، ولكن يجب أن يكون هو نفسه لكل واجهة إذا كانت العقدة لديها واجهات متعددة تُعلن عليها.
هيكل الحزمة
تبدأ كل حزمة برأس حزمة متبوعًا بعدد عشوائي من كتل الرسائل. تبدأ كل كتلة رسالة بحقل طول يسمح بتخطي الرسائل غير المتعرف عليها. ما لم يُنص على خلاف ذلك، تُخزن جميع قيم الأرقام متعددة البايتات بترتيب كبير (البايتات الأكثر أهمية أولاً). ما لم يُنص على خلاف ذلك، تكون جميع الأرقام قيمًا بدون إشارة. على سبيل المثال:ampيمكن أن يحتوي طول بايت واحد على قيم تتراوح من 0 إلى 255.
رأس الحزمة
| مجال | بايتات | وصف |
| طول | 1 | الطول الإجمالي للرأس بما في ذلك هذا الحقل. |
| الكلمة السحرية | 4 | يجب أن يكون هذا الحقل عبارة عن بايتات ASCII الأربعة من "LSDP". يساعدنا هذا في تحديد الحزم المُراد استخدامها، وبالتالي لا نحتاج إلى محاولة تحليل بيانات عشوائية من مصدر غير متوقع. |
| إصدار البروتوكول | 1 | إصدار البروتوكول. في حال إجراء تغييرات مستقبلية على البروتوكول غير متوافقة مع الإصدارات السابقة، فسيتم تطبيق هذه النسخة |
| مجال | بايتات وصف | |
| سيتم تغييره. الإصدار الحالي هو 1. | ||
رسالة الاستعلام
| مجال | ||
| بايتات | وصف | |
| طول | 1 | الطول الإجمالي للرسالة بما في ذلك هذا الحقل. |
| نوع الرسالة | 1 | "Q" = 0x51: استعلام قياسي لاستجابة البث. "R" = 0x52: استعلام لاستجابة البث الأحادي. |
| عدد | 1 | عدد الفئات للاستعلام عنها. |
| الصف الثاني | 2 | معرف الفئة 16 بت (2 بايت). |
| … | كرر الحقل السابق لكل فئة إضافية. | |
إعلان الرسالة
إعلان الرأس
| مجال | ||
| بايتات | وصف | |
| طول | 1 | الطول الإجمالي للرسالة بما في ذلك رأس الإعلان الكامل وسجلات الإعلان. |
| نوع الرسالة | 1 | "أ" = 0x41 |
| طول معرف العقدة | 1 | طول حقل معرف العقدة. |
| معرف العقدة | عامل | مُعرِّف العقدة الفريد للعقدة المُرسِلة للإعلان. عادةً ما يكون هذا المُعرِّف عنوان MAC لإحدى واجهات العقدة. |
| طول العنوان | 1 | حقل طول العنوان. بالنسبة لـ IPv4، يجب أن يكون 4. |
| مجال | ||
| بايتات | وصف | |
| عنوان | عامل | عنوان IP للعقدة. |
| عدد | 1 | عدد السجلات المعلنة التي سيتم متابعتها. |
إعلان السجل
| مجال | بايتات | وصف |
| فصل | 2 | معرف الفئة 16 بت (2 بايت). |
|
عدد رسائل TXT |
1 |
عدد سجلات TXT المطلوب متابعتها. إذا كانت القيمة صفرًا، فسيتم حذف الحقول التالية. |
| طول المفتاح 1 | 1 | طول اسم المفتاح. |
| المفتاح 1 | عامل | اسم المفتاح. |
| القيمة 1 الطول | 1 | طول نص القيمة. |
| القيمة 1 | عامل | نص القيمة. |
|
… |
كرر الحقول الأربعة السابقة لكل سجل TXT إضافي. |
حذف الرسالة
| مجال | ||
| بايتات | وصف | |
| طول | 1 | الطول الإجمالي للرسالة بما في ذلك هذا الحقل. |
| نوع الرسالة | 1 | “د” = 0x44 |
| طول معرف العقدة | 1 | طول حقل معرف العقدة. |
| معرف العقدة | عامل | مُعرِّف العقدة الفريد للعقدة المُرسِلة للرسالة. عادةً ما يكون هذا هو عنوان MAC لإحدى العقد. |
| مجال | ||
| بايتات | وصف | |
| واجهات. | ||
| عدد | 1 | عدد الفصول الدراسية التي يجب متابعتها. |
| الصف الثاني | 2 | معرف الفئة 16 بت (2 بايت). |
| … | كرر الحقل السابق لكل فئة إضافية. | |
تعيينات معرف الفصل
| معرف الفئة | وصف | مكافئ mDNS |
| 0×0001 | مشغل BluOS | _musc._tcp |
| 0×0002 | خادم BluOS | _muss._tcp |
| 0×0003 | مشغل BluOS (ثانوي في مشغلات متعددة المناطق مثل CI580) | _musp._tcp |
| 0×0004 | تستخدم شركة sovi-mfg في اختبارات التصنيع. | _sovi-mfg._tcp |
| 0×0005 | لوحة مفاتيح سوفي | _sovi-keypad._tcp |
| 0×0006 | مشغل BluOS (زوج تابع) | _musz._tcp |
| 0×0007 | بعيد Web التطبيق (AVR OSD Web صفحة) | _بعيد-web-ui._tcp |
| 0×0008 | مركز بلو أو إس | _mush._tcp |
| 0xFFFF | جميع الفئات - يمكن استخدامها مع رسالة الاستعلام. |
ملاحظة 1:
يجب التعامل مع حزمة LSDP الإجمالية كبيانات ثنائية.
ملاحظة 2:
إذا لم تتمكن رسالة إعلان واحدة من الاحتفاظ بمعلومات جميع العقد (خاصة CI580)، فسوف تنقسم إلى رسالتي إعلان أو أكثر، حيث تحتوي كل رسالة على الرأس والسجل، وتحتوي كل رسالة على معلومات العقدة (العقد) بالكامل.
واجهة برمجة تطبيقات التكامل المخصص لـ BluOS الإصدار 1.7
المستندات / الموارد
![]() |
واجهة برمجة تطبيقات التكامل المخصصة لـ BluOS T 778 [بي دي اف] دليل المستخدم T 778، T 778 واجهة برمجة تطبيقات التكامل المخصصة، T 778، واجهة برمجة تطبيقات التكامل المخصصة، واجهة برمجة تطبيقات التكامل، واجهة برمجة التطبيقات |
