Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Increased Interest in this Skill #65

Open
weiljx opened this issue Jan 8, 2018 · 18 comments
Open

Increased Interest in this Skill #65

weiljx opened this issue Jan 8, 2018 · 18 comments

Comments

@weiljx
Copy link
Collaborator

weiljx commented Jan 8, 2018

All,

I have seen a ton of increased interest in this skill as I closely follow it. I wish I had more time on my hands because I have many great ideas for how to improve it. I wanted to outline some of these ideas below and see if anyone else has time to work on them with me:

  1. This is a great skill but requires some technical know how, I would like to make it easier for others by making this a hosted Lambda and web interface for configuration.
  2. We could leverage Alexa's Smart Home API so we do not need an invocation name, to do this we need to implement HTTPS authentication and publish the Alexa App. When someone wants to use the hosted version they would need to provide their public IP or domain name when registering
  3. Depending on traffic and usage it may cost a bit to host but this may be able to be offset with a donations page
  4. Finally it would be nice to be able to tell the Alexa which TV you wish to control and have the skill remember your last preference so that 1 app could control all your TV's

Additionally when Alexa changes to a channel she could call the voice guide to answer whats on the channel rather than OK. Any other Feature enhancements could be addressed as well. Happy to give any more time I find to make this even better but definitely need some other motivated people to make this happen.

Let me know your thoughts

  • Josh
@vmweaver
Copy link
Collaborator

vmweaver commented Jan 8, 2018 via email

@bklavet
Copy link
Owner

bklavet commented Jan 8, 2018

Hello Josh! Happy new year my friend!
It will take a little work to get this presentable to amazon for publishing,
Were you thinking of setting up a pi config that users would download and then install the published Alexa App?

@weiljx
Copy link
Collaborator Author

weiljx commented Jan 8, 2018

Hey Bklavet,

First Happy New Year!!

Ideally we would open source the code just like the current project. This way if someone wanted to self host they could but I would like to get it to the stage that amazon would accept it. My only thought on difficulties is if AT&T would not allow it as this is not technically a Public API. But during the initial phase it is something we would need to host until ready to submit to Amazon. As I stated I have many projects up in the air right now but find myself getting friends and family set up with this setup which would be easier if hosted.

There has been a ton of discussion on this thread so I guess everyone got Alexa for Christmas.

  • Josh

@StarfighterJ
Copy link

Nice to here about you all thinking of publishing this Skill with Amazon that is why I was hinting about being able to input WAN IP at enable Skill. I guess the var APP_ID in index would not matter cause it would be a 1 time Permeant as it would be Published. I like the Idea of Alexa's Smart Home API though I messed around with that today, but did not get anywhere. I need more smarts for that.

@bklavet
Copy link
Owner

bklavet commented Jan 24, 2018

weiljx!
I spent a little time expanding the utterances for the voice guide. I was only using the custom slot values for GuideInfo: on/playing/show/ and the RatingInfo: rated/ratings
if you want to try them out,
expanded utterances for guide and ratings.txt

@weiljx
Copy link
Collaborator Author

weiljx commented Jan 24, 2018

@bklavet it looks like a nice addition at quick glance. I am working on the next iteration which should also make things easier for everyone. Just need to find some time to complete it. I will try to integrate these utterances into the new version I am working on.

@bklavet
Copy link
Owner

bklavet commented Jan 24, 2018

Cool,

I'm going to test them out over the next few days. I used to have a lot more for control but found that there is a "critical mass" to which everything is accepted and sent the slot regardless of how ridiculous the statement. Defeats the whole purpose.

@vmweaver
Copy link
Collaborator

vmweaver commented Jan 24, 2018 via email

@weiljx
Copy link
Collaborator Author

weiljx commented Jan 24, 2018

@mawrew19 I will try and get it checked into my fork over the weekend and I will let you know

@vmweaver
Copy link
Collaborator

One thought on controlling multiple TV was to enhance the skill so that one could utter "Alexa tell tv turn to HBO in family room" or in "bedroom 1" or "kitchen".
We should be able to parse the /info/getLocations response and match the "family room" with one of the locationname s and then the associated MAC address and make the call.
I know @weiljx , you have been playing with similar all-inclusive code. Does this align with your current strategy?

@weiljx
Copy link
Collaborator Author

weiljx commented Jan 30, 2018

@mawrew19 I have thought about this although I am not sure it would be wise to make the getLocations call every time. This is what made me start thinking of using the Smart Home Skill as it is much more geared towards this type of interaction. Sorry I did not get a chance to get anything checked in this weekend. I have been very busy with work lately and finding free time seems to get harder and harder.

@vmweaver
Copy link
Collaborator

No worries at ALL.. This is a hobby for me, so I squeeze it in when I can. I may prototype it to see if there is a performance impact. I haven't looked at the Smart Home Skill requirements or anything.

@weiljx
Copy link
Collaborator Author

weiljx commented Jan 31, 2018

@mawrew to give you another idea I think it would be nice to say Alexa ask TV to use Living Room this could be mapped in the app or make a call to get locations. Then this would be remembered until you tell Alexa to use a different device. This would prevent the need to say a device name with every command. First thought here was to not end the session but I have not investigated fully. I look forward to hearing your thoughts

@vmweaver
Copy link
Collaborator

Interesting idea. I am not sure how you would make that a persistent setting unless the skill were somehow linked to some other database service to store it. I think each discreet call terminates the sessions when done, but I could be wrong.
Having said that, it may not be TOO challenging to set up an Amazon Dyanamo DB for specific users. Just makes setup a bit more complex.

I am working through some ideas to see how one might provide a web service or somethign else where AWS creds are entered and validated, then download GIT code, modify, upload, setup Alexa Skill, setup lambda, etc.

I may have to look more into the Smart Home Skill to see how different the capabilities are.

So the call to info/getLocations only returns those devices that are currently powered on. This may not be a bad thing, but certainly could pose some complexity. From a use-case perspective, I wouldn't ever be changing the channel on something that was powered off.. lol.

@bklavet
Copy link
Owner

bklavet commented Feb 15, 2018

Gentlemen,
Just tried to uplaod a new test zip to my lambda function and it error'd out on me
image

I am guessing if anyone tries to upload the zip for any of the three versions they will run into this.

It looks to me like the handler is correct. Am I missing something?

Thanks
B

@vmweaver
Copy link
Collaborator

vmweaver commented Feb 15, 2018

B,
Yeah, looks like Amazon update their Lambda interface. Just rename "index" to "index.js" and reZIP and upload. Looks like their new editor looks pretty cool, actually. Can do updates and tweak instead of having to rezip and upload every time...

You can also upload, then go to the inline editor and rename the "index" file to "index.js" in the little file tree on the left.
-- m

@bklavet
Copy link
Owner

bklavet commented Feb 15, 2018

Thanks mawrew19! This must have just happened a day or so ago. I have been chewing through some of custom slot values with the beta test simulator, went to upload and Bam! I've been staring at my changes every since thinking I had something mucked up.

@jamesds1
Copy link

jamesds1 commented Mar 4, 2018

Hey guys. I have been trying to figure out the same thing along the lines of info/getLocations and Amazon Home Skills requirements. Right now I have 3 different Directv skills. One for the living room, one for Mstr bedroom and one for our garage. Just different invocation names and mini client mac addresses. _

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants