Git Product home page Git Product logo

alexa-libby's People

Contributors

alexc-msft avatar hackworth avatar jmseaton avatar josephschmitt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

alexa-libby's Issues

Getting request identifier errors since updating default.json

I'm getting the following response when I invoke the skill: Request Identifier: amzn1.echo-api.request.572a6d44-e55f-46a5-a08b-b955591aac77

Here's the default.json changes I made (quality profile and tmdb apikey updates):

{
"alexa-libby": {
"server": {
"hostname": "http://server.com"
},
"movies": {
"provider": "radarr",
"server": {
"apiKey": "dkekdkejdkejdke123345",
"port": 7878
},
"quality": "All"
},
"shows": {
"provider": "sonarr",
"server": {
"apiKey": "dkekdkejdkejdke123345",
"port": 8989
},
"quality": "All"
},
"artwork": {
"tmdbApiKey": "dkekdkejdkejdke123345"
}
}
}

The most peculiar part is the very first request I made downloaded a show off of sonarr but then I started getting this error again over and over.

Testing the skill in the Alexa Skills Kit returns a "the remote endpoint could not be reached" but I can access my ports for Sonarr and Radarr via Chrome, so I'm not sure what the issue is. Any thoughts?

slot type Amazon.Movie doesnt work for en_GB

hi,
im wanting to set this up but i get the following error, which is why i think the beta builder didnt work

Error: There was a problem with your request: the slot type "AMAZON.Movie"are not currently available for en_GB

is there anyway around this?

Cannot add anything to lists - "There was a problem with the requested skill's response"

Seems all API calls are working just fine. I just cant add movies to Radarr or shows to Sonarr. Alexa speaks an error to me, "There was a problem with the requested skill's response." Let me walk you though my voice instructions I'm giving to Alexa-Libby:

Me: "Alexa, ask clusterbox to add the movie Meet the Parents to the list"?

Skill Builder's Service Request if I use the AWS service simulator

  "session": {
    "new": true,
    "sessionId": "SessionId.e1461ba7-5bfxxxxxx0290260d1",
    "application": {
      "applicationId": "amzn1.ask.skill.80adexxxxe77095cc9c"
    },
    "attributes": {},
    "user": {
      "userId": "amzn1.ask.account.AH25FKBTxxxxxxxLSRS4LV32WIKOXXKEDDEG3BZUSVF2U5KVHFBV63SI"
    }
  },
  "request": {
    "type": "IntentRequest",
    "requestId": "EdwRequestId.abc661xxxx-490fb7988689",
    "intent": {
      "name": "AddMovie",
      "slots": {
        "releaseDate": {
          "name": "releaseDate"
        },
        "movieName": {
          "name": "movieName",
          "value": "meet the parents"
        }
      }
    },
    "locale": "en-US",
    "timestamp": "2017-11-20T01:33:28Z"
  },
  "context": {
    "AudioPlayer": {
      "playerActivity": "IDLE"
    },
    "System": {
      "application": {
        "applicationId": "amzn1.ask.skill.80ade47f-21xxxxx-cfe77095cc9c"
      },
      "user": {
        "userId": "amzn1.ask.account.AH25FKBTCCLY46FBNxxxxxxxB4LSRS4LV32WIKOXXKEDDEG3BZUSVF2U5KVHFBV63SI"
      },
      "device": {
        "supportedInterfaces": {}
      }
    }
  },
  "version": "1.0"
}

Radarr logs checking to see if "Meet the Parents" is already in Radarr:

17-11-19 22:26:39.5|Debug|Parser|Parsing string 'meet the parents'
17-11-19 22:26:39.5|Debug|Parser|Unable to parse meet the parents
17-11-19 22:26:39.6|Debug|Api|[GET] /api/movies/lookup?term=meet%20the%20parents: 200.OK (70 ms)

Alexa-Libby Response: "Add Meet the Parents (2000) to your list?"

Skill Builder's Service Response if I use the AWS service simulator

{
  "version": "1.0",
  "response": {
    "outputSpeech": {
      "ssml": "<speak>Add Meet the Parents (2000) to your list?</speak>",
      "type": "SSML"
    },
    "speechletResponse": {
      "outputSpeech": {
        "ssml": "<speak>Add Meet the Parents (2000) to your list?</speak>"
      },
      "directives": [],
      "shouldEndSession": false
    }
  },
  "sessionAttributes": {
    "promptData": {
      "searchResults": [
        {
          "title": "Meet the Parents",
          "slug": "meet-the-parents-1597",
          "year": 2000,
          "tmdbId": 1597,
          "images": [
            {
              "coverType": "poster",
              "url": "http://image.tmdb.org/t/p/original/wVjtQtzv9IcNRGnOOdcK797Sdxx.jpg"
            }
          ],
          "status": "released",
          "quality": "Clusterbox Quality"
        },
        {
          "title": "Meet the Parents",
          "slug": "meet-the-parents-236405",
          "year": 1992,
          "tmdbId": 236405,
          "images": [
            {
              "coverType": "poster",
              "url": "http://image.tmdb.org/t/p/original/7v6HbhAlHFBe7e4ZCG9YhqfR0Wa.jpg"
            }
          ],
          "status": "released",
          "quality": "Clusterbox Quality"
        },
        {
          "title": "Meet the Fockers",
          "slug": "meet-the-fockers-693",
          "year": 2004,
          "tmdbId": 693,
          "images": [
            {
              "coverType": "poster",
              "url": "http://image.tmdb.org/t/p/original/xHAqB06iL5D6HyOS6QpgyKkRQHD.jpg"
            }
          ],
          "status": "released",
          "quality": "Clusterbox Quality"
        },
        {
          "title": "Little Fockers",
          "slug": "little-fockers-39451",
          "year": 2010,
          "tmdbId": 39451,
          "images": [
            {
              "coverType": "poster",
              "url": "http://image.tmdb.org/t/p/original/qixmjH8fLD9IkboPO7FKxAqzwRJ.jpg"
            }
          ],
          "status": "released",
          "quality": "Clusterbox Quality"
        }
      ],
      "providerType": "movies",
      "yesAction": "addMedia",
      "yesResponse": "Added Meet the Parents (2000) to your wanted list.",
      "noAction": "suggestNext",
      "noResponse": "Ok, did you mean Meet the Parents (1992)?"
    }
  }
}

Me: "Yes."

Skill Builder's Service Request if I use the AWS service simulator

{
  "session": {
    "new": false,
    "sessionId": "SessionId.e1461baxxxxx-8220290260d1",
    "application": {
      "applicationId": "amzn1.ask.skill.80ade47f-2xxxxx-cfe77095cc9c"
    },
    "attributes": {
      "promptData": {
        "searchResults": [
          {
            "title": "Meet the Parents",
            "slug": "meet-the-parents-1597",
            "year": 2000,
            "tmdbId": 1597,
            "images": [
              {
                "coverType": "poster",
                "url": "http://image.tmdb.org/t/p/original/wVjtQtzv9IcNRGnOOdcK797Sdxx.jpg"
              }
            ],
            "status": "released",
            "quality": "Clusterbox Quality"
          },
          {
            "title": "Meet the Parents",
            "slug": "meet-the-parents-236405",
            "year": 1992,
            "tmdbId": 236405,
            "images": [
              {
                "coverType": "poster",
                "url": "http://image.tmdb.org/t/p/original/7v6HbhAlHFBe7e4ZCG9YhqfR0Wa.jpg"
              }
            ],
            "status": "released",
            "quality": "Clusterbox Quality"
          },
          {
            "title": "Meet the Fockers",
            "slug": "meet-the-fockers-693",
            "year": 2004,
            "tmdbId": 693,
            "images": [
              {
                "coverType": "poster",
                "url": "http://image.tmdb.org/t/p/original/xHAqB06iL5D6HyOS6QpgyKkRQHD.jpg"
              }
            ],
            "status": "released",
            "quality": "Clusterbox Quality"
          },
          {
            "title": "Little Fockers",
            "slug": "little-fockers-39451",
            "year": 2010,
            "tmdbId": 39451,
            "images": [
              {
                "coverType": "poster",
                "url": "http://image.tmdb.org/t/p/original/qixmjH8fLD9IkboPO7FKxAqzwRJ.jpg"
              }
            ],
            "status": "released",
            "quality": "Clusterbox Quality"
          }
        ],
        "providerType": "movies",
        "yesAction": "addMedia",
        "yesResponse": "Added Meet the Parents (2000) to your wanted list.",
        "noAction": "suggestNext",
        "noResponse": "Ok, did you mean Meet the Parents (1992)?"
      }
    },
    "user": {
      "userId": "amzn1.ask.account.AH25FKBTCCLY46FBNHMxxxxxxxx4LSRS4LV32WIKOXXKEDDEG3BZUSVF2U5KVHFBV63SI"
    }
  },
  "request": {
    "type": "IntentRequest",
    "requestId": "EdwRequestId.9ebbxxxxx631de93b5eac",
    "intent": {
      "name": "AMAZON.YesIntent",
      "slots": {}
    },
    "locale": "en-US",
    "timestamp": "2017-11-20T01:34:36Z"
  },
  "context": {
    "AudioPlayer": {
      "playerActivity": "IDLE"
    },
    "System": {
      "application": {
        "applicationId": "amzn1.ask.skill.80ade47f-xxxxxxx-cfe77095cc9c"
      },
      "user": {
        "userId": "amzn1.ask.account.AH25FKBTCCLY46FBNHM5xxxxxxxSRS4LV32WIKOXXKEDDEG3BZUSVF2U5KVHFBV63SI"
      },
      "device": {
        "supportedInterfaces": {}
      }
    }
  },
  "version": "1.0"
}

Alexa-Libby Error Response: "There was a problem with the requested skill's response"

Skill Builder's Service Response ERROR if I use the AWS service simulator

The remote endpoint could not be called, or the response it returned was invalid.

Here are Radarr logs when the error occurs:

17-11-19 22:26:49.0|Debug|RootFolderService|Generating list of unmapped folders
17-11-19 22:26:49.1|Debug|RootFolderService|0 unmapped folders detected.
17-11-19 22:26:49.1|Debug|Api|[GET] /api/rootfolder: 200.OK (126 ms)

Here are AWS CloudWatch logs when the error occurs. Why do I always see a Sonarr error even when I'm asking to add MOVIES to the list???

image

FYI, Here is my config file. Notice I'm using subdomains to hit my Sonarr and Radarr API endpoints. Maybe this is causing the issue because I didn't see your sample config mentioning subdomains?

{
  "alexa-libby": {
    "server": {},
    "movies": {
      "provider": "radarr",
      "server": {
        "apiKey": "3f30573xxxxxxxxxxxxxx7794",
        "hostname": "https://radarr.mydomain.net",
        "urlBase": "movie",
        "port": 80
      },
      "quality": "Clusterbox Quality"
    },
    "shows": {
      "provider": "sonarr",
      "server": {
        "apiKey": "6850715exxxxxxxxxxx19d3aac",
        "hostname": "https://sonarr.mydomain.net",
        "urlBase": "tv",
        "port": 80
      },
      "quality": "ClusterBox Quality"
    }
  },
  "artwork": {
    "tmdbApiKey": "adb078xxxxxxxxxxxxxxbe4d6c85"
  }
}

Sonarr & Radarr version

Radar Version: 0.2.0.870
Sonarr Version: 2.0.0.5054

Search for media after added.

Great project! Got this up and running and I love it. Would it be possible to also initiate a search for the media after adding it? I took a look at the Sonarr and Radarr API docs and it looks like it's possible.

Wiki Instructions

Hi! I configured your older version for couch potato with ease (if I remember correctly) but I am not having any luck this time around. I believe it may be because Amazon changed their web layout and your instructions don't match the new layout. An update to the wiki for newbies like myself would be appreciated. Thanks!

Service Simulator works - Echo Dot doesn't

Hi,

Firstly, thanks for working on this fabulous Skill for Alexa.

Secondly, I'm a complete noob when it comes to Alexa Skills having not gone through the process before.

My problem is, I can't get it to work on my Echo Dot.

I'm based in the UK and hosted the Lambda function in the US and set the language of my skill to US too (for the Amazon slot types to work), so not sure if this is causing the issue.

When I test with Service Simulator in my browser with the text string "if the series Jessica Jones is on the list" it seems to work. But when I go and test it on my Echo Dot, I just get the "failure" noise. Looking at under the History in the Alexa App, shows that is recognised what I said almost perfectly...

"ask my video library the series jessica james's on the list"

It only missed the "if" out of the middle. Also, I set the invocation phrase to "my video library" because it kept hearing "libby" as "livy" and enabling the random skill.

At a bit of a loss as to how to debug this any further and wondering if you could help please?

FYI - I couldn't get this working with SSL, I believe it is due to my using self-signed certificates and Node.JS not liking them. For the moment, I thought I'd get it working without and worry about re-enabling SSL afterwards.

Lambda wiki instructions out of date

Love the idea of this, but the instructions to set up lambda do not match the current AWS. Can you please update so we can figure out how to get this running? thanks!

Error: There was a failure invoking your skill with text input, please try again.

I am using your walkthrough, which is very well documented may I add, yet i'm getting the 'failure invoking your skill with text input' error.

steps I followed:

  1. clone your repo to my local computer (node 6.5.0 installed)
  2. change the config file to point to my pvr
  3. run npm start and recieve a successful response from my pvr
  4. run npm run package and upload the zip to lambda.
  5. follow the set up steps you provided on the amazon developer portal.
  6. attempt to test with text and I get the error response.

it's worth noting that if I type "start libby" as the invocation word, I get a successful response with the help text from libby.

is there anything else you need from me?

Specify Radarr Quality Profile in Config

The qualityProfileId is always 1 (Any) and currently you have to hard code it to different ID in radarr.js line 74, it would be nice to specify the human readable profile in the config.

Utterances are too broad

If I ask: is the show silicon valley on the list
The response is "Couldn't find the show silicon valley queued for download. No show found for the show silicon valley"

It's being caught by : "is the {movieName} on the list",

If i ask "is show silicon valley on the list", it works and find the show.

Remote endpoint could not be reached

Hi Joseph,

I'm hitting an issue when I test my skill that the lambda response is "Remote endpoint could not be called, or the response it returned was invalid.

This was my utterance "Alexa, ask libby if the movie The Dark Knight is on the list" which yielded the lambda request:

{
"session": {
"sessionId": "SessionId.b33d6c7d-e5a5-4ceb-b86b-8f5c8ef02784",
"application": {
"applicationId": "amzn1.ask.skill.c7eb1e7e-9483-4c50-b4e0-386084becab1"
},
"attributes": {},
"user": {
"userId": "amzn1.ask.account.AEVVZKWG4RPCQ47NKA7C34GR5H2RV2DGBHXHPMYXZDBCVVKKEADUTQEFWA7B7GY7ZMDXV3RV2PRF4UMEQ2JOXEJTFI37ONFL6OKDRAO3VF7F7U2PPTKAG3JNV4YSZZS5MMJZRBB6BHKBN6ZPML3EKFCYQ3VWX27KJ5B5D5E5BZRX2ZQLJRU2TRTMZ6KPPCKV4SOPMQRNJFPGMWQ"
},
"new": true
},
"request": {
"type": "IntentRequest",
"requestId": "EdwRequestId.023f81ce-0ab3-4d46-86fa-c6d089bf45cb",
"locale": "en-US",
"timestamp": "2017-06-28T20:27:40Z",
"intent": {
"name": "FindMovie",
"slots": {
"releaseDate": {
"name": "releaseDate"
},
"movieName": {
"name": "movieName",
"value": "the dark knight"
}
}
}
},
"version": "1.0"
}

Meanwhile, I tried a few different default.json configs - my setup is the same ddns hostname and the standard Sonarr and Radarr ports (8989 and 7878 respectively). I created a new lambda function from the console and uploaded the .zip with the updated default.json. Any insights into what the issue might be?

{
"alexa-libby": {
"server": {
"hostname": "http://my-pvr-server.com"
},
"movies": {
"provider": "radarr",
"server": {
"apiKey": "abcdefghijklmnopqrstuvwxyz123456",
"port": 7878
}
},
"shows": {
"provider": "sonarr",
"server": {
"apiKey": "abcdefghijklmnopqrstuvwxyz123456",
"port": 8989
}
}
}
}

{
"alexa-libby": {
"server": {
"hostname": "http://my-pvr-server.com"
},
"movies": {
"provider": "radarr",
"server": {
"apiKey": "abcdefghijklmnopqrstuvwxyz123456",
"port": 7878
}
},
"shows": {
"provider": "sonarr",
"server": {
"apiKey": "abcdefghijklmnopqrstuvwxyz123456",
"port": 8989
}
}
}
}

Is this project dead?

There seem to be a lot of people hanging....waiting....

I went searching for an Alexa skill for Couch Potato, and found this. But like several of the others mentioned, the docs are outdated.

Radarr API updated, no longer works

Connections to Radarr return:
From the Radarr Log
18-3-8 19:00:13.1|Debug|Api|[GET] /api/movies/lookup?term=Zulu: 404.NotFound (0 ms)

From the Alexa Skill Log
{
"body": {
"version": "1.0",
"response": {
"outputSpeech": {
"type": "SSML",
"ssml": "An error occured: Error: NotFound"
},
"directives": [],
"shouldEndSession": true
},
"sessionAttributes": {}
}
}

From what I have gathered is that the Radarr project has been updated and been distanced from Sonarr somewhat. So the API call to 'movies/lookup' or rather just the api command 'movies' no longer exists. The command is now just 'movie' (no s), and as far as I can tell, 'lookup' is also gone.

Cannot get this to work

I've attempted to set this up, and I know the instructions are outdated, however I think I got it all squared away - except it isn't working.

When I test the skill, I get the error 'An exception occurred while dispatching the request to the skill'. I believe the issue is with the Lambda function itself, and I noticed the following in the logs:

Unable to import module 'index': Error
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)

Any thoughts?

Unable to ask if anything is on the Radarr list

I used the radarr.js file provided in the following link to fix the Radarr issues:

#25

Downloading works as it should, really well! However, when asking if a movie is on the list I get an error:

"There was a problem with the requested skill's response"

I cannot figure out why this is happening, any ideas?

An error occurred: error

I might say these are my favorite types of errors! Whenever I request something, I get the response below.

My config has both SSL enabled on sonarr and radarr, different hostnames.

#####Error response#####

{
"version": "1.0",
"response": {
"outputSpeech": {
"type": "SSML",
"ssml": "An error occured: Error"
},
"speechletResponse": {
"outputSpeech": {
"ssml": "An error occured: Error"
},
"directives": [],
"shouldEndSession": true
}
},
"sessionAttributes": {}
}

#####default.json#######

{
"alexa-libby": {
"server": {},
"movies": {
"provider": "radarr",
"server": {
"apiKey": "API string",
"hostname": "https://movies.domain.xyz",
"port": 443
}
"quality": "HD-720p"
},
"shows": {
"provider": "sonarr",
"server": {
"apiKey": "API string",
"hostname": "https://tv.domain.xyz",
"port": 443
}
"quality": "HDTV-720p"
}
}
}

no response from remote endpoint

followed instructions, ran into a wall when trying to add region kept giving me an error about 45 characters, solved it by not selecting region however now I'm stuck at the testing phase, I'm not getting any response and I know I set my couchpotato api and host info all correctly. would anyone mind going over what ive done so far and help me complete it we can remote desktop with teamviewer, ill paypal a cool 20

JSON expected error

Hey,

I'm trying to set this up for the first time, and when testing the function either through the alexa developer console or directly in the lambda console using the test phrase in the wiki docs ("is The Dark Knight on the list") I receive the below response:

{
  "version": "1.0",
  "response": {
    "outputSpeech": {
      "type": "SSML",
      "ssml": "<speak>An error occured: {\"error\":\"JSON expected\"}</speak>"
    },
    "speechletResponse": {
      "outputSpeech": {
        "ssml": "<speak>An error occured: {\"error\":\"JSON expected\"}</speak>"
      },
      "directives": [],
      "shouldEndSession": true
    }
  },
  "sessionAttributes": {}
}

The local.json file is the only change I made (other than a small script to generate it using stored secrets for api keys that sits in the root). The local.json file without keys can be seen here: https://github.com/justin8/alexa-libby/blob/master/local_template.json

jq reports the local.json file as valid json as well.

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.