Voice Monkey Plugin

Posted on
Tue Feb 21, 2023 7:59 pm
anyone offline
User avatar
Posts: 125
Joined: Apr 03, 2011
Location: Norfolk, VA

Voice Monkey Plugin

I am starting a thread to discuss a new plugin. It is close to completion, so I wanted to share some information about it.

The plugin, Voice Monkey, allows you to control your Alexa devices from within Indigo. It works with the Voice Monkey Amazon Alexa skill which has the ability to perform text-to-speech, play preset sounds, and execute Alexa routines on an Alexa Smart device such as an Echo or Echo Dot.

The Voice Monkey capabilities that the plugin supports are:.

    Execute a Alexa Routine
    Perform Text-To-Speech
    Play a preset sound (Chime, Doorbell, Air Horn, etc.)
    Play a URL audio file (Dogs barking, etc.)
    Play a URL audio File (Dogs barking, etc.) while performing Text-To-Speech
    Ask a Prompted Yes/No Question, executing an Action Group based on the Yes, No, or No Response.(*the Alexa Plugin is a requirement)

All of these are "Pro" features of the Amazon Alexa Skill except for the ability to Execute a Alexa Routine. The "Pro" features btw are $6Per year.
https://voicemonkey.io/start

With the non-Pro feature, (singular), you are limited to, if you want to call it a limit, triggering Alexa routines.

I shared some information about this skill last year in this thread. https://forums.indigodomo.com/viewtopic.php?f=138&t=25958

Posted on
Wed Feb 22, 2023 8:45 pm
anyone offline
User avatar
Posts: 125
Joined: Apr 03, 2011
Location: Norfolk, VA

Re: Voice Monkey Plugin

Now available in the plugin store https://www.indigodomo.com/pluginstore/280/

"One more thing..."

The plugin is compatible with alexa_remote_control, allowing enhanced control over Amazon Alexa devices. Additional configuration is required. However, both the installation and configuration of alexa_remote_control are optional. If not installed, it will not affect using the Voice Monkey features mentioned in my earlier post.

Additional Supported Features: (with alexa_remote_control installed)
    Trigger an Alexa Routine (by the name shown in the Alexa App)
    Type a Request to Alexa (Type in anything you would otherwise say to Alexa)
    Pass commands from Indigo, directly to alexa_remote_control (play, pause, adjust the volume, connect to Bluetooth, etc.)

Scripting is fully supported for both feature sets.

Code: Select all
import voice_monkey

# indigo.devices[651183378] # "Loft Echo"

indigo.device.beep(651183378)

voice_monkey.routine(monkeyId='routine-trigger-one', deviceId=651183378)

the_sound = "Bell 2"
voice_monkey.play_sound(soundName=the_sound, deviceId=651183378)

dogs_barking = 'https://dl.dropboxusercontent.com/s/dqk73c2cduxjg6k/one_dog_barking_audacity.mp3?dl=1'
voice_monkey.play_audio(audioFileUrl=dogs_barking, deviceId=651183378)

say_this = ('I am not sure why you would want to talk over dogs barking. <break time="5s"/>But you could if you really wanted to but again, I am not really sure why you would do this.<break time="7s"/>')
dogs_barking = 'https://dl.dropboxusercontent.com/s/dqk73c2cduxjg6k/one_dog_barking_audacity.mp3?dl=1'
voice_monkey.play_background_audio(
        text=say_this, audioFileUrl=dogs_barking, deviceId=651183378)

ask_this 'Is this plugin working out for you?'
voice_monkey.yes_or_no(question=ask_this,
                       executeWhenYes=800994550,
                       executeWhenNo=None,
                       deviceId=651183378)

voice_monkey.speak(text='Yes, it is working extremely well.', deviceId=651183378)


Code: Select all
import alexa_remote_control

# indigo.devices[651183378] # "Loft Echo"

ask_alexa_this = 'How many days until christmas?'
alexa_remote_control.ask_alexa(ask_alexa_this, "Loft Echo")

say_this = 'Its only a few more days until christmas'
alexa_remote_control.alexa_speak(say_this, "Loft Echo", 'Aditi')

alexa_remote_control.alexa_play_sound('Bell 2', 'Loft Echo')

alexa_remote_control.pass_cmd_line_args("-d 'Loft Echo' -e speak:'Hello world!'")

routine_name = "Loft: Morning Routine"
alexa_remote_control.alexa_routine(routine_name, "Loft Echo")


Posted on
Tue Mar 14, 2023 12:18 pm
anyone offline
User avatar
Posts: 125
Joined: Apr 03, 2011
Location: Norfolk, VA

Re: Voice Monkey Plugin

Voice Monkey Plugin v2022.1.1 is now available.

Bug Fixes and Cosmetic Changes:

• Replaced the "&" SSML reserve character with the "&amps;" entity reference in Text-to-Speech fields prior to passing to the API.
• Resolved an issue where the plugin continued to use the previously selected voice when performing Text-to-Speech
• Addressed an issue where an alternative name configured for a device was not recognized by alexa_remote_control
• Moved the configurable options in the "Logging Options" Menu to the Configuration Menu
• Corrected instructions on the Trigger Routine Action Create/Edit Window
• Clarified instructions on the Ask a Yes/No Question Action Create/Edit Window, explaining what selection to make if an Action Group should not execute.

To download the optional alexa_remote_control.sh project file, please use the following link: here. Version v0.20d of the file is fully compatible with macOS and includes all the features of the project.

Unfortunatly, version v0.20e, which was released on 2022-06-29, is not compatible with macOS due to the use of the '-d' option with the date command. However, it does not offer any new features compared to v0.20d.

Posted on
Sat Apr 22, 2023 2:49 pm
anyone offline
User avatar
Posts: 125
Joined: Apr 03, 2011
Location: Norfolk, VA

Re: Voice Monkey Plugin

Voice Monkey Plugin v2022.1.3 is now available.

This release includes some new features as well as many improvements that enhance the performance, and usability of the plugin.

    Added a new Device Action "Use Announcements Plugin" which allows for the selection of Announcements Devices created with DaveL17's Announcements Plugin as input for Text-to-Speech. This greatly simplifies the creation of both simple and complex speech strings.
      • When testing announcements created within the Announcements Plugin, the speech can now be heard on the Voice Monkey device selected in Plugins -> Voice Monkey -> Configured.
    Added a new Device Action that allows you to cancel a specific Yes/No Question.
    Added a new Device Action called "Simple Speak", which uses the text typed in the "Speak:" field of the action editor, as the text to speech input field, using the default voice. This is meant as a quick way to build speech actions. This was actually added in v2022.1.2.

Important Note

If you were using an alternative voice in a Text-to-Speech action or an action that played a preselected sound, you will need to edit the action and reselect the voice/sound after upgrading to this version. I apologize that the plugin cannot retain these settings, but moving forward, any updates that I perform should not affect these settings.

When either of these new Text-to-Speech Device Actions are used, the built-in speech synthesizer will also try to interpret and speak the text.

Upgrade Recommendation

It is recommended that everyone upgrades to this version to take advantage of the new features and bug fixes. If you experience any issues, please let me know.

You can download it here.

Page 1 of 1

Who is online

Users browsing this forum: No registered users and 1 guest

cron