# MasterVoice Docs

## MasterVoice

![](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGe7mxb4cy5r4MNaRpy%2F-LGeDJrbGUn_CBLuW6y4%2Fchrome_2018-07-05_13-34-19.png?alt=media\&token=5ecdef92-d102-44c8-b2ad-fcff0e6305ab)

* Language: Select the speaker/listener language.
  * Default: en-US
  * Options:&#x20;
    * Afrikaans `af`
    * Basque `eu`
    * Bulgarian `bg`
    * Catalan `ca`
    * Arabic (Egypt) `ar-EG`
    * Arabic (Jordan) `ar-JO`
    * Arabic (Kuwait) `ar-KW`
    * Arabic (Lebanon) `ar-LB`
    * Arabic (Qatar) `ar-QA`
    * Arabic (UAE) `ar-AE`
    * Arabic (Morocco) `ar-MA`
    * Arabic (Iraq) `ar-IQ`
    * Arabic (Algeria) `ar-DZ`
    * Arabic (Bahrain) `ar-BH`
    * Arabic (Lybia) `ar-LY`
    * Arabic (Oman) `ar-OM`
    * Arabic (Saudi Arabia) `ar-SA`
    * Arabic (Tunisia) `ar-TN`
    * Arabic (Yemen) `ar-YE`
    * Czech `cs`
    * Dutch `nl-NL`
    * English (Australia) `en-AU`
    * English (Canada) `en-CA`
    * English (India) `en-IN`
    * English (New Zealand) `en-NZ`
    * English (South Africa) `en-ZA`
    * English(UK) `en-GB`
    * English(US) `en-US`
    * Finnish `fi`
    * French `fr-FR`
    * Galician `gl`
    * German `de-DE`
    * Greek `el-GR`
    * Hebrew `he`
    * Hungarian `hu`
    * Icelandic `is`
    * Italian `it-IT`
    * Indonesian `id`
    * Japanese `ja`
    * Korean `ko`
    * Latin `la`
    * Mandarin Chinese `zh-CN`
    * Traditional Taiwan `zh-TW`
    * Simplified China zh-CN `?`
    * Simplified Hong Kong `zh-HK`
    * Yue Chinese (Traditional Hong Kong) `zh-yue`
    * Malaysian `ms-MY`
    * Norwegian `no-NO`
    * Polish `pl`
    * Pig Latin `xx-piglatin`
    * Portuguese `pt-PT`
    * Portuguese (Brasil) `pt-BR`
    * Romanian `ro-RO`
    * Russian `ru`
    * Serbian `sr-SP`
    * Slovak `sk`
    * Spanish (Argentina) `es-AR`
    * Spanish (Bolivia) `es-BO`
    * Spanish (Chile) `es-CL`
    * Spanish (Colombia) `es-CO`
    * Spanish (Costa Rica) `es-CR`
    * Spanish (Dominican Republic) `es-DO`
    * Spanish (Ecuador) `es-EC`
    * Spanish (El Salvador) `es-SV`
    * Spanish (Guatemala) `es-GT`
    * Spanish (Honduras) `es-HN`
    * Spanish (Mexico) `es-MX`
    * Spanish (Nicaragua) `es-NI`
    * Spanish (Panama) `es-PA`
    * Spanish (Paraguay) `es-PY`
    * Spanish (Peru) `es-PE`
    * Spanish (Puerto Rico) `es-PR`
    * Spanish (Spain) `es-ES`
    * Spanish (US) `es-US`
    * Spanish (Uruguay) `es-UY`
    * Spanish (Venezuela) `es-VE`
    * Swedish `sv-SE`
    * Turkish `tr`
    * Zulu `zu`
* Start Paused: Start with the mic paused.

{% hint style="info" %}
## WORKFLOWS:
{% endhint %}

{% tabs %}
{% tab title="Add word to Voice workflow" %}
![Add word workflow options.](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGeDinC1f-T3pX9IcBk%2F-LGeFXgfgx607HBZWgS6%2Fchrome_2018-07-05_13-44-04.png?alt=media\&token=a5185d5b-c014-4c33-856a-2d9a07981335)

* word: The "word" that will be listened and will trigger the voice plugin.
* return: "word/value" that will be returned when the previous word is detected.

{% hint style="info" %}
You can add words, on page load event.
{% endhint %}
{% endtab %}

{% tab title="Add tag word to Voice workflow" %}
![Add tag workflow options.](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGeGF-5SMbzWEVsbBTA%2F-LGeHLCm9-fj3D8HKR8I%2Fchrome_2018-07-05_13-51-55.png?alt=media\&token=f103ce91-9103-42ff-98e9-ca4fda577a42)

* word: The "word" that will be listened and will trigger the voice plugin. In tag works differently as normal add word. So example, if we want to add a listener to all sentences they start like: -Show me "word", in this case, we will add a word "show me". And the rest that doesn't match in the word value will be returned as the value.

{% hint style="info" %}
You can add word tags, on page load event.
{% endhint %}
{% endtab %}

{% tab title="Start/Resume" %}
![Start/Resume workflow.](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGeGF-5SMbzWEVsbBTA%2F-LGeJ1sCepSlwC3OHWLZ%2Fchrome_2018-07-05_13-58-18.png?alt=media\&token=c2a47d58-434e-4429-8cee-32e92ae71c84)

* Starts or resumes the Voice element.
{% endtab %}

{% tab title="Pause" %}
![Pause workflow.](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGeGF-5SMbzWEVsbBTA%2F-LGeJ4G8nNxUlT1VSCxJ%2Fchrome_2018-07-05_13-59-12.png?alt=media\&token=5e95f76a-8d01-4ceb-9659-d1738d5507fe)

* Pause the Voice element from listening words **but doesn't close the mic.**
{% endtab %}

{% tab title="Stop" %}
![Stop workflow.](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGeGF-5SMbzWEVsbBTA%2F-LGeJ67ft6jxMwbjT-e9%2Fchrome_2018-07-05_13-58-51.png?alt=media\&token=fa2d76a8-a963-4ed2-8db2-d104730245ef)

* Stop the Voice element **closing the mic.**
{% endtab %}
{% endtabs %}

{% hint style="info" %}
## EXPOSED STATES:
{% endhint %}

### A very important part of this plugin is the exposed states. Because this is how you will do things in your app when something happens (some word is detected). You can access inside the voice element to the exposed states.

![Do when condition is true workflow.](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGeGF-5SMbzWEVsbBTA%2F-LGeK5b_G_6syyoVocE0%2Fchrome_2018-07-05_14-04-12.png?alt=media\&token=d0867005-c0e0-476f-8a87-33b8cefc4b2a)

### So a way to trigger when a word is said is creating a Do when condition is true... select the voice element, use the Return word (to get the returned word from "Add word to voice element") or use the Return tag (to get the returned tag word from "Add word tag to voice element").

![How to trigger word example.](https://870749518-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGX_1aOBJivMqQXSZ-5%2F-LGeGF-5SMbzWEVsbBTA%2F-LGeM8a-tsv7o6hMn8go%2Frrr.png?alt=media\&token=7aa75c84-a650-497e-890c-7b06ea8cb157)

{% hint style="success" %}
We recommend using custom states to play more complex scenarios.
{% endhint %}

{% hint style="success" %}
[DEMO PAGE](https://redubleplugins.bubbleapps.io/mastervoice)
{% endhint %}

{% hint style="success" %}
[EDITOR PAGE](https://bubble.is/page?type=page\&name=mastervoice\&id=redubleplugins\&tab=tabs-1)
{% endhint %}

