واجهة Audio Player مع عنوان مثال.
واجهة Audio Player مع عنوان مثال.
← جميع الأدلة الأصلية

Xodera Plugins · Bubble Native

Xodera Audio Player Native

أضف مشغل صوت واضح إلى الدروس أو الرسائل الصوتية أو سجلات المنتجات. دع المستخدمين يستمعون، يغيرون السرعة ويستمرون من موقعهم المحفوظ.

Public beta guides · Haptics instructions are in its Bubble listing

Public beta offer: free Bubble install · 7-day card trial, then US$1.50/month per plugin/project.

تمت مراجعة الوثائق 6 نوفمبر 2026

أمثلة عملية

ملاحظات صوتية داخل محادثة الدعم

رابط ملف عادي يرسل المستخدمين بعيدًا عن المحادثة ويجعل الردود الطويلة صعبة المراجعة.

`source_url = Selected Message’s audio URL`; `title = Selected Message’s sender label`; `subtitle = Selected Message’s timestamp`.

ضع المشغل في تفاصيل الرسالة المحددة. دع المستخدم Play/Pause، Seek إلى نقطة مفيدة وSet speed. اربط `is_active` بالمحادثة المفتوحة.

استخدم `is_playing` و `current_time` و `duration` لعرض التقدم. احتفظ بمعرف Message في تطبيقك حتى لا يتمكن حدث متأخر من تحديث محادثة مختلفة.

عند `player_error`، اعرض `error_code` وقدِّم Reload source؛ احفظ الرسالة ولا تُعلِّمها كمستمع إليها بعد حدوث خطأ.

تشغيل فقط. تطبيقك يحفظ تقدم الاستماع.

استئناف درس اللغة من الموضع المحفوظ

يحتاج المتعلمون إلى إعادة تشغيل مقطع صعب بدلاً من إعادة بدء الدرس بالكامل.

`source_url = Current Lesson’s audio URL`; `title = Current Lesson’s name`; الموضع الأخير يخص ذلك المتعلم والدرس في قاعدة بياناتك.

بعد `ready` للدرس الحالي، Seek إلى الثواني المحفوظة وانتظر المستخدم لـ Play. استخدم Set speed للاستماع الأبطأ. احفظ التقدم باستخدام سير عمل تطبيقك الخاص.

اقرأ `current_time` و`duration`. عند `playback_ended`، قد يسجل تطبيقك مرحلة استماع للـ Lesson الحالي.

إذا تغير المصدر، تجاهل الموضع القديم حتى يتم تحميل ذلك الدرس. لا تعتبر إكمال الاستماع دليلًا على أن المتعلم فهم أو نجح في اختبار.

تشغيل فقط. تطبيقك يحفظ تقدم الاستماع.

مراجعة مرفق صوتي مع تعليقات مؤشرة بالوقت

يحتاج المحرّكون أو المدربون إلى الانتقال من تعليق إلى اللحظة ذات الصلة في التسجيل.

`source_url = Selected Review’s recording URL`؛ كل تعليق مملوك للتطبيق يخزن قيمته الخاصة من الثواني؛ يحتوي `waveform_peaks_json` الاختياري على قمم حقيقية لنفس التسجيل.

انقر على تعليق → Seek إلى ثوانيه → Play. عند تغيير المصدر، استبدل أو امسح القمم واربط المراجعة المحددة مرة أخرى.

اعرض `current_time` بجانب محرر التعليق الخاص بك. `waveform_available` يخبر واجهة المستخدم ما إذا كانت القمم الموفرة فعليًا متاحة.

قيد أو رفض الطوابع الزمنية القديمة مقابل المدة الحالية في تطبيقك. عندما لا توجد قمم حقيقية، اعرض عنصر التحكم بالتقدم العادي بدلاً من تحليل صوتي مُختلق.

تشغيل فقط. تطبيقك يحفظ تقدم الاستماع.

ما يعمل الآن

Public beta. Use the documented controls and actions; test supported formats, permissions and device behavior in your own native app. Browser preview does not validate native device output.

أنشئ تدفق العمل

استخدم إجراءات النسخة التجريبية المتاحة أدناه واختبر النتيجة على أجهزتك المستهدفة.

تستخدم هذه الأمثلة سجلات التطبيق مثل Lesson، Message و Order. استبدلها بأنواع البيانات وأسماء العناصر الخاصة بك. يجب استبدال عناوين الوسائط المثال بملفاتك الخاصة.

  1. أضف عنصر الصوت. اضبط source_url = Selected Message's audio_url، title = Selected Message's sender_label و subtitle = Selected Message's date_label.

  2. إذا كان لديك بيانات شكل موجي حقيقية لهذا التسجيل، مرّرها في waveform_peaks_json. وإلا اتركها فارغة.

  3. عند حدوث جاهز، استخدم Seek مع عدد الثواني المحفوظ إذا لزم الأمر. اسمح للمستخدم بالضغط على Play. استخدم Pause و Seek و Set speed لأزرار المشغل.

  4. اعرض current_time والمدة. عند playback_ended، احفظ تقدم الاستماع للرسالة أو الدرس المحدد. اضبط is_active على ما إذا كان هذا العرض مفتوحًا.

مخطط سير العمل — ليس لقطة شاشة للتطبيق

قم بالإعداد مرة واحدة

أنشئ أو اختر مشروع تطبيق Bubble الخاص بك في BestPlugins → Dashboard → Plugins. اختر Xodera Audio Player Native، انسخ مفتاحه، ثم افتح Bubble → Plugins → Xodera Audio Player Native والصقه في licensing_api_key. احفظ مرة واحدة؛ ثم استخدم الإجراءات أدناه. لكل مكوّن إضافي في كل مشروع مفتاحه الخاص.

استخدم عنوان ملف صوتي مباشر يمكن للتطبيق فتحه. تشغيل الصوت لا يتطلب الوصول إلى الميكروفون أو الكاميرا.

قم بالإعداد مرة واحدة
  1. أنشئ أو اختر مشروع تطبيق Bubble الخاص بك في BestPlugins → Dashboard → Plugins.
  2. اختر هذا المكوّن الإضافي وانسخ مفتاح مشروعه.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. أضف العنصر، اختر بيانات تطبيقك وابنِ سير العمل أدناه.
  5. In the dashboard, review and confirm the 7-day card trial for this plugin. It then costs US$1.50/month per app project, including development and production. Cancel before the trial ends to avoid the first charge.
التثبيت والاشتراك

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

احفظ النتيجة في تطبيقك

مثال ListeningProgress: owner = Current User، lesson = Selected Lesson، seconds = Audio Player's current_time، duration = Audio Player's duration. احفظ عندما يتوقف المستخدم أو يخرج من الدرس، بدلاً من كل تحديث للشاشة.

الفشل، الإلغاء والاستعادة

في player_error، اعرض error_code وقدّم Reload source. احتفظ بسجل الرسالة أو الدرس. عند اختيار تسجيل مختلف، حمّل موقعه المحفوظ الخاص. العودة إلى العرض لا تبدأ التشغيل تلقائيًا.

القدرات والحدود

سرعات التشغيل: 1، 1.5 و 2. مستوى الصوت: 0–1. بيانات الشكل الموجي: قيم 2–2048 بين 0 و 1. صيغ الصوت المدعومة تعتمد على الجهاز. المشغل لا يسجل أو ينسخ أو يحفظ الصوت بشكل دائم للاستخدام دون اتصال. لا يُضمن التشغيل في الخلفية أو على شاشة القفل.

الإعدادات، الإجراءات والنتائج

استخدم هذه الأسماء في Bubble. الميزات المخططة مُعلّمة بشكل منفصل.

إعدادات بيتا المتاحة

إعدادات العنصر

source_url · textwaveform_peaks_json · texttitle · textsubtitle · textplayback_rate · numbervolume · numberloop · yes_nois_active · yes_nodisabled · yes_noui_text_json · textlanguage · text

الحالات

player_status · textis_playing · yes_nois_loaded · yes_nois_buffering · yes_nocurrent_time · numberduration · numberprogress · numberplayback_rate · numbervolume · numberis_looping · yes_nowaveform_available · yes_nowaveform_status · texterror_code · text

الأحداث

readyplayback_startedplayback_pausedplayback_endedseek_completedrate_changedplayer_error

الإجراءات ومدخلاتها

PlayPauseToggleStopSeekSet speedSet volumeReload source
إعدادات العنصر · 11
source_urltext · الافتراضي: ""
قيمة مثالhttps://bestplugins.online/native-samples/lesson.mp3
مثال Bubble تعبيرSelected Message's audio_url
عنوان ملف الصوت أو الفيديو أو الصورة المحدد. استخدم نوع ملف يدعمه هذا الملحق.
waveform_peaks_jsontext · الافتراضي: ""
قيمة مثال[0.1,0.4,0.2,0.7]
مثال Bubble تعبيرSelected Message's waveform_peaks_json
قيم السعة الطبيعية الحقيقية لهذا التسجيل؛ اتركها فارغة إذا لم تتوفر.
titletext · الافتراضي: ""
قيمة مثالLesson 4 — review
مثال Bubble تعبيرSelected Lesson's name
نص التطبيق المرئي؛ إذا كان فارغًا يستخدم النسخة المترجمة المدمجة حيثما تدعم. لا بيانات اعتماد.
subtitletext · الافتراضي: ""
قيمة مثالTeacher · today
مثال Bubble تعبيرSelected Message's sender_label
نص التطبيق المرئي؛ إذا كان فارغًا يستخدم النسخة المترجمة المدمجة حيثما تدعم. لا بيانات اعتماد.
playback_ratenumber · الافتراضي: 1
قيمة مثال1.5
مثال Bubble تعبيرCurrent User's listening_speed
استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
volumenumber · الافتراضي: 1
قيمة مثال0.8
مثال Bubble تعبيرVolume Slider's value
استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
loopyes_no · الافتراضي: false
قيمة مثالno
مثال Bubble تعبيرSelected Lesson's repeat_enabled
استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
is_activeyes_no · الافتراضي: true
قيمة مثالyes
مثال Bubble تعبيرGuideHost's view_is_active (your yes/no custom state)
عيّن نعم بينما هذه الواجهة مفتوحة. عيّن لا عند الخروج، حتى يمكن إيقاف التشغيل أو العمل الحالي.
disabledyes_no · الافتراضي: false
قيمة مثالno
مثال Bubble تعبيرGuideHost's is_busy (your yes/no custom state)
عطّل العنصر بينما يكون تطبيقك مشغولًا أو يكون هذا الإجراء غير متاح.
ui_text_jsontext · الافتراضي: ""
قيمة مثال{}
مثال Bubble تعبيرApp Settings' player_labels_json (supported keys only)
JSON اختياري مع تسميات الأزرار المدعومة. اتركه فارغًا لاستخدام النص المدمج.
languagetext · الافتراضي: "auto"
قيمة مثالuk
مثال Bubble تعبيرCurrent User's preferred_language
اضبط language=auto لتتبع جهاز أو لغة المتصفح المدعومة. أدخل رمز لغة مدعوم لاختيارها صراحة.
الإجراءات ومدخلاتها · 8
Play

لا توجد معلمات إجراء

Pause

لا توجد معلمات إجراء

Toggle

لا توجد معلمات إجراء

Stop

لا توجد معلمات إجراء

Seek
secondsnumber · الافتراضي: —
قيمة مثال12
مثال Bubble تعبيرSelected Comment's seconds
استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
Set speed
ratenumber · الافتراضي: —
قيمة مثال1.5
مثال Bubble تعبيرSpeed Dropdown's value
استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
Set volume
volumenumber · الافتراضي: —
قيمة مثال0.8
مثال Bubble تعبيرVolume Slider's value
استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
Reload source

لا توجد معلمات إجراء

الحالات والأحداث

الحالات

player_status · text

النتيجة الحالية لهذا الإجراء. استخدم حدث الإكمال المطابق قبل حفظ النجاح.

is_playing · yes_no

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

is_loaded · yes_no

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

is_buffering · yes_no

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

current_time · number

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

duration · number

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

progress · number

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

playback_rate · number

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

volume · number

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

is_looping · yes_no

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

waveform_available · yes_no

القيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.

waveform_status · text

النتيجة الحالية لهذا الإجراء. استخدم حدث الإكمال المطابق قبل حفظ النجاح.

error_code · text

معلومات الخطأ للإجراء الأخير. اعرض رسالة مفيدة وقدّم إعادة المحاولة ذات الصلة.

الأحداث

ready

عند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.

playback_started

عند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.

playback_paused

عند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.

playback_ended

عند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.

seek_completed

عند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.

rate_changed

عند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.

player_error

عند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.

الأسئلة التي يطرحها المطورون

هل ينشئ الشكل الموجي؟

لا. قدم قممًا طبيعية حقيقية لهذا المصدر؛ يعمل التقدم العادي بدونها.

كيف يعمل الاشتراك؟

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

الأدلة ذات الصلة

للحصول على المساعدة، أخبرنا بأي إضافة وجهاز تستخدمهما، الإجراء الذي جربته وما حدث. استخدم مثالًا بدون بيانات شخصية. لا تشارك مفتاحك أو ملفاتك الخاصة أبدًا.