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

"There was a problem with the requested skills response" #240

Open
gitAuss1e opened this issue Jul 25, 2018 · 14 comments
Open

"There was a problem with the requested skills response" #240

gitAuss1e opened this issue Jul 25, 2018 · 14 comments

Comments

@gitAuss1e
Copy link

Hey,

Pretty much what the title says. I can say "Alexa, open Gee Music" and it will give me the little welcome message but when I try to do anything else I get "There was a problem with the requested skills response". What do I need to provide to get assistance?

I am using the paid version of Google Play Music

Thanks!

@fergyfresh
Copy link
Collaborator

I was just using the most recent version of this app yesterday. What are you saying that isn't working? Could you run it through the test portal and copy/paste the error json response?

@gitAuss1e
Copy link
Author

Just "null"

@fergyfresh
Copy link
Collaborator

What deployment setup are you using?

@morgenroth
Copy link

morgenroth commented Aug 31, 2018

I have the same issue. Alexa is just replying with "There was a problem with the requested skills response".

The JSON reponse looks fine to me... any idea?

{
	"body": {
		"version": "1.0",
		"response": {
			"outputSpeech": {
				"type": "PlainText",
				"text": "Playing Temperature by Sean Paul"
			},
			"card": {
				"type": "Standard",
				"title": "Playing Temperature by Sean Paul",
				"text": "",
				"image": {
					"smallImageUrl": "https://lh3.googleusercontent.com/eK7A27HJchmHJGxmIoCo3RBtcKENKDDS7IccpPiDRU8MytDmtsUaTVmaaMgRAM3lg83cilKzdA",
					"largeImageUrl": "https://lh3.googleusercontent.com/eK7A27HJchmHJGxmIoCo3RBtcKENKDDS7IccpPiDRU8MytDmtsUaTVmaaMgRAM3lg83cilKzdA"
				}
			},
			"directives": [
				{
					"type": "AudioPlayer.Play",
					"playBehavior": "REPLACE_ALL",
					"audioItem": {
						"stream": {
							"token": "8550ec3a-e64c-45da-bdc9-c9a471d99a0b",
							"url": "https://geemusic.domain.tld/alexa/stream/Tstsfm6fexhw7iuqfqta5by3pje",
							"offsetInMilliseconds": 0
						}
					}
				}
			],
			"shouldEndSession": true
		},
		"sessionAttributes": {}
	}
}

PS: I have replaced the URL domain with "domain.tld".

@morgenroth
Copy link

Solved: It is necessary to enable "Audio Player" within the ASK section "Interfaces".

A trace of the second HTTP call from Alex showed me the necessary hint...

... ,"reason":"ERROR","error":{"type":"INVALID_RESPONSE","message":"The requested skill has not declared that it implements the AudioPlayer interface. Please update the skill's configuration from the Developer Console."}}}

@bitcraze1
Copy link

I have the exact same error: "There was a problem with the requested skills response".
My "Audio Player" is Enabled under "Interfaces" Section.

@fergyfresh
Copy link
Collaborator

Any debug logs you can share? Do you have the APP_URL set correctly?

@kevinschultz
Copy link

@fergyfresh would it be possible to get some guidance on where I would find those debug logs? I am having the same problem as @bitcraze1 where I have audio player enabled. My APP_URL is also set correctly, with no trailing slash. Here are a couple things that seem helpful.

Under the JSON Input section, at the very end, there is this:

"request": { "type": "SessionEndedRequest", "requestId": "amzn1.echo-api.request.6dbf2764-553a-4ed1-95be-3798104d0da8", "timestamp": "2019-05-06T12:18:41Z", "locale": "en-US", "reason": "ERROR", "error": { "type": "INVALID_RESPONSE", "message": "The URL specified in the Play directive is invalid" } }

JSON Output just says null, however, the hub preview at the bottom does seem to display the artist / a track that I requested, and says something like "Playing Chandelier by Sia" along with album art, but nothing is happening from an audio standpoint.

In Heroku, the logs seem to indicate everything is ok:

2019-05-06T12:35:03.866325+00:00 app[web.1]: 10.51.235.157 - - [06/May/2019 12:35:03] "POST /alexa HTTP/1.1" 200 - 2019-05-06T12:35:05.093861+00:00 heroku[router]: at=info method=POST path="/alexa" host=ks-geemusic-skill.herokuapp.com request_id=f75e7ba0-fb11-4c5c-b40f-af239cb23647 fwd="72.21.217.76" dyno=web.1 connect=1ms service=29ms status=200 bytes=153 protocol=https 2019-05-06T12:35:05.092361+00:00 app[web.1]: 10.7.184.104 - - [06/May/2019 12:35:05] "POST /alexa HTTP/1.1" 200 -

@bcerrato
Copy link

This is what I get when I ask for songs by an artist:

2019-05-17T02:37:47.858954+00:00 app[web.1]: 10.63.114.134 - - [17/May/2019 02:37:47] "POST /alexa HTTP/1.1" 500 -
2019-05-17T02:37:47.859365+00:00 app[web.1]: Traceback (most recent call last):
2019-05-17T02:37:47.859372+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1997, in call
2019-05-17T02:37:47.859373+00:00 app[web.1]: return self.wsgi_app(environ, start_response)
2019-05-17T02:37:47.859375+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
2019-05-17T02:37:47.859380+00:00 app[web.1]: response = self.handle_exception(e)
2019-05-17T02:37:47.859382+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
2019-05-17T02:37:47.859383+00:00 app[web.1]: reraise(exc_type, exc_value, tb)
2019-05-17T02:37:47.859384+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
2019-05-17T02:37:47.859386+00:00 app[web.1]: raise value
2019-05-17T02:37:47.859387+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
2019-05-17T02:37:47.859389+00:00 app[web.1]: response = self.full_dispatch_request()
2019-05-17T02:37:47.859390+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
2019-05-17T02:37:47.859391+00:00 app[web.1]: rv = self.handle_user_exception(e)
2019-05-17T02:37:47.859392+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
2019-05-17T02:37:47.859394+00:00 app[web.1]: reraise(exc_type, exc_value, tb)
2019-05-17T02:37:47.859395+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
2019-05-17T02:37:47.859396+00:00 app[web.1]: raise value
2019-05-17T02:37:47.859397+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
2019-05-17T02:37:47.859398+00:00 app[web.1]: rv = self.dispatch_request()
2019-05-17T02:37:47.859399+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
2019-05-17T02:37:47.859401+00:00 app[web.1]: return self.view_functionsrule.endpoint
2019-05-17T02:37:47.859402+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/flask_ask/core.py", line 767, in _flask_view_func
2019-05-17T02:37:47.859403+00:00 app[web.1]: result = self._map_intent_to_view_func(self.request.intent)()
2019-05-17T02:37:47.859404+00:00 app[web.1]: File "/app/geemusic/intents/selection.py", line 35, in play_artist
2019-05-17T02:37:47.859406+00:00 app[web.1]: first_song_id = queue.reset(artist['topTracks'])
2019-05-17T02:37:47.859407+00:00 app[web.1]: KeyError: 'topTracks'

@fergyfresh
Copy link
Collaborator

fergyfresh commented May 20, 2019

@bcerrato What artist? Maybe it couldn't find that artist, either that or they changed the key 'topTracks' in the payload.

@fergyfresh
Copy link
Collaborator

@kevinschultz what did you deploy it with? By logs I mean server logs. It logs to whatever the server logs to. Let me know your deployment method and I can help you figure out how to read the logs.

@kevinschultz
Copy link

@fergyfresh I deployed it via Heroku. Reading a bit, it seems like I need to install this (https://devcenter.heroku.com/articles/heroku-cli) and then follow some instructions here: https://devcenter.heroku.com/articles/logging#log-retrieval

Is that about right? If you can point me toward how I might structure the log command, that would help.

Thanks for the guidance!

@fergyfresh
Copy link
Collaborator

@kevinschultz it would be heroku logs i believe

So you could do something like heroku logs -n 100 to only show 100 lines and then copy/paste it here. But in the 100 lines try to make sure that you have an example of it failing. So maybe analyze the first and last time stamp of the log and see how far back 100 records goes and then try to say something to your alexa, let it fail, and then try to get an example of what you just said in the logs.

Make sense?

@kevinschultz
Copy link

Yup, got it! Here's what I get:

Kevins-Air:~ kschultz1$ heroku logs -a ks-geemusic-skill 2019-07-09T00:36:54.213807+00:00 heroku[web.1]: Unidling 2019-07-09T00:36:54.217075+00:00 heroku[web.1]: State changed from down to starting 2019-07-09T00:37:02.517642+00:00 heroku[web.1]: Starting process with command python3 server.py 2019-07-09T00:37:07.809744+00:00 heroku[web.1]: State changed from starting to up 2019-07-09T00:37:07.633943+00:00 app[web.1]: * Running on http://0.0.0.0:28980/ (Press CTRL+C to quit) 2019-07-09T00:37:07.635189+00:00 app[web.1]: * Restarting with stat 2019-07-09T00:37:07.778172+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:37:07.778177+00:00 app[web.1]: DEBUG in music [/app/geemusic/utils/music.py:39]: 2019-07-09T00:37:07.778180+00:00 app[web.1]: Fetching library complete. 2019-07-09T00:37:07.778189+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:37:10.281020+00:00 heroku[router]: at=info method=POST path="/alexa" host=ks-geemusic-skill.herokuapp.com request_id=7b12178b-1eb5-4d45-a7e4-a0afd266d551 fwd="72.21.217.64" dyno=web.1 connect=1ms service=1347ms status=200 bytes=153 protocol=https 2019-07-09T00:37:10.220868+00:00 app[web.1]: * Debugger is active! 2019-07-09T00:37:10.224246+00:00 app[web.1]: * Debugger PIN: 191-183-472 2019-07-09T00:37:10.251887+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:37:10.251896+00:00 app[web.1]: DEBUG in music [/app/geemusic/utils/music.py:39]: 2019-07-09T00:37:10.251899+00:00 app[web.1]: Fetching library complete. 2019-07-09T00:37:10.252293+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:37:10.279740+00:00 app[web.1]: 10.45.210.143 - - [09/Jul/2019 00:37:10] "POST /alexa HTTP/1.1" 200 - 2019-07-09T00:37:10.358448+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:37:10.358453+00:00 app[web.1]: DEBUG in selection [/app/geemusic/intents/selection.py:116]: 2019-07-09T00:37:10.358456+00:00 app[web.1]: Fetching song Sia by None 2019-07-09T00:37:10.358464+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:37:10.975350+00:00 heroku[router]: at=info method=POST path="/alexa" host=ks-geemusic-skill.herokuapp.com request_id=6edd52f2-a828-4f08-bfd8-c7a6f32296f8 fwd="72.21.217.76" dyno=web.1 connect=1ms service=641ms status=200 bytes=910 protocol=https 2019-07-09T00:37:10.973966+00:00 app[web.1]: 10.51.243.20 - - [09/Jul/2019 00:37:10] "POST /alexa HTTP/1.1" 200 - 2019-07-09T00:39:30.789745+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:39:30.789762+00:00 app[web.1]: DEBUG in selection [/app/geemusic/intents/selection.py:116]: 2019-07-09T00:39:30.789765+00:00 app[web.1]: Fetching song Katy perry by None 2019-07-09T00:39:30.789773+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:39:31.245847+00:00 heroku[router]: at=info method=POST path="/alexa" host=ks-geemusic-skill.herokuapp.com request_id=6bb358ff-d3fc-4420-9a0a-b27710f090a5 fwd="72.21.217.64" dyno=web.1 connect=0ms service=495ms status=200 bytes=946 protocol=https 2019-07-09T00:39:31.244574+00:00 app[web.1]: 10.5.219.194 - - [09/Jul/2019 00:39:31] "POST /alexa HTTP/1.1" 200 - 2019-07-09T00:39:32.068701+00:00 heroku[router]: at=info method=POST path="/alexa" host=ks-geemusic-skill.herokuapp.com request_id=0f822f63-7835-4244-be5d-c71130430745 fwd="72.21.217.97" dyno=web.1 connect=1ms service=34ms status=200 bytes=153 protocol=https 2019-07-09T00:39:32.067260+00:00 app[web.1]: 10.138.92.231 - - [09/Jul/2019 00:39:32] "POST /alexa HTTP/1.1" 200 - 2019-07-09T00:55:43.179512+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:55:43.179533+00:00 app[web.1]: DEBUG in selection [/app/geemusic/intents/selection.py:116]: 2019-07-09T00:55:43.179535+00:00 app[web.1]: Fetching song Taylor swift by None 2019-07-09T00:55:43.179547+00:00 app[web.1]: -------------------------------------------------------------------------------- 2019-07-09T00:55:43.705366+00:00 app[web.1]: 10.7.129.185 - - [09/Jul/2019 00:55:43] "POST /alexa HTTP/1.1" 200 - 2019-07-09T00:55:43.703818+00:00 heroku[router]: at=info method=POST path="/alexa" host=ks-geemusic-skill.herokuapp.com request_id=edf49d07-cbba-4961-b70d-f470ffde3478 fwd="72.21.217.106" dyno=web.1 connect=0ms service=555ms status=200 bytes=1028 protocol=https 2019-07-09T00:55:44.479926+00:00 app[web.1]: 10.63.174.177 - - [09/Jul/2019 00:55:44] "POST /alexa HTTP/1.1" 200 - 2019-07-09T00:55:44.480933+00:00 heroku[router]: at=info method=POST path="/alexa" host=ks-geemusic-skill.herokuapp.com request_id=1beb76a6-0a07-42fe-807a-151e6ffe94e3 fwd="72.21.217.143" dyno=web.1 connect=1ms service=27ms status=200 bytes=153 protocol=https

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

6 participants