
Xodera Plugins · Bubble Native
Xodera QR Passes 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
أمثلة عملية
تصريح استخدام واحد لحدث في نفس اليوم
يمكن إعادة استخدام لقطة شاشة لقيمة QR عادية عند أكثر من مدخل.
يخزن تطبيقك سجل دخول وإصدار ثابت `request_id`؛ استخدم `label=event` المنسق و`ttl_seconds` ضمن عقد 1–86400 الثاني.
يقوم المُصدر المخول بتشغيل Issue QR pass ويُسلم بشكل خاص QR المسترجعة. يقوم الموظفون بالمسح → Check QR pass → التأكيد فقط إذا كان `ok=yes` و `status=available` → Confirm QR redemption مع معرف طلب ثابت مخزن.
فقط `status=redeemed` بالإضافة إلى `receipt_id` يصرح بإيصال دخول تطبيقك. احفظ مرجع التصريح/الإيصال على الدخول؛ لا تكشف محتويات QR للتحليلات.
في حالة `outcome_unknown`، استعد الطلب نفسه باستخدام المستخدم نفسه والبيئة نفسها وتصريح QR نفسه؛ لا تُنشئ معرّف تأكيد جديدًا أبدًا. تعامل مع الحالتين expired و revoked، ومع التصريح الذي استُخدم بالفعل، بوصفها نتائج مختلفة.
مخطط. لا يستخدم المسح والفحص التصريح؛ فقط التأكيد الصريح يستخدمه.
استرد فائدة قصيرة الأمد مرة واحدة عند عداد شريك
يحتاج الشريك إلى نتيجة مؤكدة مستخدمة/غير مستخدمة بدلاً من الاعتماد على صورة QR أو رسوم متحركة على الشاشة.
`label=coupon`؛ سجل الفائدة في التطبيق يحدد الأهلية وفترة صلاحية قصيرة قبل إجراء الإصدار المخول.
أصدر بطاقة فقط بعد فحص الأهلية في تطبيقك. عند العداد، يُظهر Check QR pass التوفر دون استهلاكه. بعد أن يؤكد الموظف تسليم المزايا، شغّل Confirm QR redemption.
قد يخزن سجل الفائدة الخاص بك `receipt_id` ووقت الاسترداد المؤكد بعد `status=redeemed`. المكوّن الإضافي يدير حالة التصريح؛ تطبيقك يدير الفائدة وعلاقة العميل.
إذا أُلغيت الفائدة قبل الاستخدام، يمكن للمصدر المخول نفسه تنفيذ Revoke QR pass باستخدام `pass_id` الخاص به. لا تعلن عن استرداد أو استرداد ناجح من `ok=yes` فقط.
مخطط. لا يستخدم المسح والفحص التصريح؛ فقط التأكيد الصريح يستخدمه.
تأكيد استلام معدات أو طلب في نفس اليوم
يحتاج سير عمل الموظفين إلى التمييز بين مسح مرجع مجموعة وتسليم العنصر فعليًا.
سجل المجموعة المملوك لتطبيقك يحتفظ بالتفويض، العنصر المقصود ومعرفات طلب الإصدار/الاسترداد المستقرة المنفصلة؛ استخدم بطاقة `label=access` ذات مدة قصيرة.
بعد أن يخول تطبيقك الجمع، Issue QR pass. يقوم الموظفون بالمسح والتحقق، فحص المجموعة المطابقة في تطبيقك، ثم يؤكدون صراحةً التسليم و Confirm QR redemption.
فقط بعد إيصال `redeemed` مؤكد يجب أن يضبط سير عملك المجموعة على أنها تم تسليمها. احتفظ بـ `receipt_id` كالرابط إلى نتيجة التصريح.
قد يُعيد مسح متكرر already_used؛ اعرض سجل التطبيق الموجود بدلاً من تسليم عنصر آخر. استعد تأكيدًا غير مؤكد بنفس المعرف والمدخلات.
مخطط. لا يستخدم المسح والفحص التصريح؛ فقط التأكيد الصريح يستخدمه.
ما يعمل الآن
إصدار تجريبي خاص. الماسح الحالي يحتوي على تحكم بالكاميرا والأذونات. إنشاء، فحص وتأكيد تصاريح الاستخدام مرة واحدة مخطط له وليس جاهزًا للاستخدام في تطبيقك بعد.
أنشئ تدفق العمل
مخطط
سير عمل مخطط. غير متوفر بعد في النسخة التجريبية الحالية.
تستخدم هذه الأمثلة سجلات التطبيق مثل Lesson، Message و Order. استبدلها بأنواع البيانات وأسماء العناصر الخاصة بك. يجب استبدال عناوين الوسائط المثال بملفاتك الخاصة.
مخطط: يستخدم موظف مخول Issue QR pass للدخول أو Order. مثال: label=event، ttl_seconds=900، environment=development. احتفظ بـ request_id ثابتًا لتلك العملية واحفظ pass_id مع السجل.
اعرض QR المعاد إلى صاحبها المقصود. يقوم الموظفون بمسحه. في سير عمل التصريح المخطط، استخدم workflow_mode=yes واقرأ scanned_pass_token بعد pass_scanned. إعدادات سير عمل التصريح هذه غير متوفرة في الماسح الحالي.
شغّل Check QR pass باستخدام pass_token = QR Scanner's scanned_pass_token. يتحقق دون استخدام البطاقة. بالنسبة لـ status=available، اعرض تفاصيل الطلب أو الإدخال المطابقة حتى يتمكن الموظفون من مراجعتها.
فقط زر التأكيد المنفصل ينفّذ Confirm QR redemption مع نفس pass_token، request_id ثابت و confirm=yes. عند status=redeemed، احفظ receipt_id وضع علامة إكمال على ذلك الطلب أو الدخول.
already_used، expired، revoked أو invalid تعني عدم قبول أو تسليم الطلب. المسح أو الفحص الناجح وحده لا يكمل المعاملة.
قم بالإعداد مرة واحدة
أنشئ أو اختر مشروع تطبيق Bubble الخاص بك في BestPlugins → Dashboard → Plugins. اختر Xodera QR Passes Native، انسخ مفتاحه، ثم افتح Bubble → Plugins → Xodera QR Passes Native والصقه في project_api_key. احفظ مرة واحدة؛ ثم استخدم الإجراءات أدناه. لكل مكوّن إضافي في كل مشروع مفتاحه الخاص.
يتطلب المسح إذن الكاميرا. بالنسبة لتصاريح الاستخدام مرة واحدة، حدد من يمكنه إنشاء التصاريح ومن يمكنه فحصها عند الباب أو نقطة الاستلام. العملاء العاديون لا يحتاجون إلى دور الموظف.
qr_issuer_permission_field
qr_pass_issuer · اسم حقل المستخدم نعم/لا الذي يحدد الموظفين المسموح لهم بإنشاء أو إلغاء التصاريح. مثال/افتراضي: qr_pass_issuer. ضع اسم الحقل هنا، لا نعم ولا لا. يجب أن يغيّر هذا الإذن على المستخدم فقط مسؤول مخول.
qr_staff_permission_field
qr_staff · اسم حقل المستخدم بنعم/لا الذي يحدد الموظفين المسموح لهم بالتحقق وتأكيد الاستخدام. مثال/افتراضي: qr_staff. حامل التذكرة لا يحتاج إلى هذا الإذن. أبقِ ذلك خارج نماذج التسجيل العامة ونماذج الملف الشخصي.
قم بالإعداد مرة واحدة
- أنشئ أو اختر مشروع تطبيق Bubble الخاص بك في BestPlugins → Dashboard → Plugins.
- اختر هذا المكوّن الإضافي وانسخ مفتاح مشروعه.
- افتح Bubble → Plugins → Xodera QR Passes Native؛ الصق المفتاح في project_api_key واحفظ.
- أضف العنصر، اختر بيانات تطبيقك وابنِ سير العمل أدناه.
- الوصول إلى النسخة التجريبية الخاصة فقط في الوقت الحالي. التثبيت العام والتفعيل المدفوع غير متاحين بعد.
التثبيت والاشتراك
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.
احفظ النتيجة في تطبيقك
مثال على الدخول أو الاستلام: احفظ الطلب/الحدث المرتبط، pass_id، expires_at و issue_request_id. بعد تأكيد الاستخدام، أضف receipt_id، redeemed_at والموظف الذي أكد. لا تُعلِّم السجل مكتملًا عندما يُمسح الرمز أو يُفحص فقط. رمز QR لا يتحقق من هوية الشخص.
الفشل، الإلغاء والاستعادة
إذا outcome_unknown=yes، احتفظ بنفس التصريح، request_id والمدخلات عند فحص النتيجة مرة أخرى. لا تقم بإنشاء تأكيد جديد. already_used، expired و revoked هي نتائج أعمال نهائية. إذا رُفض الإذن، اطلب من مسؤول مخول مراجعة دور الموظف. Clear session يعيد ضبط الماسح؛ لا يمكنه التراجع عن استخدام مكتمل.
القدرات والحدود
التصاريح المخططة مخصّصة للاستخدام مرة واحدة، وتبلغ مدة صلاحيتها 1–86400 ثانية؛ المدة الافتراضية 900. أنواع التصاريح: access وevent وcoupon وmembership. التحقق لا يحجز تصريحًا. يلزم اتصال بالإنترنت لاستخدام التصريح. لا تتوفر معالجة مدفوعات أو عمليات تحقق من الهوية أو بطاقة عضوية قابلة لإعادة الاستخدام طويل الأجل. قراءة قيمة QR عادية منفصلة عن التحقق من التصريح.
الإعدادات، الإجراءات والنتائج
استخدم هذه الأسماء في Bubble. الميزات المخططة مُعلّمة بشكل منفصل.
إعدادات بيتا المتاحة
إعدادات العنصر
disabled · yes/nois_active · yes/noui_text_json · textlanguage · textالحالات
scanner_status · textserver_status · textpass_id · textpass_label · textreceipt_id · texterror_code · textis_busy · yes/nois_scanning · yes/notorch_enabled · yes/noscan_source · textpending_redemption · yes/noالأحداث
scanner_startedscanner_pausedscanner_cancelledpermission_deniedpass_scannedvalidation_startedvalidation_completedredemption_startedpass_redeemedredemption_rejectedredemption_pendingfixture_decodedqr_errorالإجراءات ومدخلاتها
Clear sessionإعدادات العنصر · 5
سير عمل مخطط. غير متوفر بعد في النسخة التجريبية الحالية.
disabledyes/no · الافتراضي: false- قيمة مثال
no - مثال Bubble تعبير
GuideHost's is_busy (your yes/no custom state) - عطّل العنصر بينما يكون تطبيقك مشغولًا أو يكون هذا الإجراء غير متاح.
is_activeyes/no · الافتراضي: true- قيمة مثال
yes - مثال Bubble تعبير
GuideHost's view_is_active (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 لتتبع جهاز أو لغة المتصفح المدعومة. أدخل رمز لغة مدعوم لاختيارها صراحة.
workflow_modeyes/no · الافتراضي: false- قيمة مثال
yes - مثال Bubble تعبير
App Settings' use_qr_business_actions - مخطط: السماح باستخدام قيمة QR الممسوحة بواسطة Check QR pass. المسح وحده لا يؤكد الدخول أو الاستلام.
الإجراءات ومدخلاتها · 5
سير عمل مخطط. غير متوفر بعد في النسخة التجريبية الحالية.
Clear session
لا توجد معلمات إجراء
Issue QR pass
environmenttext · الافتراضي: "development"- قيمة مثال
development - مثال Bubble تعبير
App Settings' selected_environment - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
request_idtext · الافتراضي: —- قيمة مثال
pickup-123-issue-v1 - مثال Bubble تعبير
Current Admission's stable_request_id - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
labeltext · الافتراضي: "access"- قيمة مثال
event - مثال Bubble تعبير
Selected Admission's pass_label - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
ttl_secondsnumber · الافتراضي: 900- قيمة مثال
900 - مثال Bubble تعبير
Event Settings' pass_ttl_seconds - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
الإرجاع
pass_id · textpass_token · textpass_label · textexpires_at · textqr_png_data_uri · textreused · yes/noCheck QR pass
environmenttext · الافتراضي: "development"- قيمة مثال
development - مثال Bubble تعبير
App Settings' selected_environment - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
pass_tokentext · الافتراضي: —- قيمة مثال
<opaque token returned by Issue / camera scan> - مثال Bubble تعبير
QR Pass Scanner's scanned_pass_token (capture before Check) - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
الإرجاع
pass_label · textexpires_at · textConfirm QR redemption
environmenttext · الافتراضي: "development"- قيمة مثال
development - مثال Bubble تعبير
App Settings' selected_environment - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
pass_tokentext · الافتراضي: —- قيمة مثال
<opaque token returned by Issue / camera scan> - مثال Bubble تعبير
QR Pass Scanner's scanned_pass_token (capture before Check) - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
request_idtext · الافتراضي: —- قيمة مثال
pickup-123-redeem-v1 - مثال Bubble تعبير
Current Admission's stable_redemption_request_id - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
confirmyes/no · الافتراضي: false- قيمة مثال
yes — explicit confirmation only - مثال Bubble تعبير
Confirm Checkbox is checked - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
الإرجاع
pass_id · textpass_label · textreceipt_id · textredeemed_at · textreused · yes/noRevoke QR pass
environmenttext · الافتراضي: "development"- قيمة مثال
development - مثال Bubble تعبير
App Settings' selected_environment - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
pass_idtext · الافتراضي: —- قيمة مثال
<pass_id returned by Issue> - مثال Bubble تعبير
Selected Admission's pass_id - استخدم قيمة سجل الأعمال الحالي؛ تحقق منها مقابل الحدود أدناه.
الإرجاع
pass_id · textrevoked · yes/noالحالات والأحداث
سير عمل مخطط. غير متوفر بعد في النسخة التجريبية الحالية.
الحالات
scanner_status · textالنتيجة الحالية لهذا الإجراء. استخدم حدث الإكمال المطابق قبل حفظ النجاح. idle,requesting_permission,permission_denied,scanning,paused,scanned,validating,available,redeeming,redeemed,unavailable,unknown,error,cancelled,decoding_fixture,fixture_decoded
server_status · textالنتيجة الحالية لهذا الإجراء. استخدم حدث الإكمال المطابق قبل حفظ النجاح. empty,available,redeemed,already_used,expired,revoked
pass_id · textمعرّف لهذا العنصر أو الإجراء. احتفظ به مع سجل التطبيق المطابق. استخدم نفس معرّف الطلب عند إعادة المحاولة نتيجة غير مؤكدة.
pass_label · textالقيمة الحالية للعنصر المحدد. اقرأها بعد الحدث ذي الصلة. empty,access,event,coupon,membership
receipt_id · textمعرّف لهذا العنصر أو الإجراء. احتفظ به مع سجل التطبيق المطابق. استخدم نفس معرّف الطلب عند إعادة المحاولة نتيجة غير مؤكدة.
error_code · textمعلومات الخطأ للإجراء الأخير. اعرض رسالة مفيدة وقدّم إعادة المحاولة ذات الصلة.
is_busy · yes/noالعمل لا يزال جارٍ. انتظر قبل بدء إجراء آخر.
is_scanning · yes/noالقيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.
torch_enabled · yes/noالقيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.
scan_source · textالقيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق. empty,camera,fixture
pending_redemption · yes/noالقيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.
scanned_pass_token · textالقيمة الحالية للعنصر المحدد. اقرأها بعد الحدث المتعلق.
الأحداث
scanner_startedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
scanner_pausedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
scanner_cancelledعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
permission_deniedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
pass_scannedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
validation_startedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
validation_completedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
redemption_startedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
pass_redeemedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
redemption_rejectedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
redemption_pendingعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
fixture_decodedعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
qr_errorعند حدوث هذا الحدث، اقرأ الحالات المرتبطة من نفس العنصر.
الأسئلة التي يطرحها المطورون
ماذا تعني إعدادات الإذن الاثنين؟
اسم حقل المستخدم بنعم/لا الذي يحدد الموظفين المسموح لهم بإنشاء أو إلغاء البطاقات. مثال/افتراضي: qr_pass_issuer. ضع اسم الحقل هنا، لا نعم ولا لا. يجب أن يغيّر هذا الإذن على المستخدم مسؤول مخول فقط. اسم حقل المستخدم بنعم/لا الذي يحدد الموظفين المسموح لهم بالتحقق وتأكيد الاستخدام. مثال/افتراضي: qr_staff. حامل التذكرة لا يحتاج إلى هذا الإذن. أبقِ ذلك خارج نماذج التسجيل العامة ونماذج الملف الشخصي.
هل يمكن للموظف نفسه إنشاء التصاريح وفحصها؟
نعم، إذا منح مسؤول مخول ذلك الموظف كلا الإذنين. لا يتطلب ذلك مفتاح مشروع آخر. عادةً لا يحتاج العملاء إلى أي من الإذنين. لا تسمح للمستخدمين بتعيين هذه الأذونات لأنفسهم.
لماذا نستخدم الفحص بعد المسح؟
تقرأ عملية المسح الرمز. يطلب الفحص ما إذا كان التصريح متاحًا دون استخدامه. يمكن للموظفين مراجعة الطلب أولاً. فقط الإجراء Confirm QR redemption المنفصل يستخدم التصريح مرة واحدة.
كيف يعمل الاشتراك؟
التسعير المخطط: تثبيت الإضافة في Bubble مجاني. وصول BestPlugins هو اشتراك منفصل لكل إضافة في كل مشروع تطبيق Bubble: 7 أيام مجانية، ثم US$1.50 شهريًا. Development و Live مشمولان. لا يوجد حد ثابت لعدد العمليات؛ لا تزال حدود حجم الملف والميزات سارية. عملية الدفع غير مفتوحة بعد. ستظهر شاشة التفعيل تاريخ الفوترة الأول وشروط الإلغاء.
الأدلة ذات الصلة
إصدار Marketplace معلق
دليل المنتدى غير منشور
للحصول على المساعدة، أخبرنا بأي إضافة وجهاز تستخدمهما، الإجراء الذي جربته وما حدث. استخدم مثالًا بدون بيانات شخصية. لا تشارك مفتاحك أو ملفاتك الخاصة أبدًا.