
Xodera Plugins · Bubble Native
Xodera Audio Recorder Native
La folk ta opp en talenotat, lytte før sending og beholde et lokalt utkast. Last opp kun når de velger å sende opptaket.
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.
Dokumentasjon gjennomgått 6 november 2026
Praktiske eksempler
Lytt før du sender en ikke‑konfidensiell talebeskjed
Brukerne trenger en mulighet til å høre og erstatte en opptak før den blir et vedlegg.
`title = the app’s conversation label`; sett `max_duration_seconds` og `max_upload_bytes` til din meldingspolicy.
Start recording → Stop recording → vent på `recording_ready` → Play preview. Tilby Seek preview og Set preview speed. Kun en eksplisitt Send utløser Upload to Bubble på den godkjente egen‑app‑opplastingsendepunktet.
Kun på `upload_succeeded`, opprett din Message og sett lydfeltet til `uploaded_file`. Meldingen opprettes ikke av opptakeren selv.
Ved nektet mikrofontilgang, vis `permission_status`; ved opplastingsfeil behold den lokale opptaket. Sjekk resultatet av en ukjent opplasting før du prøver igjen, slik at Send ikke kan opprette dupliserte vedlegg/meldinger.
Bubble‑opplasting lager en offentlig lydfil. Ikke bruk denne opplastingen for konfidensielle opptak.
Uttaleøvelse uten umiddelbar opplasting
Elever vil sammenligne sin egen talte respons med en leksjon før de bestemmer seg for å sende den.
`title = Current Exercise’s prompt`; `max_duration_seconds = the exercise limit`; et øvelsesvar forblir en app‑eid post.
Opptak → Stopp → Play preview. La eleven søke, senke hastigheten på forhåndsvisningen eller avbryte og ta opp et nytt forsøk. Save locally kun når de velger å beholde utkastet.
`duration`, `local_uri`, `mime_type` og `draft_id` beskriver forsøket. Appen din bestemmer om det forblir lokalt eller senere sendes inn via den valgte opplastingsarbeidsflyten.
Ved `preview_error`, bevar utkastet og vis `error_code`. Ikke gjør en forhåndsvisning eller lagret utkast til et innsendt svar før appens innsendingarbeidsflyt lykkes.
Bubble‑opplasting lager en offentlig lydfil. Ikke bruk denne opplastingen for konfidensielle opptak.
Behold et lokalt talekladde og gjør Send eksplisitt
En felterarbeider kan bli avbrutt før notatet er ferdig, og skal ikke måtte laste det opp bare for å beholde det.
`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. Lagre den returnerte `draft_id` i din egen enhet/konto‑avgrensede tilstand. Bruk Restore local draft for samme ID, deretter Play preview før du bestemmer om du skal laste opp.
Ved `local_saved` eller `local_restored`, inspiser `is_saved_locally`, `local_uri` og `duration`. Slett kun det lagrede utkastet etter eksplisitt brukervalg eller etter en separat bekreftet lagringspolicy.
Hvis gjenoppretting mislykkes, vis `error_code` og behold ID‑en for diagnostikk; ikke rapporter en tom eller annen opptak som gjenopprettet. Aldri auto‑opplasting ved gjenkobling.
Bubble‑opplasting lager en offentlig lydfil. Ikke bruk denne opplastingen for konfidensielle opptak.
Hva fungerer nå
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.
Bygg arbeidsflyten
Bruk de tilgjengelige beta‑handlingene nedenfor og test resultatet på dine mål‑enheter.
Disse eksemplene bruker app‑poster som Lesson, Message og Order. Erstatt dem med dine egne datatyper og elementnavn. Eksempel‑medieadresser må erstattes med dine egne filer.
Legg til opptakeren. Angi document_context = Current User's unique id og is_active til om opptaksvisningen er åpen.
Start recording ber om mikrofon‑tillatelse. Pause og Fortsett beholder samme opptak. Stop recording avslutter det; vent på recording_ready før du tilbyr gjennomgang eller opplasting.
Bruk forhåndsvisningskontrollene for å lytte. Save locally beholder et utkast på denne enheten; etter local_saved, behold draft_id for Restore local draft.
Forklar at sending oppretter en offentlig fil. Angi bubble_upload_url til din egen Bubble‑apps korrekte Development‑ eller Live‑filopplastingsadresse. Kjør Upload to Bubble kun når brukeren velger Send; ved upload_succeeded, lagre uploaded_file i din post.
Konfigurer én gang
Opprett eller velg ditt Bubble‑app‑prosjekt i BestPlugins → Dashboard → Plugins. Velg Xodera Audio Recorder Native, kopier nøkkelen, åpne deretter Bubble → Plugins → Xodera Audio Recorder Native og lim den inn i licensing_api_key. Lagre én gang; bruk deretter handlingene nedenfor. Hver plugin i hvert prosjekt har sin egen nøkkel.
Be om mikrofon‑tillatelse når brukeren starter opptak. Velg hvordan appen skal lagre utkast. Bubble‑opplasting lagrer en offentlig fil, så bruk den kun for lyd som er egnet for offentlig lagring.
Konfigurer én gang
- Opprett eller velg ditt Bubble‑app‑prosjekt på BestPlugins → Dashboard → Plugins.
- Velg denne plugin‑en og kopier prosjekt‑nøkkelen.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Legg til elementet, velg app‑dataene dine og bygg arbeidsflyten nedenfor.
- 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.
Installasjon og 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.
Lagre resultatet i appen din
Etter upload_succeeded, sett VoiceMessage.audio = Recorder's uploaded_file, owner = Current User, duration = Recorder's duration og mime_type = Recorder's mime_type. draft_id gjenoppretter et utkast på denne enheten; det er ikke en nettbasert lydfil.
Feil, avbryt og gjenoppretting
Hvis mikrofon‑tilgang nektes, forklar hvordan den aktiveres i enhetens innstillinger. Cancel recording forkaster det ulagrede opptaket; lagrede utkast forblir. Hvis en opplasting blir avbrutt, behold den lokale opptaket og sjekk om filen kom frem før du sender den igjen. Delete saved draft fjerner kun det valgte lagrede utkastet.
Funksjoner og begrensninger
Standard maksimal opptak: 300 sekunder; konfigurerbare 1–3600. Standard opplastingsgrense: 10 MiB; maksimum 30 MiB. Opplastings‑timeout: 60 sekunder, uten automatisk retry. Bubble‑opplastinger er offentlige. Kun dine egne *.bubbleapps.io fil‑opplastingsadresser støttes; egendefinerte domener gjør det ikke. Lokale utkast er ikke kryptert lagring.
Innstillinger, handlinger og resultater
Bruk disse navnene i Bubble. Planlagte funksjoner er merket separat.
Tilgjengelige beta‑innstillinger
Elementinnstillinger
title · textmax_duration_seconds · numbermax_upload_bytes · numberis_active · yes_nodisabled · yes_noui_text_json · textsaved_draft_id · textbubble_upload_url · textlanguage · textdocument_context · textTilstander
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 · textHendelser
recording_startedrecording_pausedrecording_resumedrecording_stoppedrecording_readyrecording_cancelledrecorder_errorlocal_savedlocal_restoredlocal_deletedupload_succeededupload_failedupload_cancelledpreview_readypreview_errorHandlinger og deres innganger
Start recordingPause recordingResume recordingStop recordingCancel recordingSave locallyRestore local draftDelete saved draftUpload to BubbleCancel uploadPlay previewPause previewStop previewSeek previewSet preview speedElementinnstillinger · 10
titletext · Standard: ""- Eksempelverdi
Lesson 4 — review - Eksempel Bubble uttrykk
Selected Lesson's name - Synlig app‑tekst; tomt bruker innebygd lokalisert kopi der det støttes. Ingen legitimasjon.
max_duration_secondsnumber · Standard: 300- Eksempelverdi
300 - Eksempel Bubble uttrykk
Voice Settings' max_seconds - Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
max_upload_bytesnumber · Standard: 10485760- Eksempelverdi
10485760 - Eksempel Bubble uttrykk
Voice Settings' max_upload_bytes - Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
is_activeyes_no · Standard: true- Eksempelverdi
yes - Eksempel Bubble uttrykk
GuideHost's view_is_active (your yes/no custom state) - Sett ja mens denne visningen er åpen. Sett nei ved avslutning, slik at avspilling eller pågående arbeid kan stoppes.
disabledyes_no · Standard: false- Eksempelverdi
no - Eksempel Bubble uttrykk
GuideHost's is_busy (your yes/no custom state) - Deaktiver elementet mens appen din er opptatt eller handlingen er utilgjengelig.
ui_text_jsontext · Standard: ""- Eksempelverdi
{} - Eksempel Bubble uttrykk
App Settings' player_labels_json (supported keys only) - Valgfri JSON med støttede knappetiketter. La stå tomt for å bruke den innebygde teksten.
saved_draft_idtext · Standard: ""- Eksempelverdi
<returned draft_id> - Eksempel Bubble uttrykk
Selected VoiceDraft's draft_id - Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
bubble_upload_urltext · Standard: ""- Eksempelverdi
https://your-app.bubbleapps.io/version-test/fileupload - Eksempel Bubble uttrykk
App Settings' selected_bubble_upload_url - Din egen Bubble‑app filopplastingsadresse: /version-test/fileupload for Development, /fileupload for Live. Denne opplastingen lager offentlige filer.
languagetext · Standard: "auto"- Eksempelverdi
uk - Eksempel Bubble uttrykk
Current User's preferred_language - Sett language=auto til å følge en støttet enhet eller nettleserspråk. Skriv inn en støttet språkkode for å velge den eksplisitt.
document_contexttext · Standard: ""- Eksempelverdi
<current-user-id> - Eksempel Bubble uttrykk
Current User's unique id - Stabil verdi for denne kontoen eller posten. Bruk samme verdi når du gjenoppretter lagrede filer eller utkast.
Handlinger og deres innganger · 15
Start recording
Ingen handlingsparametere
Pause recording
Ingen handlingsparametere
Resume recording
Ingen handlingsparametere
Stop recording
Ingen handlingsparametere
Cancel recording
Ingen handlingsparametere
Save locally
Ingen handlingsparametere
Restore local draft
draft_idtext · Standard: —- Eksempelverdi
<returned draft_id> - Eksempel Bubble uttrykk
Selected VoiceDraft's draft_id - Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Delete saved draft
draft_idtext · Standard: —- Eksempelverdi
<returned draft_id> - Eksempel Bubble uttrykk
Selected VoiceDraft's draft_id - Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Upload to Bubble
Ingen handlingsparametere
Cancel upload
Ingen handlingsparametere
Play preview
Ingen handlingsparametere
Pause preview
Ingen handlingsparametere
Stop preview
Ingen handlingsparametere
Seek preview
secondsnumber · Standard: —- Eksempelverdi
12 - Eksempel Bubble uttrykk
Selected Comment's seconds - Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Set preview speed
ratenumber · Standard: —- Eksempelverdi
1.5 - Eksempel Bubble uttrykk
Preview Speed Dropdown's value - Bruk den nåværende forretningspostens verdi; valider den mot grensene nedenfor.
Tilstander og hendelser
Tilstander
recorder_status · textNåværende resultat av denne handlingen. Bruk den tilsvarende fullførings‑hendelsen før du lagrer suksess.
permission_status · textNåværende resultat av denne handlingen. Bruk den tilsvarende fullførings‑hendelsen før du lagrer suksess.
is_recording · yes_noNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
is_paused · yes_noNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
duration · numberNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
local_uri · textFilplassering på denne enheten. Lagre eller last opp filen separat hvis den må holdes på nettet.
draft_id · textIdentifikator for dette elementet eller handlingen. Behold den sammen med den tilsvarende app‑posten. Bruk samme forespørsels‑identifikator ved gjentakelse av et usikkert resultat.
is_saved_locally · yes_noNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
mime_type · textNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
file_size · numberNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
waveform_peaks_json · textNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
preview_status · textNåværende resultat av denne handlingen. Bruk den tilsvarende fullførings‑hendelsen før du lagrer suksess.
preview_is_playing · yes_noNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
preview_current_time · numberNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
upload_status · textNåværende resultat av denne handlingen. Bruk den tilsvarende fullførings‑hendelsen før du lagrer suksess.
upload_progress · numberNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
uploaded_url · textNåværende verdi for det valgte elementet. Les den etter den relaterte hendelsen.
uploaded_file · fileFil returnert etter upload_succeeded. Lagre den i ditt Bubble‑filfelt.
error_code · textFeilinformasjon for den siste handlingen. Vis en hjelpsom melding og tilby relevant gjenforsøk.
Hendelser
recording_startedNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
recording_pausedNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
recording_resumedNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
recording_stoppedNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
recording_readyNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
recording_cancelledNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
recorder_errorNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
local_savedNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
local_restoredNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
local_deletedNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
upload_succeededNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
upload_failedNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
upload_cancelledNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
preview_readyNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
preview_errorNår denne hendelsen oppstår, les de relaterte tilstandene fra samme element.
Spørsmål utviklere stiller
Laster lokal lagring opp opptaket?
Nei. Save locally beholder et utkast på enheten. Upload to Bubble er en separat eksplisitt offentlig operasjon.
Hvordan fungerer abonnementet?
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.
Relaterte veiledninger
For hjelp, fortell oss hvilken plugin og enhet du bruker, handlingen du prøvde og hva som skjedde. Bruk et eksempel uten personlige data. Del aldri nøkkelen din eller private filer.