
Xodera Plugins · Bubble Native
Xodera Audio Player Native
Apondètz un lector àudio clar a las leiçons, als messatges vocals o als registres de produches. Permetètz a las personas d'escotar, de cambiar la velocitat e de contunhar dempuèi la posicion enregistrada.
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.
Documentacion revisada 6 novèmber 2026
Exemples practics
Nòtas vocalas dins una conversacion d’assisténcia
Un ligam de fichièr simple mena los utilizaires fòra de la conversacion e rend las responsas longas difìcils de revisar.
`source_url = Selected Message’s audio URL`; `title = Selected Message’s sender label`; `subtitle = Selected Message’s timestamp`.
Plaçatz lo lector dins lo detalh del messatge seleccionat. Permetèt a l’utilizaire Play/Pause, Seek a un punt util e Set speed. Ligatz `is_active` a la conversacion dobèrta.
Utilizatz `is_playing`, `current_time` e `duration` per mostrar lo progrès. Conservatz l’ID Message dins vòstra aplicacion per que un eveniment tardiu pòsca pas actualizar una conversacion diferenta.
Sus `player_error`, mostratz `error_code` e ofrissèt Reload source ; conservatz lo messatge e marcatz‑lo pas jamai coma escoltat aprèp una error.
Solament lectura. Vòstra aplicacion salva lo progrès d’escota.
Reprene una liçon de lenga a la posicion salvada
Los aprenents devon tornar jogar un passatge dificil al luòc de tornar lançar tota la liçon.
`source_url = Current Lesson’s audio URL`; `title = Current Lesson’s name`; la darrièra posicion aparten a aquel aprenent e a la liçon dins vòstra basa de donadas.
Aprèp `ready` per la liçon actuala, Seek als segondas salvats e esperatz que l’utilizaire Play. Utilizatz Set speed per una escota mai lenta. Salvatz lo progrès amb lo flux de trabalh de vòstra aplicacion.
Lègi `current_time` e `duration`. Sus `playback_ended`, vòstra aplicacion pòt enregistrar un punt de referéncia d’escota per lo Lesson actual.
Se la font a cambiat, escartatz la posicion anciana fins que la liçon siá cargada. Tractatz pas la fin de l’escota coma una prova que l’aprenent a comprés o a passat un test.
Solament lectura. Vòstra aplicacion salva lo progrès d’escota.
Revisar una pèça àudio amb comentaris amb marca de temps
Los editors o formators devon passar d’un comentari al moment pertinent dins una enregistrament.
`source_url = Selected Review’s recording URL`; cada Comment de l'aplicacion emmagazina sa pròpria valor en segondas; `waveform_peaks_json`, opcional, conten de pics reals per aquel meteis enregistrament.
Clicatz sus un Comment → Seek a sa posicion en segondas → Play. Quand la font cambia, remplaçatz o escafatz los pics e ligatz tornarmai lo Review seleccionat.
Afichatz `current_time` al costat del camp de redaccion de comentaris. `waveform_available` indica a l'interfàcia se de pics reals son estats fornits.
Limitatz los marcadors de temps obsolets a la durada actuala dins vòstra aplicacion o regetatz-los. Se i a pas de pics reals, afichatz lo contraròtle de progression ordinari al luòc d'una analisi àudio inventada.
Solament lectura. Vòstra aplicacion salva lo progrès d’escota.
Qué fonciona ara
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.
Crear lo flux de trabalh
Utilizatz las accions beta disponiblas çai-jos e testatz lo resultat sus vòstres aparelhs cibla.
Aquestes exemples utilizan de registres d’aplicacion tals coma Lesson, Message e Order. Remplaçatz-los per vòstres pròpris tipes de donadas e noms d’elements. Las adreças de mèdias d’exemple devon èsser remplaçadas per vòstres pròpris fichièrs.
Apondètz l’element àudio. Definissètz source_url = Selected Message's audio_url, title = Selected Message's sender_label e subtitle = Selected Message's date_label.
Se possedissètz de vertadièras donadas de forma d’onda per aqueste enregistrament, transmetètz-las dins waveform_peaks_json. Siquenon, daissatz-lo void.
Quand ready se produtz, utilizatz Seek amb lo nombre de segondas enregistrat se necessari. Daissatz l'utilizaire quichar Play. Utilizatz Pause, Seek e Set speed pels botons del lector.
Afichatz current_time e duration. Sus playback_ended, enregistratz la progression d'escota pel messatge o la leiçon seleccionada. Definissètz is_active segon que aquesta vista es dobèrta o non.
Configurar un sol còp
Creatz o causissètz vòstre projècte d’aplicacion Bubble dins BestPlugins → Dashboard → Plugins. Causissètz Xodera Audio Player Native, copiatz sa clau, puèi dobrissètz Bubble → Plugins → Xodera Audio Player Native e pegatz-la dins licensing_api_key. Enregistratz una còp ; puèi utilizatz las accions çai-jos. Cada plugin dins cada projècte a sa pròpria clau.
Utilizatz una adreça directa de fichièr àudio que l’aplicacion pòt dobrir. La lectura àudio requerís pas d’accès al microfòn o a la camèra.
Configurar un sol còp
- Creatz o causissètz vòstre projècte d’aplicacion Bubble a BestPlugins → Dashboard → Plugins.
- Causissètz aqueste plugin e copiatz sa clau de projècte.
- Open Bubble → Plugins → this plugin. Paste its project key into licensing_api_key and save.
- Apondètz l’element, causissètz vòstras donadas d’aplicacion e construïtz lo flux de trabalh çai-jos.
- 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.
Installacion e abonament
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.
Enregistrar lo resultat dins vòstra aplicacion
Exemple ListeningProgress : owner = Current User, lesson = Selected Lesson, seconds = Audio Player's current_time, duration = Audio Player's duration. Enregistratz quand l’utilizaire pausa o abandona la liçon, al luòc de a cada actualizacion d’ecran.
Fracàs, anullacion e recuperacion
Sus player_error, afichatz error_code e ofrissètz Reload source. Conservatz lo messatge o l’enregistrament de la liçon. Quand un enregistrament diferent es seleccionat, cargatz sa posicion salvada. Tornar a la vista avia pas la lectura automaticament.
Capacitats e limits
Velocitats de lectura : 1, 1.5 e 2. Volum : 0–1. Donadas de forma d’onda : 2–2048 valors entre 0 e 1. Los formats àudio suportats dependen de l’aparelh. Lo lector enregistrèt pas, transcriu pas ni salva pas permanentament l’àudio per una utilizacion fòra linha. La lectura en rèireplan e sus l’ecran de verrolhatge son pas garantidas.
Paramètres, accions e resultats
Utilizatz aqueles noms dins Bubble. Las foncions planificadas son marcadas separadament.
Paramètres beta disponibles
Paramètres de l’element
source_url · textwaveform_peaks_json · texttitle · textsubtitle · textplayback_rate · numbervolume · numberloop · yes_nois_active · yes_nodisabled · yes_noui_text_json · textlanguage · textEstats
player_status · textis_playing · yes_nois_loaded · yes_nois_buffering · yes_nocurrent_time · numberduration · numberprogress · numberplayback_rate · numbervolume · numberis_looping · yes_nowaveform_available · yes_nowaveform_status · texterror_code · textEveniments
readyplayback_startedplayback_pausedplayback_endedseek_completedrate_changedplayer_errorAccions e lors entradas
PlayPauseToggleStopSeekSet speedSet volumeReload sourceParamètres de l’element · 11
source_urltext · Per defaut: ""- Valor d’exemple
https://bestplugins.online/native-samples/lesson.mp3 - Exemple d'expression Bubble
Selected Message's audio_url - Adreça del fichièr àudio, vidèo o imatge seleccionat. Utilizatz un tipe de fichièr que aqueste plugin supòrta.
waveform_peaks_jsontext · Per defaut: ""- Valor d’exemple
[0.1,0.4,0.2,0.7] - Exemple d'expression Bubble
Selected Message's waveform_peaks_json - Valors d'amplitud normalizadas reals per aqueste enregistrament ; daissatz void se indisponibles.
titletext · Per defaut: ""- Valor d’exemple
Lesson 4 — review - Exemple d'expression Bubble
Selected Lesson's name - Tèxte visible de l'aplicacion; daissatz-lo void per utilizar lo tèxte integrat tradusit ont es disponible. I metatz pas d'informacions secretas d'autentificacion.
subtitletext · Per defaut: ""- Valor d’exemple
Teacher · today - Exemple d'expression Bubble
Selected Message's sender_label - Tèxte visible de l'aplicacion; daissatz-lo void per utilizar lo tèxte integrat tradusit ont es disponible. I metatz pas d'informacions secretas d'autentificacion.
playback_ratenumber · Per defaut: 1- Valor d’exemple
1.5 - Exemple d'expression Bubble
Current User's listening_speed - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
volumenumber · Per defaut: 1- Valor d’exemple
0.8 - Exemple d'expression Bubble
Volume Slider's value - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
loopyes_no · Per defaut: false- Valor d’exemple
no - Exemple d'expression Bubble
Selected Lesson's repeat_enabled - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
is_activeyes_no · Per defaut: true- Valor d’exemple
yes - Exemple d'expression Bubble
GuideHost's view_is_active (your yes/no custom state) - Definissètz yes mentre aquesta vista es dobèrta. Definissètz no quand la quitatz, per que la lectura o lo trabalh en cors se pòsca arrestar.
disabledyes_no · Per defaut: false- Valor d’exemple
no - Exemple d'expression Bubble
GuideHost's is_busy (your yes/no custom state) - Desactivar l’element mentre vòstra aplicacion es ocupada o aquesta accion es indisponibla.
ui_text_jsontext · Per defaut: ""- Valor d’exemple
{} - Exemple d'expression Bubble
App Settings' player_labels_json (supported keys only) - JSON opcional amb etiquetas de botonas suportadas. Daissatz void per utilizar lo tèxte integrat.
languagetext · Per defaut: "auto"- Valor d’exemple
uk - Exemple d'expression Bubble
Current User's preferred_language - Definissètz language=auto per seguir la lenga de l'aparelh o del navegador se aquela lenga es suportada. Entratz un còde de lenga suportat per la causir explicitament.
Accions e lors entradas · 8
Play
Cap de paramètre d'accion
Pause
Cap de paramètre d'accion
Toggle
Cap de paramètre d'accion
Stop
Cap de paramètre d'accion
Seek
secondsnumber · Per defaut: —- Valor d’exemple
12 - Exemple d'expression Bubble
Selected Comment's seconds - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Set speed
ratenumber · Per defaut: —- Valor d’exemple
1.5 - Exemple d'expression Bubble
Speed Dropdown's value - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Set volume
volumenumber · Per defaut: —- Valor d’exemple
0.8 - Exemple d'expression Bubble
Volume Slider's value - Utilizatz la valor del registre comercial actual ; validatz-la contra los limits çai-jos.
Reload source
Cap de paramètre d'accion
Estats e eveniments
Estats
player_status · textResultat actual d’aquesta accion. Utilizatz l’eveniment de fin correspondent abans d’enregistrar lo succès.
is_playing · yes_noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
is_loaded · yes_noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
is_buffering · yes_noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
current_time · numberValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
duration · numberValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
progress · numberValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
playback_rate · numberValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
volume · numberValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
is_looping · yes_noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
waveform_available · yes_noValor actual per l’element seleccionat. Legissètz-la aprèp l’eveniment associat.
waveform_status · textResultat actual d’aquesta accion. Utilizatz l’eveniment de fin correspondent abans d’enregistrar lo succès.
error_code · textInformacions d'error per la darrièra accion. Afichatz un messatge util e prepausatz de tornar ensajar l'operacion pertinenta.
Eveniments
readyQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
playback_startedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
playback_pausedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
playback_endedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
seek_completedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
rate_changedQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
player_errorQuand aqueste eveniment se produtz, legissètz los estats relatius a partir del meteis element.
Questions que los desvolopaires posan
Crèa-t‑lo la forma d’onda ?
Non. Fornissètz de pics normalizats reals per aquela font; lo contraròtle de progression ordinari fonciona sens eles.
Cossí fonciona l’abonament ?
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.
Guidas ligadas
Per obténer d’ajuda, informatz-nos quin plugin e quin aparelh utilizatz, l’accion que ensajatz e çò qu’es capitat. Utilizatz un exemple sens donadas personalas. Partajatz pas jamai vòstra clau o vòstres fichièrs privats.