jdureau / snips-skill-meteo Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Bonjour,
J'utilise votre librairie pour avoir la météo sur Snips, mais je n'ai pas de retour audio.
Dans le syslog, j'ai détecté qu'il y avait une erreur à cause de TimeIntervalValue qui n'est pas défini.
Comment puis-je corriger l'erreur ?
Merci
Marc
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [heure][out] ()
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [heure][out] Joseph:searchWeatherForecast
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [heure][out] ()
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [app_freebox_telecommande][out] [Recept] intent Joseph:searchWeatherForecast
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] Traceback (most recent call last):
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "_ctypes/callbacks.c", line 315, in 'calling callback function'
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "/var/lib/snips/skills/snips-skill-meteo/venv/local/lib/python2.7/site-packages/hermes_python/ffi/wrappers.py", line 61, in convert_arguments_when_invoking_function
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] return func(hermes_client, *parsed_args)
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 205, in intent_received
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 80, in get_weather_forecast
Oct 15 14:03:01 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] KeyError: u'secret'
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] Traceback (most recent call last):
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "_ctypes/callbacks.c", line 315, in 'calling callback function'
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "/var/lib/snips/skills/snips-skill-meteo/venv/local/lib/python2.7/site-packages/hermes_python/ffi/wrappers.py", line 61, in convert_arguments_when_invoking_function
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] return func(hermes_client, *parsed_args)
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 201, in intent_received
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] weather_forecast = get_weather_forecast(conf, slots)
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 96, in get_weather_forecast
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] return parse_open_weather_map_forecast_response(r_forecast.json(), location, time, conf)
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 112, in parse_open_weather_map_forecast_response
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] if isinstance(time, TimeIntervalValue):
Oct 15 14:03:02 snips-master snips-skill-server[18195]: INFO:snips_skill_server_lib::runner : [meteo][err] NameError: global name 'TimeIntervalValue' is not defined
Bonjour quand je demande la météo pour paris rien ne ce passe avec votre App
Le log du service skill
$ sam service log snips-skill-server
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [heure][out] ()
^[[CSep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [heure][out] Joseph:searchWeatherForecast
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [heure][out] ()
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] Traceback (most recent call last):
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] File "_ctypes/callbacks.c", line 315, in 'calling callback function'
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] File "/var/lib/snips/skills/snips-skill-meteo/venv/local/lib/python2.7/site-packages/hermes_python/hermes.py", line 54, in called_with_good_params
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] return func(self, *parsed_args)
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 198, in intent_received
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] weather_forecast = get_weather_forecast(conf, slots)
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 93, in get_weather_forecast
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] return parse_open_weather_map_forecast_response(r_forecast.json(), location, time, conf)
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] File "./action-meteo.py", line 160, in parse_open_weather_map_forecast_response
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] distances = map(lambda forecast: abs(pytz.utc.localize(fromtimestamp(forecast["dt"]))-date), response["list"])
Sep 12 18:46:52 raspberry snips-skill-server[3189]: INFO:snips_skill_server_lib::runner : [meteo][err] KeyError: 'list'
En faite response a cette tête la:
{
"message": "Invalid API key. Please see http://openweathermap.org/faq#error401 for more info.",
"cod": 401
}
Si il était possible de faire un retour sur ce genre d'erreur (exemple: "Votre clé API n'est pas valide") étant novice sur snips je ne sais pas encore comment changer le code pour ca
PS: j'ai installer l'assistant via sam et il ne m'a pas demander ma clé API donc L’URL n'est pas valide: http://api.openweathermap.org/data/2.5/forecast?q=Paris&APPID=&units=metric
et merci pour tes APP
le skill va chercher le config.ini dans le clone de repo git mais la clé que tu a mis par défaut est stocker ailleur
/usr/share/snips/assistant/snippets/Joseph.Météo_-_réponses_synthétiques/config.ini
et c'est WEATHER_API_KEY dans ce fichier la (dans le fichier python c'est en minuscule)
je ne sais pas si c'est volontaire ou pas, la clé par défaut fonctionne en tout cas
merci pour tes APP
Bonjour,
J'ai installé via Sam votre skill pour snips, tout c'est bien passé, la demande de clef api et de ville à été fait le fichier de config contient bien les bonne valeur.
Par contre que je fais une demande de météo snips comprend bien ma question, semble lancer votre script mais aucun retour,
Et dans le syslog voila ce que je peux constater
`Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] Traceback (most recent call last):
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] File "_ctypes/callbacks.c", line 315, in 'calling callback function'
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] File "/var/lib/snips/skills/snips-skill-meteo/venv/local/lib/python2.7/site-packages/hermes_python/hermes.py", line 55, in called_with_good_params
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] return func(self, *parsed_args)
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] File "./action-meteo.py", line 231, in intent_received
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] hermes.publish_end_session(intent_message.session_id, sentence)
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] File "/var/lib/snips/skills/snips-skill-meteo/venv/local/lib/python2.7/site-packages/hermes_python/hermes.py", line 170, in publish_end_session
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] cEndSessionMessage = CEndSessionMessage.build(session_id, text)
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] File "/var/lib/snips/skills/snips-skill-meteo/venv/local/lib/python2.7/site-packages/hermes_python/ffi/ontology.py", line 64, in build
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] return cls(session_id.encode('utf-8'), text.encode('utf-8'))
Oct 8 06:41:29 raspberrypi snips-skill-server[16118]: INFO:snips_skill_server_lib::runner: [meteo][err] UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 11: ordinal not in range(128)
`
Je ne sais pas si ça peut avoir une réel incidence ?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.