Audio Recorder Interface.
Audio Recorder Interface.
← All native Guide

Xodera Plugins · Bubble Native

Xodera Audio Recorder Native

Erlaabt d'Leit eng Stëmmnotiz opzehuelen, virun dem Versand ze lauschteren an e lokale Entwécklung ze halen. Lued nëmmen erop, wann si d'Opnam schécken wëllen.

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.

Dokumentatioun iwwerkuckt 6 November 2026

Praktesch Beispiller

Lauschter ier Dir eng net vertraulëch Stëmmnachricht schéckt

Benotzer brauchen eng Méiglechkeet d'Opnam ze lauschten an ze ersetzen, ier et zu engem Anhang gëtt.

`title = the app’s conversation label`; setzt `max_duration_seconds` an `max_upload_bytes` op Är Noriichtpolicy.

Start recording → Stop recording → waart op `recording_ready` → Play preview. Bitt Seek preview an Set preview speed un. Nëmmen eng explizit Schécken aktivéiert Upload to Bubble op dem akzeptéierten eegene App-Upload-Endpunkt.

Nëmmen op `upload_succeeded`, erstallt Ären Message an setzt säi Audiofeld op `uploaded_file`. D'Noriicht gëtt net vum Recorder selwer erstallt.

Bei refuséierte Mikrofon-Accès weist `permission_status`; bei Upload-Feeler behält de lokale Opname. Kontrolléiert d'Resultat vun engem onbekannte Upload ier Dir nach eng Kéier probéiert, sou datt Schécken keng duplizéiert Attachments/Noriichten erstallt.

Bubble-Upload erstallt eng ëffentlech Audiodatei. Benotzt dësen Upload net fir vertraulëch Opnamen.

Aussproochübungen ouni direkt Upload

Learners wëllen hir eegen gesproch Äntwert mat enger Léierstonn vergläichen, ier si decidéieren se ze schécken.

`title = Current Exercise’s prompt`; `max_duration_seconds = the exercise limit`; eng Übungsäntwert bleift eng App-eigene Aufzeichnung.

Opnam → Stopp → Play preview. Loosst de Lerner seeken, d'Virausbléck verlangsamen oder annuléieren an eng aner Versich ophuelen. Save locally nëmmen wann si decidéieren de Konzept ze behalen.

`duration`, `local_uri`, `mime_type` an `draft_id` beschreiwen den Versuch. Är App entscheed ob et lokal bleift oder spéider duerch Äre gewielte Upload-Workflow geschéckt gëtt.

Op `preview_error`, erhalen de Konzept an weist `error_code`. Wandt eng Virausbléck oder gespäichert Konzept net an eng geschéckt Äntwert ëm, bis de App-Submission-Workflow erfollegräich ass.

Bubble-Upload erstallt eng ëffentlech Audiodatei. Benotzt dësen Upload net fir vertraulëch Opnamen.

Behält e lokale Stëmmkonzept a maach Schécken explizit

En Feldaarbechter kann ënnerbrach ginn, ier hien eng Notiz fäerdeg huet, an soll net mussen et eroplueden just fir et ze behalen.

`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. Späichert den zréckgeluechten `draft_id` an Ärem eegene Gerät/Account-gebondene Stand. Benotzt Restore local draft fir déi selwecht ID, dann Play preview ier Dir decidéiert ob Dir eroplued.

Op `local_saved` oder `local_restored`, iwwerschaut `is_saved_locally`, `local_uri` an `duration`. Läscht de gespäicherten Konzept nëmmen no expliziter Benotzerentscheedung oder no enger separat bestätegter Retentionspolicy.

Falls d'Restauratioun feelt, weist `error_code` an halen d'ID fir Diagnostik; meldt kee leere oder anere Opname als restauréiert. Nie auto-Upload beim neien Verbannen.

Bubble-Upload erstallt eng ëffentlech Audiodatei. Benotzt dësen Upload net fir vertraulëch Opnamen.

Wat elo funktionéiert

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.

Den Workflow bauen

Benotzt déi verfügbar Beta-Aktiounen hei drënner a test d'Resultat op Äre Zielgeräter.

Dës Beispiller benotzen App-Recourcen wéi Lesson, Message an Order. Ersetzt se mat Äre eegenen Datentypen an Elementnimm. Beispill-Media-Adressë musse mat Äre eegenen Fichieren ersat ginn.

  1. Den Recorder bäifügen. Setzt document_context = Current User's unique id an is_active op ob d'Opnam-View op ass.

  2. Start recording freet no Mikrofon-Erlaabnis. Pause an Resume halen d'selwecht Opnam. Stop recording beendegt et; waart op recording_ready ier Dir d'Review oder den Upload ubitt.

  3. Benotzt d'Preview-Kontrollen fir ze lauschteren. Save locally hält eng Entworf op dësem Gerät; no local_saved, behält draft_id fir Restore local draft.

  4. Erkläert datt d'Verschécken eng ëffentlech Datei erstallt. Setzt bubble_upload_url op Är eegen Bubble App seng korrekt Development oder Live Datei-Upload-Adress. Féiert Upload to Bubble nëmmen aus, wann de Benotzer Send auswielt; op upload_succeeded, späichert uploaded_file an Ärem Dossié.

Workflow-Diagramm — net en App-Screenshot

Eenmal konfiguréieren

Erstellt oder wielt Äre Bubble App-Projet an BestPlugins → Dashboard → Plugins. Wielt Xodera Audio Recorder Native, kopéiert säi Schlëssel, dann opmaachen Bubble → Plugins → Xodera Audio Recorder Native an füügt en an licensing_api_key. Eenmol späicheren; dann d'Aktiounen hei drënner benotzen. All Plugin an all Projet huet säi eegene Schlëssel.

Frot no Mikrofon-Erlaabnis wann de Benotzer mat der Opnam ufänkt. Wiel wéi d'App Entwërf späichert. Bubble Upload späichert eng ëffentlech Datei, also benotzt se nëmmen fir Audio, dat fir ëffentleche Späicheren gëeegent ass.

Eenmal konfiguréieren
  1. Erstellt oder wielt Äre Bubble App-Projet bei BestPlugins → Dashboard → Plugins.
  2. Wielt dësen Plugin aus an kopéiert säi Projet-Schlëssel.
  3. Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
  4. Füügt d'Element derbäi, wielt Är App-Daten an baut de Workflow hei drënner op.
  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.
Installatioun an Abonnement

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.

Späichert d'Resultat an Ärer App

No upload_succeeded, setzt VoiceMessage.audio = Recorder's uploaded_file, owner = Current User, duration = Recorder's duration an mime_type = Recorder's mime_type. draft_id restauréiert eng Entworf op dësem Gerät; et ass keng online Audio-Datei.

Feeler, annuléieren an Erhuelung

Wann Mikrofon-Zougang refuséiert gëtt, erkläert wéi et an den Apparat-Astellungen aktivéiert ka ginn. Cancel recording verwirft d'net gespäichert Opnam; gespäichert Entwërf bleiwen. Wann en Upload ënnerbrach gëtt, halen d'lokale Opnam a kontrolléiert ob d'Datei ukomm ass, ier se nach eng Kéier geschéckt gëtt. Delete saved draft läscht nëmmen d'ausgewielte gespäichert Entworf.

Fäegkeeten an Limiten

Standard maximal Opnam: 300 Sekonnen; konfiguréierbar 1–3600. Standard Upload-Limit: 10 MiB; maximal 30 MiB. Upload-Zäitlimit: 60 Sekonnen, ouni automateschen Retry. Bubble Uploads sinn ëffentlech. Nëmmen Är eege *.bubbleapps.io Datei-Upload-Adressë ginn ënnerstëtzt; personaliséiert Domänen net. Lokale Entwërf sinn net verschlësselt.

Astellungen, Aktiounen an Resultater

Benotzt dës Nimm an Bubble. Geplang Features sinn separat markéiert.

Verfügbare Beta-Astellungen

Element-Astellungen

title · textmax_duration_seconds · numbermax_upload_bytes · numberis_active · yes_nodisabled · yes_noui_text_json · textsaved_draft_id · textbubble_upload_url · textlanguage · textdocument_context · text

Zoustänn

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 · text

Evenementer

recording_startedrecording_pausedrecording_resumedrecording_stoppedrecording_readyrecording_cancelledrecorder_errorlocal_savedlocal_restoredlocal_deletedupload_succeededupload_failedupload_cancelledpreview_readypreview_error

Aktiounen an hir Inputen

Start recordingPause recordingResume recordingStop recordingCancel recordingSave locallyRestore local draftDelete saved draftUpload to BubbleCancel uploadPlay previewPause previewStop previewSeek previewSet preview speed
Element-Astellungen · 10
titletext · Standard: ""
BeispillwäertLesson 4 — review
Beispiel Bubble AusdrockSelected Lesson's name
Sichtbaren App-Text; eidel benotzt déi integriert lokaliséiert Kopie wou ënnerstëtzt. Kee Credenzial.
max_duration_secondsnumber · Standard: 300
Beispillwäert300
Beispiel Bubble AusdrockVoice Settings' max_seconds
Benotzt de Wäert vum aktuelle Geschäftsdatenbank-Datensatz; validéiert en géint d'Grenzwerte hei drënner.
max_upload_bytesnumber · Standard: 10485760
Beispillwäert10485760
Beispiel Bubble AusdrockVoice Settings' max_upload_bytes
Benotzt de Wäert vum aktuelle Geschäftsdatenbank-Datensatz; validéiert en géint d'Grenzwerte hei drënner.
is_activeyes_no · Standard: true
Beispillwäertyes
Beispiel Bubble AusdrockGuideHost's view_is_active (your yes/no custom state)
Setzt Ja, soulaang dës Vue op ass. Setzt Nee beim Verloossen, sou datt d'Playback oder d'aktuell Aarbecht gestoppt ka ginn.
disabledyes_no · Standard: false
Beispillwäertno
Beispiel Bubble AusdrockGuideHost's is_busy (your yes/no custom state)
Desaktivéiert d'Element, wann Är App beschäftegt ass oder dës Aktioun net verfügbar ass.
ui_text_jsontext · Standard: ""
Beispillwäert{}
Beispiel Bubble AusdrockApp Settings' player_labels_json (supported keys only)
Optional JSON mat ënnerstëtzten Knäppchenbeschrëftungen. Loosst eidel fir den integrierten Text ze benotzen.
saved_draft_idtext · Standard: ""
Beispillwäert<returned draft_id>
Beispiel Bubble AusdrockSelected VoiceDraft's draft_id
Benotzt de Wäert vum aktuelle Geschäftsdatenbank-Datensatz; validéiert en géint d'Grenzwerte hei drënner.
bubble_upload_urltext · Standard: ""
Beispillwäerthttps://your-app.bubbleapps.io/version-test/fileupload
Beispiel Bubble AusdrockApp Settings' selected_bubble_upload_url
Är eegen Bubble App-Datei-Upload-Adress: /version-test/fileupload fir Development, /fileupload fir Live. Dësen Upload erstallt ëffentlech Dateien.
languagetext · Standard: "auto"
Beispillwäertuk
Beispiel Bubble AusdrockCurrent User's preferred_language
Setzt language=auto fir eng ënnerstëtzt Apparat oder Browser-Sprooch ze verfollegen. Gitt e ënnerstëtzte Sproochcode an fir se explizit auszewielen.
document_contexttext · Standard: ""
Beispillwäert<current-user-id>
Beispiel Bubble AusdrockCurrent User's unique id
Stabile Wäert fir dësen Kont oder Dossié. Benotzt de selwechten Wäert beim Restauréieren vun senge gespäicherten Dateien oder Entwécklungen.
Aktiounen an hir Inputen · 15
Start recording

Keng Aktiounsparameter

Pause recording

Keng Aktiounsparameter

Resume recording

Keng Aktiounsparameter

Stop recording

Keng Aktiounsparameter

Cancel recording

Keng Aktiounsparameter

Save locally

Keng Aktiounsparameter

Restore local draft
draft_idtext · Standard: —
Beispillwäert<returned draft_id>
Beispiel Bubble AusdrockSelected VoiceDraft's draft_id
Benotzt de Wäert vum aktuelle Geschäftsdatenbank-Datensatz; validéiert en géint d'Grenzwerte hei drënner.
Delete saved draft
draft_idtext · Standard: —
Beispillwäert<returned draft_id>
Beispiel Bubble AusdrockSelected VoiceDraft's draft_id
Benotzt de Wäert vum aktuelle Geschäftsdatenbank-Datensatz; validéiert en géint d'Grenzwerte hei drënner.
Upload to Bubble

Keng Aktiounsparameter

Cancel upload

Keng Aktiounsparameter

Play preview

Keng Aktiounsparameter

Pause preview

Keng Aktiounsparameter

Stop preview

Keng Aktiounsparameter

Seek preview
secondsnumber · Standard: —
Beispillwäert12
Beispiel Bubble AusdrockSelected Comment's seconds
Benotzt de Wäert vum aktuelle Geschäftsdatenbank-Datensatz; validéiert en géint d'Grenzwerte hei drënner.
Set preview speed
ratenumber · Standard: —
Beispillwäert1.5
Beispiel Bubble AusdrockPreview Speed Dropdown's value
Benotzt de Wäert vum aktuelle Geschäftsdatenbank-Datensatz; validéiert en géint d'Grenzwerte hei drënner.
Zoustänn an Evenementer

Zoustänn

recorder_status · text

Aktuellt Resultat vun dëser Aktioun. Benotzt den entspriechende Ofschloss-Event ier Dir de Succès späichert.

permission_status · text

Aktuellt Resultat vun dëser Aktioun. Benotzt den entspriechende Ofschloss-Event ier Dir de Succès späichert.

is_recording · yes_no

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

is_paused · yes_no

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

duration · number

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

local_uri · text

Datei-Standort op dësem Gerät. Späichert oder lued d'Datei separat erop, wann se online muss bleiwen.

draft_id · text

Identifizéierer fir dësen Element oder Aktioun. Halten et bei der entspriechender App-Opzeechnung. Benotzt de selwechten Ufro-Identifizéierer beim Widderhuelen vun engem onbestëmmte Resultat.

is_saved_locally · yes_no

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

mime_type · text

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

file_size · number

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

waveform_peaks_json · text

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

preview_status · text

Aktuellt Resultat vun dëser Aktioun. Benotzt den entspriechende Ofschloss-Event ier Dir de Succès späichert.

preview_is_playing · yes_no

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

preview_current_time · number

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

upload_status · text

Aktuellt Resultat vun dëser Aktioun. Benotzt den entspriechende Ofschloss-Event ier Dir de Succès späichert.

upload_progress · number

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

uploaded_url · text

Aktuellen Wäert fir dat ausgewielte Element. Liest et no dem verbonne Event.

uploaded_file · file

Datei gouf no upload_succeeded zeréckginn. Späichere se an Ärem Bubble Dateifeld.

error_code · text

Feelinformatioun fir déi lescht Aktioun. Weist eng hëllefräich Noriicht an bidd de passende Wiederhuelungsversuch un.

Evenementer

recording_started

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

recording_paused

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

recording_resumed

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

recording_stopped

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

recording_ready

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

recording_cancelled

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

recorder_error

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

local_saved

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

local_restored

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

local_deleted

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

upload_succeeded

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

upload_failed

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

upload_cancelled

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

preview_ready

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

preview_error

Wann dëst Evenement optrëtt, lies d'verbonne Stänn vum selwechten Element.

Froen déi Entwéckler stellen

Späichert d'lokale Späicheren den Opnam erop?

Nee. Save locally hält eng geréiert Gerätedraft. Upload to Bubble ass eng separat explizit ëffentlech Operatioun.

Wéi funktionéiert d'Abonnement?

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.

Zesummehangend Guides

Fir Hëllef, sot eis, wéi en Plugin a Gerät Dir benotzt, d'Aktioun déi Dir probéiert hutt an wat geschitt ass. Benotzt e Beispill ouni perséinlech Daten. Deelt ni Ären Schlëssel oder privat Fichieren.