Giter Club home page Giter Club logo

scout-alexa's People

Contributors

bscong avatar dylano avatar tamarahills avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scout-alexa's Issues

After reading off titles, have Scout ask user which one they want to hear

  • Before Alexa starts reading titles, have her say, "OK, For any title, you can say "play" or "skim" for any article.
    After Alexa finishes 5 titles, have say: "You can say next 5 or repeat"

  • User should be able to respond with: "play|skim fake news" or "play|skim|summarize the one about polar bears"

  • User should be able to respond with "repeat" to hear the same 5 titles again.

  • User should be able to respond with "next 5" to hear the next 5 titles.

  • User should be able to respond with "number 12" (Move this to P2)

  • If user runs out of titles, Alexa should say, You can say "get headlines" to hear summaries of articles pocket recommends.

  • After getting user response, Alexa should respond with "Ok, one minute while I get that article for you" and then start the player

Polly's volume is significantly lower than Alexa's.

It's quite jarring to go from Alexa to Polly currently. Polly is a bit lower volume. Need to see if we can match the Alexa volume somehow.

Needs an investigation as to whether this should be done during synthesis or during AudioController time inside the skill

State Machine wrong after pause/resume/stop and new session

Same steps as #17
Steps:

Alexa, tell scout to get headlines
Listen
Alexa pause
Alexa resume
Listen
Alexa Stop
(Alexa does not say "Goodbye, thank you for listening to the web with scout".)

Alexa open scout
Alexa get titles
Alexa says "Unable to understand play mode"

Modify SearchAndPlayArticle Intent so that when you come in at the top level your search is an AmazonSearchQuery and your results get stemmed and tfidf'd

Right now when you say "Alexa, tell scout to play that article about fake news" your query string (in this case "that article about fake news") does not get stemmed and sent tfidf'd against the titles that the user has.

When the user enters thru GetTitles intent, the titles are there to be stemmed/tfidf'd.

Per suggestion from Dylan, we can keep a flag that shows the state of the titles for the session. If we don't have the titles, we can fetch them from scout-ua and stem/tfidf them and match like we do in the GetTitles tree.

Add intent "next" to play the next article

Add Next intent to play the next article, keeping a 10 seconds pause between articles

This means :

  • We have to enqueue articles (with their metadata) (are we playing summaries or full articles?).
  • We also have to enqueue a silent audio file.
  • Catch the Amazon Next intent

The thing is, if we enqueue intro+article+outro+instructions+silence for each article. Saying "Next" will just jump to the next step (and not the next article). We have to figure that out

Add a Help intent for the skill

User should be able to say "Alexa, ask scout for help" and get some pointers on the skill.

Abe to provide content for this

After "Alexa resume" prompt should be different

Steps:

  1. Alexa, tell scout to get headlines
  2. Listen.
  3. Alexa pause
  4. Alexa resume
    On resume it says: "here is the article ". We should say "continuing with your summary or continuing with your article.

Move education of how to navigate titles to a reprompt

Right now after playing 5 titles Alexa says
To pick an article say play the one about polar bears for example. To hear more titles say next, to repeat the titles you just heard, say repeat"

Change to:
To pick an article say play the one about polar bears for example (Get Abe to reword)

and then reprompt with:
To pick an article say play the one about polar bears for example. To hear more titles say next, to repeat the titles you just heard, say repeat"

Add app cards for Alexa app/Show/Spot

We can improve the experience particularly on Echo Show and Spot by adding cards with the images for the articles.

Show also has a mode where you can present several cards at once and then the user can select an option via touch or voice. This would work very well when presenting the titles. (I'm not sure if this is supported on Spot.)

Anyway, it would be good to experiment with some ideas/functionality here and work with UX to get cards in place.

Alexa - Add a FTU flag to the session so we can customize the first time use experience

  • Flag should be stored in dynamoDB
  • Flag should be incremented each time the user visits the skill
  • We should have a different FTU message to the user the first time which is more expansive, welcoming, and explanatory of the skill
  • On times 2-5 we should have an abbreviated launch message to serve more as a reminder of things they can do.
  • Perhaps on the 10th time, we say "Congrats! you've leveled up" or something to give a sense of achievement.

Automatic archival of article

As a Scout user, I want Scout to automatically archive an article after I have listened to 90% of it. If they have listened to a complete summary we will prompt them if they want to archive it, but not require a response from the user. If they do not respond, it will not be archived

Make it clear playing a summary vs full article

Right now after choosing summary vs. full article we say:

  1. One moment while i get that article ready for you
2. This is the article 3. Here is a summary of ...

Change to:

  1. One moment while i get that ready for you
2. Here is a summary of ...

visual notifications

As a Scout user, I want a visual notification on my Alexa device when I have new content to consume so that I remember to come back to Scout and get through my reading list.

'Next' doesn't properly handle end of title list

If you are at the end of your list of titles and say "next", we don't notify the user that there are no more. The response is:
"Here are the next titles: . You can say play or summarize..."

We should say something along the lines of
"there are no more titles. you can say 'repeat' or 'get titles' to go back to the beginning"

Investigate play by number

Right now we support
"Play the one about"
"Play the article about"
And this maps to a Amazon.SearchQuery parameter.

See if we can support (in addition)
"Play the first article"
"Play article one"
"play one"

This may not work perfectly so we need to see what we can support.

Stuck in loop when playing

User gets stuck in a loop with teh audio playing.
Steps:
User: Alexa, tell scout to play that article about fake news Alexa: Woudl you like to hear the full article or a summary User: ask Scout to summarize that article about fake news
Alexa sends a skim event instead of a summarize. We can't really make a summarize event because it will conflict with the "skim" event.

Solution is to put the skim event there, stop the audio, and then catch the Amazon.SearchQuery event and make that optional and then get the summary.

Investigate large accounts

there might be an issue with large accounts. my test account with 6 articles works fine but my personal with >100 articles is unable to retrieve titles.

Not sure if this is a scout-ua problem or scout-alexa, but my first guess is alexa.

In GetTitles, when user says Alexa Stop, we get an error saving state

19:20:26
2018-06-01T19:20:26.476Z d682f70c-65d0-11e8-9962-5558dde2ac70 Error during DynamoDB put:ValidationException: One or more parameter values were invalid: An AttributeValue may not contain an empty string
2018-06-01T19:20:26.476Z d682f70c-65d0-11e8-9962-5558dde2ac70 Error during DynamoDB put:ValidationException: One or more parameter values were invalid: An AttributeValue may not contain an empty string

Most likely this is the cause:

List PDFs

Right now some PDFs are not able to be listed in the titles. Most likely this is because Pocket is unable to create a reader view of these that we can't get the titles

Remove headlines

Remove from intent
Remove from then server
Remove from the lambda

Allow user to scout for a time period

E.g. Alexa, tell scout to get me ten minutes.

This would synthesize ten minute of the user's personal content.
If no new personal content, then utilize pocket recommendations

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.