QR skaner interfeysi. Birdəfəlik biletlərlə bağlı əməliyyatlar planlaşdırılır.
QR skaner interfeysi. Birdəfəlik biletlərlə bağlı əməliyyatlar planlaşdırılır.
← Bütün Bubble Native bələdçiləri

Xodera Plugins · Bubble Native

Xodera QR Passes Native

Tək istifadəli bilet, götürmə təsdiqi və ya kuponlar yaradın. İşçilər kodu skan edir, nəticəni yoxlayır, sifarişi önizləyir və hazır olduqda istifadəni təsdiqləyir.

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.

Sənədlər 6 Noyabr 2026 tarixində nəzərdən keçirildi.

Praktik nümunələr

Eyni gün üçün bir dəfəlik giriş icazəsi

Adi QR dəyərinin ekran görüntüsü başqa girişlərdə də istifadə oluna bilər.

Tətbiqiniz Admission qeydini və biletin verilməsi üçün sabit `request_id` saxlayır; müəyyən edilmiş `label=event` dəyərindən və 1–86400 saniyə həddinə uyğun `ttl_seconds` dəyərindən istifadə edin.

Səlahiyyətli bilet yaradıcısı Issue QR pass işlədir və qaytarılan QR kodunu məxfi şəkildə çatdırır. İşçilər skan edir → Check QR pass → yalnız `ok=yes` və `status=available` olduqda təsdiqləyir → saxlanılmış sabit sorğu ID-si ilə Confirm QR redemption işlədir.

Yalnız `status=redeemed` və `receipt_id` birlikdə tətbiqinizdə giriş təsdiqinə əsas verir. Bilet/istifadə təsdiqi istinadını Admission qeydində saxlayın; QR məzmununu analitika sistemlərinə açıqlamayın.

`outcome_unknown` üçün eyni istifadəçi/mühit/pass ilə eyni sorğunu bərpa edin; yeni təsdiq ID‑si yaratmayın. expired, revoked və artıq istifadə olunmuş vəziyyətləri ayrı nəticələr kimi idarə edin.

Planlaşdırılıb. Skanlama və yoxlama pass‑dan istifadə etmir; yalnız açıq təsdiq istifadə edir.

Tərəfdaşın xidmət masasında qısa müddət etibarlı olan üstünlükdən bir dəfə istifadə edin

Tərəfdaş təsdiqlənmiş istifadə olunmuş/istifadə olunmamış nəticəyə ehtiyac duyur, QR şəkilinə və ya ekran animasiyasına etibar etməməlidir.

`label=coupon`; tətbiqin Benefit qeydi uyğunluğu və səlahiyyətli issue əməliyyatından əvvəl qısa etibarlılıq pəncərəsini müəyyən edir.

Pass‑ı yalnız tətbiqinizin uyğunluq yoxlamasından sonra verin. Xidmət masasında Check QR pass onu istehlak etmədən mövcudluğunu göstərir. İşçi faydanın çatdırılmasını təsdiqlədikdən sonra Confirm QR redemption işlədir.

Benefit qeydiniz `receipt_id` və `status=redeemed`‑dən sonra təsdiqlənmiş istifadə vaxtını saxlaya bilər. Plugin pass vəziyyətini idarə edir; tətbiqiniz fayda və müştəri münasibətini idarə edir.

Fayda istifadədən əvvəl ləğv olunarsa, eyni səlahiyyətli verən Revoke QR pass‑ni həmin biletin `pass_id` dəyəri ilə edə bilər. `ok=yes`‑dən təkbaşına geri ödəmə və ya uğurlu istifadə barədə elan etməyin.

Planlaşdırılıb. Skanlama və yoxlama pass‑dan istifadə etmir; yalnız açıq təsdiq istifadə edir.

Eyni gün avadanlıq və ya sifariş götürülməsini təsdiqləyin

İşçilərin iş axını götürmə istinadının skan edilməsini əşyanın faktiki təhvil verilməsindən ayırmalıdır.

Tətbiqinizin sahib olduğu Collection qeydi icazəni, nəzərdə tutulan əşyanı və ayrı sabit issue/redemption sorğu ID‑lərini saxlayır; qısa müddətli `label=access` pass‑dan istifadə edin.

Tətbiqiniz əşyanın götürülməsinə icazə verdikdən sonra Issue QR pass işə salın. İşçilər skan edir və Check işlədir, tətbiqinizdə uyğun Collection qeydini yoxlayır, sonra təhvil verməni açıq şəkildə təsdiqləyib Confirm QR redemption işə salır.

Yalnız təsdiqlənmiş `redeemed` qəbzindən sonra iş axınınız Collection‑ı təslim olunmuş olaraq təyin etməlidir. `receipt_id`‑ni pass nəticəsinə keçid kimi saxlayın.

Təkrarlanan skan already_used‑ni qaytara bilər; başqa əşyanı təslim etmək əvəzinə mövcud tətbiq qeydini göstərin. Eyni ID və girişlərlə qeyri-müəyyən təsdiqi bərpa edin.

Planlaşdırılıb. Skanlama və yoxlama pass‑dan istifadə etmir; yalnız açıq təsdiq istifadə edir.

İndi işləyənlər

Özəl beta. Hazırkı skaner kamera və icazə idarəetmələrinə malikdir. Birdəfəlik QR biletlərini yaratmaq, yoxlamaq və təsdiqləmək planlaşdırılır və hələ tətbiqinizdə istifadəyə hazır deyil.

İş axınını yaradın

Planlaşdırılıb

Planlaşdırılmış iş axını. Hal-hazırkı beta versiyasında hələ mövcud deyil.

Bu nümunələr Lesson, Message və Order kimi tətbiq qeydlərindən istifadə edir. Onları öz məlumat tipləriniz və element adlarınızla əvəz edin. Nümunə media ünvanları öz fayllarınızla dəyişdirilməlidir.

  1. Planlaşdırılmış: səlahiyyətli işçi Admission və ya Order qeydi üçün Issue QR pass işlədir. Nümunə: label=event, ttl_seconds=900, environment=development. Bu biletin verilməsi üçün sabit request_id saxlayın və pass_id-ni həmin qeydlə birlikdə yadda saxlayın.

  2. Qaytarılmış QR‑ni nəzərdə tutulan sahibinə göstərin. İşçilər onu skan edir. Planlaşdırılmış bilet iş axınında workflow_mode=yes‑ni istifadə edin və pass_scanned‑dən sonra scanned_pass_token‑ni oxuyun. Bu bilet iş axını ayarları hazırkı skanerdə mövcud deyil.

  3. Check QR pass‑ni pass_token = QR Scanner's scanned_pass_token ilə işə salın. Biletdən istifadə etmədən yoxlayır. status=available üçün uyğun sifariş və ya giriş detalları göstərin ki, işçilər onları gözdən keçirə bilsin.

  4. Yalnız ayrı Təsdiq düyməsi Confirm QR redemption‑ni eyni pass_token, sabit request_id və confirm=yes ilə işə salır. status=redeemed‑də receipt_id‑ni yadda saxlayın və həmin sifariş və ya girişi tam kimi işarələyin.

  5. already_used, expired, revoked və ya invalid nəticəsində girişə icazə verməyin və sifarişi təhvil verməyin. Təkcə skan və ya uğurlu Check əməliyyatı heç vaxt əməliyyatı tamamlamır.

İş axını diaqramı — tətbiq ekran görüntüsü deyil

Bir dəfə konfiqurasiya edin

BestPlugins → Dashboard → Plugins daxilində Bubble tətbiq layihənizi yaradın və ya seçin. Xodera QR Passes Native seçin, onun açarını kopyalayın, sonra Bubble → Plugins → Xodera QR Passes Native açın və project_api_key‑yə yapışdırın. Bir dəfə yadda saxlayın; sonra aşağıdakı əməliyyatlardan istifadə edin. Hər layihədəki hər pluginin öz açarı var.

Skan etmək üçün kamera icazəsi tələb olunur. Birdəfəlik QR biletlərini kimin yarada biləcəyini və qapıda və ya sifarişin götürülmə məntəqəsində kimin yoxlaya biləcəyini müəyyən edin. Adi müştərilərin nə yaradıcı, nə də yoxlayıcı işçi roluna ehtiyacı var.

qr_issuer_permission_field

qr_pass_issuer · QR biletlərini yaratmağa və ya ləğv etməyə icazəsi olan işçiləri işarələyən User qeydindəki yes/no sahəsinin adı. Nümunə/standart: qr_pass_issuer. Buraya yes və ya no deyil, sahənin adını yazın. İstifadəçi üçün bu icazəni yalnız səlahiyyətli administrator dəyişməlidir.

qr_staff_permission_field

qr_staff · İstifadəni yoxlamağa və təsdiqləməyə icazəsi olan işçiləri işarələyən User qeydindəki yes/no sahəsinin adı. Nümunə/standart: qr_staff. Bilet sahibinə bu icazə lazım deyil. Bu sahəni ictimai qeydiyyat və profil formalarına daxil etməyin.

Bir dəfə konfiqurasiya edin
  1. BestPlugins → Dashboard → Plugins‑də Bubble tətbiq layihənizi yaradın və ya seçin.
  2. Bu plugin seçin və layihə açarını kopyalayın.
  3. Bubble → Plugins → Xodera QR Passes Native açın; açarı project_api_key‑yə yapışdırın və yadda saxlayın.
  4. Elementi əlavə edin, tətbiq məlumatlarınızı seçin və aşağıdakı iş axınını yaradın.
  5. Hal-hazırda yalnız özəl beta girişi. Ümumi quraşdırma və ödənişli aktivasiya hələ açıq deyil.
Quraşdırma və abunə

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.

Nəticəni tətbiqinizdə saxlayın

Nümunə Giriş və ya Götürmə: əlaqəli sifariş/hadisəni, pass_id, expires_at və issue_request_id yadda saxlayın. Təsdiqlənmiş istifadədən sonra receipt_id, redeemed_at və təsdiqləyən işçini əlavə edin. Kod yalnız skan edildikdə və ya yoxlanıldıqda qeydi tam kimi işarələməyin. QR kodu şəxsin şəxsiyyətini təsdiq etmir.

Uğursuzluq, ləğv və bərpa

Əgər outcome_unknown=yes, nəticəni yenidən yoxlayarkən eyni QR biletini, request_id və girişləri saxlayın. Yeni təsdiq yaratmayın. already_used, expired və revoked son iş nəticələridir. İcazə rədd edilsə, səlahiyyətli idarəçidən işçinin rolunu yenidən gözdən keçirməsini istəyin. Clear session skaneri sıfırlayır; tamamlanmış istifadəni geri ala bilməz.

İmkanlar və məhdudiyyətlər

Planlaşdırılan biletlər birdəfəlikdir və 1–86400 saniyə etibarlıdır; standart 900. Bilet növləri: access, event, coupon və membership. Yoxlama bileti rezerv etmir. Biletdən istifadə üçün internet bağlantısı tələb olunur. Ödəniş emalı, şəxsiyyət yoxlaması və ya təkrar istifadə olunan uzunmüddətli üzvlük kartı yoxdur. Adi QR dəyərini oxumaq bileti yoxlamaqdan ayrıdır.

Ayarlar, əməliyyatlar və nəticələr

Bu adları Bubble-də istifadə edin. Planlaşdırılmış xüsusiyyətlər ayrı şəkildə işarələnir.

Mövcud beta ayarları

Element ayarları

disabled · yes/nois_active · yes/noui_text_json · textlanguage · text

Vəziyyətlər

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

Hadisələr

scanner_startedscanner_pausedscanner_cancelledpermission_deniedpass_scannedvalidation_startedvalidation_completedredemption_startedpass_redeemedredemption_rejectedredemption_pendingfixture_decodedqr_error

Əməliyyatlar və onların girişləri

Clear session
Element ayarları · 5

Planlaşdırılmış iş axını. Hal-hazırkı beta versiyasında hələ mövcud deyil.

disabledyes/no · Standart: false
Nümunə dəyərino
Nümunə Bubble ifadəsiGuideHost's is_busy (your yes/no custom state)
Tətbiqiniz məşğul olduğu və ya bu əməliyyat mövcud olmadığı müddətcə elementi deaktiv edin.
is_activeyes/no · Standart: true
Nümunə dəyəriyes
Nümunə Bubble ifadəsiGuideHost's view_is_active (your yes/no custom state)
Bu görünüş açıq olduqda yes (bəli) təyin edin. Çıxarkən no (xeyr) təyin edin ki, oynatma və ya cari iş dayana bilsin.
ui_text_jsontext · Standart: "{}"
Nümunə dəyəri{}
Nümunə Bubble ifadəsiApp Settings' player_labels_json (supported keys only)
İstəyə bağlı JSON dəstəklənən düymə etiketləri ilə. Daxili mətn istifadə etmək üçün boş buraxın.
languagetext · Standart: "auto"
Nümunə dəyəriuk
Nümunə Bubble ifadəsiCurrent User's preferred_language
language=auto‑i dəstəklənən cihaz və ya brauzer dilini izləmək üçün təyin edin. Açıq şəkildə seçmək üçün dəstəklənən dil kodunu daxil edin.
workflow_modeyes/no · Standart: false
Nümunə dəyəriyes
Nümunə Bubble ifadəsiApp Settings' use_qr_business_actions
Planlaşdırılıb: skan edilmiş QR dəyərinin Check QR pass tərəfindən istifadə edilməsinə icazə verin. Yalnız skanlama giriş və ya götürülməyi təsdiqləmir.
Əməliyyatlar və onların girişləri · 5

Planlaşdırılmış iş axını. Hal-hazırkı beta versiyasında hələ mövcud deyil.

Clear session

Heç bir əməliyyat parametri yoxdur

Issue QR pass
environmenttext · Standart: "development"
Nümunə dəyəridevelopment
Nümunə Bubble ifadəsiApp Settings' selected_environment
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
request_idtext · Standart: —
Nümunə dəyəripickup-123-issue-v1
Nümunə Bubble ifadəsiCurrent Admission's stable_request_id
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
labeltext · Standart: "access"
Nümunə dəyərievent
Nümunə Bubble ifadəsiSelected Admission's pass_label
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
ttl_secondsnumber · Standart: 900
Nümunə dəyəri900
Nümunə Bubble ifadəsiEvent Settings' pass_ttl_seconds
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.

Qaytarılan nəticələr

pass_id · textpass_token · textpass_label · textexpires_at · textqr_png_data_uri · textreused · yes/no
Check QR pass
environmenttext · Standart: "development"
Nümunə dəyəridevelopment
Nümunə Bubble ifadəsiApp Settings' selected_environment
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
pass_tokentext · Standart: —
Nümunə dəyəri<opaque token returned by Issue / camera scan>
Nümunə Bubble ifadəsiQR Pass Scanner's scanned_pass_token (capture before Check)
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.

Qaytarılan nəticələr

pass_label · textexpires_at · text
Confirm QR redemption
environmenttext · Standart: "development"
Nümunə dəyəridevelopment
Nümunə Bubble ifadəsiApp Settings' selected_environment
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
pass_tokentext · Standart: —
Nümunə dəyəri<opaque token returned by Issue / camera scan>
Nümunə Bubble ifadəsiQR Pass Scanner's scanned_pass_token (capture before Check)
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
request_idtext · Standart: —
Nümunə dəyəripickup-123-redeem-v1
Nümunə Bubble ifadəsiCurrent Admission's stable_redemption_request_id
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
confirmyes/no · Standart: false
Nümunə dəyəriyes — explicit confirmation only
Nümunə Bubble ifadəsiConfirm Checkbox is checked
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.

Qaytarılan nəticələr

pass_id · textpass_label · textreceipt_id · textredeemed_at · textreused · yes/no
Revoke QR pass
environmenttext · Standart: "development"
Nümunə dəyəridevelopment
Nümunə Bubble ifadəsiApp Settings' selected_environment
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.
pass_idtext · Standart: —
Nümunə dəyəri<pass_id returned by Issue>
Nümunə Bubble ifadəsiSelected Admission's pass_id
Cari iş qeydi dəyərindən istifadə edin; onu aşağıdakı hədlərlə doğrulayın.

Qaytarılan nəticələr

pass_id · textrevoked · yes/no
Vəziyyətlər və hadisələr

Planlaşdırılmış iş axını. Hal-hazırkı beta versiyasında hələ mövcud deyil.

Vəziyyətlər

scanner_status · text

Bu əmrin cari nəticəsi. Uğurlu saxlamadan əvvəl uyğun tamamlama hadisəsini istifadə edin. idle,requesting_permission,permission_denied,scanning,paused,scanned,validating,available,redeeming,redeemed,unavailable,unknown,error,cancelled,decoding_fixture,fixture_decoded

server_status · text

Bu əmrin cari nəticəsi. Uğurlu saxlamadan əvvəl uyğun tamamlama hadisəsini istifadə edin. empty,available,redeemed,already_used,expired,revoked

pass_id · text

Bu element və ya əmrin identifikatoru. Uyğun tətbiq qeydi ilə saxlayın. Qeyri‑müəyyən nəticəni təkrar cəhd edərkən eyni sorğu identifikatorundan istifadə edin.

pass_label · text

Seçilmiş element üçün cari dəyər. Müvafiq hadisədən sonra oxuyun. empty,access,event,coupon,membership

receipt_id · text

Bu element və ya əmrin identifikatoru. Uyğun tətbiq qeydi ilə saxlayın. Qeyri‑müəyyən nəticəni təkrar cəhd edərkən eyni sorğu identifikatorundan istifadə edin.

error_code · text

Son əməliyyat üçün xəta məlumatı. Faydalı mesaj göstərin və müvafiq təkrar seçimini təklif edin.

is_busy · yes/no

İş hələ davam edir. Başqa bir əməliyyata başlamazdan əvvəl gözləyin.

is_scanning · yes/no

Seçilmiş elementin cari dəyəri. Əlaqəli hadisədən sonra oxuyun.

torch_enabled · yes/no

Seçilmiş elementin cari dəyəri. Əlaqəli hadisədən sonra oxuyun.

scan_source · text

Seçilmiş element üçün cari dəyər. Müvafiq hadisədən sonra oxuyun. empty,camera,fixture

pending_redemption · yes/no

Seçilmiş elementin cari dəyəri. Əlaqəli hadisədən sonra oxuyun.

scanned_pass_token · text

Seçilmiş elementin cari dəyəri. Əlaqəli hadisədən sonra oxuyun.

Hadisələr

scanner_started

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

scanner_paused

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

scanner_cancelled

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

permission_denied

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

pass_scanned

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

validation_started

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

validation_completed

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

redemption_started

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

pass_redeemed

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

redemption_rejected

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

redemption_pending

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

fixture_decoded

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

qr_error

Bu hadisə baş verdikdə, eyni elementdən əlaqəli vəziyyətləri oxuyun.

İnkişaf etdiricilərin verdiyi suallar

Bu iki icazə ayarı nə deməkdir?

QR biletlərini yaratmağa və ya ləğv etməyə icazəsi olan işçiləri işarələyən User qeydindəki yes/no sahəsinin adı. Nümunə/standart: qr_pass_issuer. Buraya yes və ya no deyil, sahənin adını yazın. İstifadəçi üçün bu icazəni yalnız səlahiyyətli administrator dəyişməlidir. İstifadəni yoxlamağa və təsdiqləməyə icazəsi olan işçiləri işarələyən User qeydindəki yes/no sahəsinin adı. Nümunə/standart: qr_staff. Bilet sahibinə bu icazə lazım deyil. Bu sahəni ictimai qeydiyyat və profil formalarına daxil etməyin.

Eyni işçi QR biletlərini yarada və yoxlaya bilərmi?

Bəli, əgər səlahiyyətli administrator həmin işçiyə hər iki icazəni verərsə. Bu, əlavə layihə açarı tələb etmir. Müştərilərin adətən heç bir icazəyə ehtiyacı yoxdur. İstifadəçilərin bu icazələri özlərinə təyin etməsinə icazə verməyin.

Niyə Scan-dan sonra Check istifadə edilir?

Scan kodu oxuyur. Check biletin onu istifadə etmədən mövcud olub-olmadığını soruşur. Personal əvvəlcə sifarişi nəzərdən keçirə bilər. Yalnız ayrı Confirm QR redemption əməliyyatı bileti bir dəfə istifadə edir.

Abunəlik necə işləyir?

Planlaşdırılmış qiymətləndirmə: Bubble-də plugin quraşdırmaq pulsuzdur. BestPlugins girişi hər bir Bubble tətbiq layihəsindəki hər plugin üçün ayrı abunədir: 7 gün pulsuz, sonra ayda US$1.50. Development və Live daxildir. Əməliyyat sayına sabit limit yoxdur; fayl ölçüsü və xüsusiyyət limitləri hələ də tətbiq olunur. Ödəniş prosesi hələ açıq deyil. Aktivləşdirmə ekranı ilk faktura tarixini və ləğv şərtlərini göstərəcək.

Əlaqəli bələdçilər

Marketplace buraxılışı gözləyir

Forum bələdçisi yerləşdirilməyib

Kömək üçün, hansı plugin və cihazı istifadə etdiyinizi, cəhd etdiyiniz əməliyyatı və nə baş verdiyini bizə bildirin. Şəxsi məlumatları olmayan nümunə istifadə edin. Açarınızı və ya şəxsi fayllarınızı heç vaxt paylaşmayın.