[DEPRECATED] Echo Speaks

Big thanks to @cwwilson08 for motivating me to work on the port which ended up running great on Hubitat :slight_smile:

Current Features:

  • Creates virtual Echo Devices for every physical device.
  • Make Alexa announcements based on any Hubitat event.
  • Play music/sounds based on an event (eg, when someone arrives)
  • Trigger weather/traffic reports, jokes, fun facts, sing songs, stories, get calendar events,
  • Create Alarms or Reminders based on any Hubitat event
  • Many other Alexa features.
  • There is ~50 custom commands available
Notice:

Apps like Rule Machine/WebCoRE are currently the only apps to be able to fully utilize the more advanced features like music searching and creating Alarms/timers.

Links

Documentation:

https://tonesto7.github.io/echo-speaks-docs/

Installation Instructions:

https://tonesto7.github.io/echo-speaks-docs/#/docs/installation/appInstall

Device Attributes:

https://tonesto7.github.io/echo-speaks-docs/#/docs/devices/deviceAttributes

Device Commands:

https://tonesto7.github.io/echo-speaks-docs/#/docs/devices/deviceCommands

Troubleshooting:

https://tonesto7.github.io/echo-speaks-docs/#/docs/support

Developers:

Please contact us if you have any questions about how the devices work or integrating
into your work.


Updates


V2.4.0 (January 26th, 2019)

App

  • FIXED: Echo Device Filter not stopping selected devices from being created.
  • FIXED: Updated the UI some for devices. It's easy to distinguish between unsupported and devices ignored by user.
  • UPDATED: Rewrote the broadcast test logic it works extremely well now. Devices that are shown to not support TTS are not selectable in the list.
  • UPDATED: Also rewrote the announcement test logic it works extremely well now. Devices that are shown to not support TTS are not selectable in the list.
  • UPDATED: Echo Device Filter not stopping selected devices from being created.
  • UPDATED: Streamlined the new install flow in the app to reduce page changes. (Update the documentation as well)

Device

  • FIXED: Speaking long text on ST would throw an exception
  • FIXED: fixed broken attributes lastVoiceActivity and lastSpokenToTime from last update.
  • FIXED: wait sequence command was breaking the whole sequence (Multiple waits are having issues).
  • FIXED: Made changes to address the random exception errors on async responses.
  • UPDATED: Speak commands now handle long strings but splitting them into multiple sequence commands and playing them 1 by 1
  • ADDED: Music search available in the sequence commands.
  • ADDED: Speak command now cleans the strings of unnecessary characters.
  • ADDED: Speak command will attempt to transform items like temperature 19F to 19 degrees and directions SSW to south southwest. (This can be disabled under each device)

V2.3.2 (January 23rd, 2019):

App

  • FIXED: Echo Device Filter not stopping selected devices from being created.
  • FIXED: Made changes to address the random exception errors on async responses.

Device

  • FIXED: Broken sequence commands from v2.3+
  • FIXED: wait sequence command was breaking the whole sequence.
  • FIXED: Made changes to address the random exception errors on async responses.
  • UPDATED: Speak commands now handle long strings but splitting them into multiple sequence commands and playing them 1 by 1

V2.3.1 (January 23rd, 2019):

App

  • FIXED: Remove duplicate documentation and settings inputs
  • FIXED: Significantly reduced the icon sizes by 80-90% to speed up image loading
  • UPDATED: Support for the new required executeSequenceCommand() split character from , to ,,
    Important Note: I've been seeing more Async Function errors on the Hubitat recently. I will continue to investigate the issue.

Device

  • FIXED: Broken tile buttons fixed
  • FIXED: Significantly reduced the icon sizes by 80-90% to speed up icon and tile image loading.
  • ADDED: sayCompliment button
  • UPDATED: Modified the required executeSequenceCommand() split character from , to ,,

V2.3.0 (January 22nd, 2019):

App:

  • FIXED: Lot's of little bugs squashed and some minor UI tweaks.
  • FIXED: Metrics collection was broken in the last release.
  • FIXED: Broadcast test page should now work correctly again.
  • UPDATED: Overhauled the device detection logic. You will see more devices shown now.
  • UPDATED: Modified the Device Test page to include testing of Broadcasts, Announcements, and Sequence Commands.
  • ADDED: New Unrecognized devices section in the app. It will show you which devices are being ignored and why.
  • ADDED: Ability to override and install blocked (unsupported) devices.
  • ADDED: Notification option for successful cookie refreshes.
  • ADDED: Local server support (Hubitat only).

Important Note: I've been seeing more Async Function errors on the Hubitat side recently. I will continue to investigate the issue.

Device:

  • FIXED: TTS Queue has been broken for sometime apparently. Should work as designed now
  • ADDED: New executeSequenceCommand() see documentation for details
  • ADDED: last command spoken date/time attribute on the device in the attribute lastSpokenToTime.
  • ADDED: say****() commands for canned tts messages.
  • ADDED: added trackImgHtml attribute with html <img></img> for dashboards.

Server:

  • FIXED: Minor bugs fixed.
  • UPDATED: Restored local install support for Hubitat.
  • UPDATED: AlexaCookie library updated to v2.0.1.

V2.2.0 (January 15th, 2019):

App:

  • UPDATED: The Code is now 100% Cross-Platform ready for SmartThings and Hubitat!
  • FIXED: Update Notifications are now off when you disable them.
  • FIXED: Reduced missed poll notifications. The app will attempt to re-initiate the data updates 1 time before alerting you.
  • FIXED: Many, many bug fixes. So many that it leads me to wonder how the app even worked at all.
  • UPDATED: UI flow and layout updates and reorganization.
  • UPDATED: Added Device and Server Version to head section on the main page for easy viewing of installed versions.
  • ADDED: The supported device is now dynamic and the update process is now 100% remote. Meaning I can support remotely and your app will update it's data every 6 hours or will update when you open the smartapp.
  • ADDED: Device Cleanup Option to remove unwanted devices or All devices on uninstall

Device:

  • FIXED: Volume logic fixes
  • UPDATED: playAnnouncement() changes.. Added optional parameters Title, Volume, Restore Volume to playAnnouncement command. (Unfortunately playAnnouncementAll() does not support volume yet)
    You will see 2 playAnnouncement commands now. the new one excepts playAnnouncement(message, title, volume, restoreVolume)
  • UPDATED: playText* commands have been updated to provide better support for legacy smartapps
  • UPDATED: sendTtsTest() command has been renamed to speechTest()
  • UPDATED: Device Tile UI has been overhauled with icons.
  • ADDED: Bluetooth Device Control. You can connected/disconnect as well as delete there pairing from the device.
  • ADDED: Account activity is now checked to determine if a device was that last device spoken to on your account. The value will be found in wasLastSpokenToDevice attribute.
  • ADDED: You can also get the last command spoken on the device in the attribute lastVoiceActivity.
  • ADDED: Command to Rename your alexa device on your Amazon account.
  • ADDED: Undocumented command that I will not explain how to use yet. :expressionless:
25 Likes

I hope I can motivate you to port NST Manager.....

lol... I don't think i have that much ambition at the moment :slight_smile:

Maybe though... NST is due for a full rewrite anyway. I've learned a lot over the last 2 years

2 Likes

I would love to pull my Nest protects over from ST, but I love the Nest Manager smartapp so much I just can't bring myself to move them over to Hubitat yet. I would also vote for the NST Manager for Hubitat!

Good news is that the port is pretty much complete... I'm just performing some last minute testing and polishing

5 Likes

All I need to do is find the stupid bug I've created which is preventing music commands from working on ST.

Since I refuse to maintain 2 code bases, i'm going to wait until I resolve the issue before releasing.

I will say Echo Speaks runs pretty great on Hubitat :slight_smile:

3 Likes

Hey Tony,
I know this has been a very long and overly interactive project on ST so absolutely agree it’s the right approach to get it solid here.
You have a level of patience and commitment I really admire... especially after some of those responses in the ST community.
Looking forward to trying it here.

K

2 Likes

I appreciate it.

I knocked bug out earlier.

I got ambitious to add some features in to make things better for users and myself.
I'm wrapping up the last feature now.

I will be posting this as a beta on HE side. Once I can confirm i didn't bust things ST side.

Heads up

I will be doing a release of this code tonight without a beta because i'm excited to get this out there.
I would like non adventurous people to hold off until given the all clear message by others.

2 Likes

This is going to be good...

1 Like

button mashing the refresh to be one of the first in line.

2 Likes

@tonesto7 published the code over on ST forum:
Updates

V2.2.0 (January 15th, 2019):

App:

  • UPDATED: Code base now supports 100% Cross-Platform Support for both SmartThings and Hubitat!

https://community.smartthings.com/t/release-echo-speaks/142252

1 Like

Been running great for me since last night....

2 Likes

Thanks I was going to post here today

2 Likes

Just an FYI.... Echo Speaks runs very fast on Hubitat :wink:

It's strangely quiet in here :expressionless:

2 Likes

I'm just installing looks brilliant so far Thanks for this

I have got heroku to pull my cookie and the app sees all my devices but I can not get them to speak from the test page in the app or directly from the device itself.
I am sure it is something simple I am missing

Watch the log output while sending the command from the driver page itself

I get "SpeakCommand Sent Successfully"
it should work I have 11 (plus the all devices so 12) echo devices and all say online
I have tried rebooting the hub and one of the devices as well