
Xodera Plugins · Bubble Native
Xodera Audio Recorder Native
Benarkan orang merakam nota suara, mendengar sebelum menghantar dan menyimpan draf tempatan. Muat naik hanya apabila mereka memilih untuk menghantar rakaman.
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.
Dokumentasi disemak 6 November 2026
Contoh praktikal
Dengar sebelum menghantar mesej suara yang tidak rahsia
Pengguna memerlukan peluang untuk mendengar dan menggantikan rakaman sebelum ia menjadi lampiran.
`title = the app’s conversation label`; tetapkan `max_duration_seconds` dan `max_upload_bytes` kepada dasar mesej anda.
Start recording → Stop recording → tunggu `recording_ready` → Play preview. Tawarkan Seek preview dan Set preview speed. Hanya Send yang jelas akan memanggil Upload to Bubble pada titik akhir muat naik aplikasi sendiri yang diterima.
Hanya pada `upload_succeeded`, cipta Message anda dan tetapkan medan audio kepada `uploaded_file`. Mesej tidak dicipta oleh perakam itu sendiri.
Apabila mikrofon ditolak, tunjukkan `permission_status`; apabila muat naik gagal, simpan rakaman tempatan. Periksa hasil muat naik yang tidak diketahui sebelum mencuba semula supaya Send tidak dapat mencipta lampiran/mesej pendua.
Muat naik Bubble menghasilkan fail audio awam. Jangan gunakan muat naik ini untuk rakaman rahsia.
Latihan sebutan tanpa muat naik serta-merta
Pelajar ingin membandingkan respons lisan mereka dengan pelajaran sebelum memutuskan untuk menghantarnya.
`title = Current Exercise’s prompt`; `max_duration_seconds = the exercise limit`; jawapan latihan tetap menjadi rekod milik aplikasi.
Rakam → Hentikan → Play preview. Benarkan pelajar menelusuri, memperlambat pratonton atau membatalkan dan merakam percubaan lain. Save locally hanya apabila mereka memilih untuk menyimpan draf.
`duration`, `local_uri`, `mime_type` dan `draft_id` menerangkan percubaan. Aplikasi anda menentukan sama ada ia kekal tempatan atau kemudian dihantar melalui aliran kerja muat naik yang dipilih.
Pada `preview_error`, simpan draf dan tunjukkan `error_code`. Jangan ubah pratonton atau draf yang disimpan menjadi Jawapan yang dihantar sehingga aliran kerja penyerahan aplikasi berjaya.
Muat naik Bubble menghasilkan fail audio awam. Jangan gunakan muat naik ini untuk rakaman rahsia.
Simpan draf suara tempatan dan jadikan Send jelas
Pekerja lapangan boleh terganggu sebelum menyiapkan nota dan tidak sepatutnya perlu memuat naiknya hanya untuk menyimpannya.
`saved_draft_id = the draft ID stored by your app for this device and account`; `title = the selected non-sensitive task label`.
Start/Stop recording → Save locally. Simpan `draft_id` yang dikembalikan dalam state aplikasi anda sendiri yang skopnya terhad kepada peranti/akaun tersebut. Gunakan Restore local draft untuk ID yang sama, kemudian Play preview sebelum memutuskan sama ada untuk memuat naik.
Pada `local_saved` atau `local_restored`, periksa `is_saved_locally`, `local_uri` dan `duration`. Hanya padam draf yang disimpan selepas pilihan pengguna yang jelas atau selepas dasar pengekalan yang disahkan secara berasingan.
Jika pemulihan gagal, tunjukkan `error_code` dan simpan ID untuk diagnosis; jangan laporkan rakaman kosong atau berbeza sebagai dipulihkan. Jangan sekali‑sekali lakukan muat naik auto semasa sambung semula.
Muat naik Bubble menghasilkan fail audio awam. Jangan gunakan muat naik ini untuk rakaman rahsia.
Apa yang berfungsi sekarang
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.
Bina aliran kerja
Gunakan tindakan beta yang tersedia di bawah dan uji hasilnya pada peranti sasaran anda.
Contoh-contoh ini menggunakan rekod aplikasi seperti Lesson, Message dan Order. Gantikan mereka dengan jenis data dan nama elemen anda sendiri. Alamat media contoh mesti diganti dengan fail anda sendiri.
Tambah perakam. Tetapkan document_context = Current User's unique id; tetapkan is_active mengikut sama ada paparan rakaman sedang dibuka.
Start recording meminta kebenaran mikrofon. Pause dan Resume mengekalkan rakaman yang sama. Stop recording menyiapkannya; tunggu recording_ready sebelum menawarkan semakan atau muat naik.
Gunakan kawalan pratonton untuk mendengar. Save locally menyimpan draf pada peranti ini; selepas local_saved, kekalkan draft_id untuk Restore local draft.
Terangkan bahawa penghantaran mencipta fail awam. Tetapkan bubble_upload_url kepada alamat muat naik fail Bubble aplikasi anda yang betul Development atau Live. Jalankan Upload to Bubble hanya apabila pengguna memilih Hantar; pada upload_succeeded, simpan uploaded_file dalam rekod anda.
Konfigurasi sekali
Buat atau pilih projek aplikasi Bubble anda dalam BestPlugins → Dashboard → Plugins. Pilih Xodera Audio Recorder Native, salin kuncinya, kemudian buka Bubble → Plugins → Xodera Audio Recorder Native dan tampal ke dalam licensing_api_key. Simpan sekali; kemudian gunakan tindakan di bawah. Setiap plugin dalam setiap projek mempunyai kunci masing‑masing.
Minta kebenaran mikrofon apabila pengguna mula merakam. Pilih cara aplikasi menyimpan draf. Muat naik Bubble menyimpan fail awam, jadi gunakan hanya untuk audio yang sesuai untuk penyimpanan awam.
Konfigurasi sekali
- Buat atau pilih projek aplikasi Bubble anda di BestPlugins → Dashboard → Plugins.
- Pilih plugin ini dan salin kunci projeknya.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Tambah elemen, pilih data aplikasi anda dan bina alur kerja di bawah.
- 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.
Pemasangan dan langganan
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.
Simpan hasil dalam aplikasi anda
Selepas upload_succeeded, tetapkan VoiceMessage.audio = Recorder's uploaded_file, owner = Current User, duration = Recorder's duration dan mime_type = Recorder's mime_type. draft_id memulihkan draf pada peranti ini; ia bukan fail audio dalam talian.
Kegagalan, pembatalan dan pemulihan
Jika akses mikrofon ditolak, terangkan cara mengaktifkannya dalam tetapan peranti. Cancel recording membuang rakaman yang tidak disimpan; draf yang disimpan kekal. Jika muat naik terhenti, simpan rakaman tempatan dan periksa sama ada fail telah tiba sebelum menghantarnya semula. Delete saved draft mengeluarkan hanya draf yang dipilih.
Keupayaan dan had
Rakaman maksimum lalai: 300 saat; boleh dikonfigurasi 1–3600. Had muat naik lalai: 10 MiB; maksimum 30 MiB. Had masa tamat muat naik: 60 saat, tanpa percubaan semula automatik. Muat naik Bubble adalah awam. Hanya alamat muat naik fail *.bubbleapps.io anda yang disokong; domain khusus tidak. Draf tempatan bukan storan terenkripsi.
Tetapan, tindakan dan hasil
Gunakan nama-nama ini dalam Bubble. Ciri yang dirancang ditandakan secara berasingan.
Tetapan beta tersedia
Tetapan elemen
title · textmax_duration_seconds · numbermax_upload_bytes · numberis_active · yes_nodisabled · yes_noui_text_json · textsaved_draft_id · textbubble_upload_url · textlanguage · textdocument_context · textKeadaan
recorder_status · textpermission_status · textis_recording · yes_nois_paused · yes_noduration · numberlocal_uri · textdraft_id · textis_saved_locally · yes_nomime_type · textfile_size · numberwaveform_peaks_json · textpreview_status · textpreview_is_playing · yes_nopreview_current_time · numberupload_status · textupload_progress · numberuploaded_url · textuploaded_file · fileerror_code · textAcara
recording_startedrecording_pausedrecording_resumedrecording_stoppedrecording_readyrecording_cancelledrecorder_errorlocal_savedlocal_restoredlocal_deletedupload_succeededupload_failedupload_cancelledpreview_readypreview_errorTindakan dan inputnya
Start recordingPause recordingResume recordingStop recordingCancel recordingSave locallyRestore local draftDelete saved draftUpload to BubbleCancel uploadPlay previewPause previewStop previewSeek previewSet preview speedTetapan elemen · 10
titletext · Lalai: ""- Nilai contoh
Lesson 4 — review - Contoh ungkapan Bubble
Selected Lesson's name - Teks aplikasi yang dipaparkan; jika dikosongkan, teks terbina dalam yang dilokalkan digunakan jika disokong. Jangan masukkan maklumat pengesahan.
max_duration_secondsnumber · Lalai: 300- Nilai contoh
300 - Contoh ungkapan Bubble
Voice Settings' max_seconds - Gunakan nilai rekod perniagaan semasa; sahkan ia terhadap had di bawah.
max_upload_bytesnumber · Lalai: 10485760- Nilai contoh
10485760 - Contoh ungkapan Bubble
Voice Settings' max_upload_bytes - Gunakan nilai rekod perniagaan semasa; sahkan ia terhadap had di bawah.
is_activeyes_no · Lalai: true- Nilai contoh
yes - Contoh ungkapan Bubble
GuideHost's view_is_active (your yes/no custom state) - Tetapkan ya semasa pandangan ini dibuka. Tetapkan tidak apabila keluar, supaya main semula atau kerja semasa dapat dihentikan.
disabledyes_no · Lalai: false- Nilai contoh
no - Contoh ungkapan Bubble
GuideHost's is_busy (your yes/no custom state) - Lumpuhkan elemen semasa aplikasi anda sibuk atau tindakan ini tidak tersedia.
ui_text_jsontext · Lalai: ""- Nilai contoh
{} - Contoh ungkapan Bubble
App Settings' player_labels_json (supported keys only) - JSON pilihan dengan label butang yang disokong. Biarkan kosong untuk menggunakan teks terbina dalam.
saved_draft_idtext · Lalai: ""- Nilai contoh
<returned draft_id> - Contoh ungkapan Bubble
Selected VoiceDraft's draft_id - Gunakan nilai rekod perniagaan semasa; sahkan ia terhadap had di bawah.
bubble_upload_urltext · Lalai: ""- Nilai contoh
https://your-app.bubbleapps.io/version-test/fileupload - Contoh ungkapan Bubble
App Settings' selected_bubble_upload_url - Alamat muat naik fail aplikasi Bubble anda: /version-test/fileupload untuk Development, /fileupload untuk Live. Muat naik ini menghasilkan fail awam.
languagetext · Lalai: "auto"- Nilai contoh
uk - Contoh ungkapan Bubble
Current User's preferred_language - Tetapkan language=auto untuk mengikuti peranti atau bahasa pelayar yang disokong. Masukkan kod bahasa yang disokong untuk memilihnya secara eksplisit.
document_contexttext · Lalai: ""- Nilai contoh
<current-user-id> - Contoh ungkapan Bubble
Current User's unique id - Nilai stabil untuk akaun atau rekod ini. Gunakan nilai yang sama semasa memulihkan fail atau draf yang disimpan.
Tindakan dan inputnya · 15
Start recording
Tiada parameter tindakan
Pause recording
Tiada parameter tindakan
Resume recording
Tiada parameter tindakan
Stop recording
Tiada parameter tindakan
Cancel recording
Tiada parameter tindakan
Save locally
Tiada parameter tindakan
Restore local draft
draft_idtext · Lalai: —- Nilai contoh
<returned draft_id> - Contoh ungkapan Bubble
Selected VoiceDraft's draft_id - Gunakan nilai rekod perniagaan semasa; sahkan ia terhadap had di bawah.
Delete saved draft
draft_idtext · Lalai: —- Nilai contoh
<returned draft_id> - Contoh ungkapan Bubble
Selected VoiceDraft's draft_id - Gunakan nilai rekod perniagaan semasa; sahkan ia terhadap had di bawah.
Upload to Bubble
Tiada parameter tindakan
Cancel upload
Tiada parameter tindakan
Play preview
Tiada parameter tindakan
Pause preview
Tiada parameter tindakan
Stop preview
Tiada parameter tindakan
Seek preview
secondsnumber · Lalai: —- Nilai contoh
12 - Contoh ungkapan Bubble
Selected Comment's seconds - Gunakan nilai rekod perniagaan semasa; sahkan ia terhadap had di bawah.
Set preview speed
ratenumber · Lalai: —- Nilai contoh
1.5 - Contoh ungkapan Bubble
Preview Speed Dropdown's value - Gunakan nilai rekod perniagaan semasa; sahkan ia terhadap had di bawah.
Keadaan dan peristiwa
Keadaan
recorder_status · textKeputusan semasa tindakan ini. Gunakan acara selesai yang sepadan sebelum menyimpan kejayaan.
permission_status · textKeputusan semasa tindakan ini. Gunakan acara selesai yang sepadan sebelum menyimpan kejayaan.
is_recording · yes_noNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
is_paused · yes_noNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
duration · numberNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
local_uri · textLokasi fail pada peranti ini. Simpan atau muat naik fail secara berasingan jika ia perlu disimpan dalam talian.
draft_id · textPengenal untuk item atau tindakan ini. Simpan bersama rekod aplikasi yang sepadan. Gunakan pengenal permintaan yang sama semasa mencuba semula hasil yang tidak pasti.
is_saved_locally · yes_noNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
mime_type · textNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
file_size · numberNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
waveform_peaks_json · textNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
preview_status · textKeputusan semasa tindakan ini. Gunakan acara selesai yang sepadan sebelum menyimpan kejayaan.
preview_is_playing · yes_noNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
preview_current_time · numberNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
upload_status · textKeputusan semasa tindakan ini. Gunakan acara selesai yang sepadan sebelum menyimpan kejayaan.
upload_progress · numberNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
uploaded_url · textNilai semasa untuk item yang dipilih. Baca selepas acara berkaitan.
uploaded_file · fileFail dikembalikan selepas upload_succeeded. Simpan ia dalam medan Fail Bubble anda.
error_code · textMaklumat ralat untuk tindakan terakhir. Tunjukkan mesej bantuan dan tawarkan percubaan semula yang relevan.
Acara
recording_startedApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
recording_pausedApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
recording_resumedApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
recording_stoppedApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
recording_readyApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
recording_cancelledApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
recorder_errorApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
local_savedApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
local_restoredApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
local_deletedApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
upload_succeededApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
upload_failedApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
upload_cancelledApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
preview_readyApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
preview_errorApabila acara ini berlaku, baca keadaan berkaitan dari elemen yang sama.
Soalan yang ditanya pembangun
Adakah simpanan tempatan memuat naik rakaman?
Tidak. Save locally menyimpan draf milik aplikasi pada peranti ini. Upload to Bubble ialah operasi awam yang berasingan dan mesti dipilih secara nyata.
Bagaimana langganan berfungsi?
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.
Panduan berkaitan
Untuk bantuan, beritahu kami plugin dan peranti yang anda gunakan, tindakan yang anda cuba serta apa yang terjadi. Gunakan contoh tanpa data peribadi. Jangan sekali-kali kongsikan kunci atau fail peribadi anda.