• 1
  • 164
  • 165
  • 166(current)
  • 167
  • 168
  • 176
Release Kanzi: Amazon Alexa skill for Kodi
Could someone please give a bit more detail about self hosting

the lexigram instructions just sort of stop at that point

presumably I need to copy some code to my webserver but it doesn't say what exactly

I have a copy of apache2 running locally and i have mod_wsgi installed and working

Everything seems to working and the skill has been deployed 

my echo dot says "Unable to resolve hostname for endpoint Resource [https://192.168.0.xxx], Type [HTTP], Region [DEFAULT]"

I presume I'm going to have to set up a nameserver rather than use an IP address 

but i haven't installed anything locally onto webserver, so I'm a bit puzzled what needs to go where

any hints gratefully received
Reply
Your echo will be going out of your network to Amazon skills server. Then needs to come back into your network to your hosted server. So you will need external IP/name setup. You will need routing in your router to point to the right 192 internal IP. Most routers nowadays have ddns configurations that you can add a hostname with a 3rd party. Noip.com etc. Then you can create a free hostname on the 3rd party. Point it to your current external IP. If your external IP changes, the config in router will update 3rd party so route doesn't break. Then you can configure your skill with hostname instead of ip.
(2018-12-18, 18:42)tkgafs Wrote: Could someone please give a bit more detail about self hosting

the lexigram instructions just sort of stop at that point

presumably I need to copy some code to my webserver but it doesn't say what exactly

I have a copy of apache2 running locally and i have mod_wsgi installed and working

Everything seems to working and the skill has been deployed 

my echo dot says "Unable to resolve hostname for endpoint Resource [https://192.168.0.xxx], Type [HTTP], Region [DEFAULT]"

I presume I'm going to have to set up a nameserver rather than use an IP address 

but i haven't installed anything locally onto webserver, so I'm a bit puzzled what needs to go where

any hints gratefully received
Reply
(2018-12-18, 19:09)drizzt09 Wrote: Your echo will be going out of your network to Amazon skills server. Then needs to come back into your network to your hosted server. So you will need external IP/name setup. You will need routing in your router to point to the right 192 internal IP. Most routers nowadays have ddns configurations that you can add a hostname with a 3rd party. Noip.com etc. Then you can create a free hostname on the 3rd party. Point it to your current external IP. If your external IP changes, the config in router will update 3rd party so route doesn't break. Then you can configure your skill with hostname instead of ip.
(2018-12-18, 18:42)tkgafs Wrote: Could someone please give a bit more detail about self hosting

the lexigram instructions just sort of stop at that point

presumably I need to copy some code to my webserver but it doesn't say what exactly

I have a copy of apache2 running locally and i have mod_wsgi installed and working

Everything seems to working and the skill has been deployed 

my echo dot says "Unable to resolve hostname for endpoint Resource [https://192.168.0.xxx], Type [HTTP], Region [DEFAULT]"

I presume I'm going to have to set up a nameserver rather than use an IP address 

but i haven't installed anything locally onto webserver, so I'm a bit puzzled what needs to go where

any hints gratefully received
Thanks for info regarding ddns, but I'm still unclear what needs installed on my local webserver
Reply
(2018-12-18, 19:33)tkgafs Wrote:
(2018-12-18, 19:09)drizzt09 Wrote: Your echo will be going out of your network to Amazon skills server. Then needs to come back into your network to your hosted server. So you will need external IP/name setup. You will need routing in your router to point to the right 192 internal IP. Most routers nowadays have ddns configurations that you can add a hostname with a 3rd party. Noip.com etc. Then you can create a free hostname on the 3rd party. Point it to your current external IP. If your external IP changes, the config in router will update 3rd party so route doesn't break. Then you can configure your skill with hostname instead of ip.
(2018-12-18, 18:42)tkgafs Wrote: Could someone please give a bit more detail about self hosting

the lexigram instructions just sort of stop at that point

presumably I need to copy some code to my webserver but it doesn't say what exactly

I have a copy of apache2 running locally and i have mod_wsgi installed and working

Everything seems to working and the skill has been deployed 

my echo dot says "Unable to resolve hostname for endpoint Resource [https://192.168.0.xxx], Type [HTTP], Region [DEFAULT]"

I presume I'm going to have to set up a nameserver rather than use an IP address 

but i haven't installed anything locally onto webserver, so I'm a bit puzzled what needs to go where

any hints gratefully received
Thanks for info regarding ddns, but I'm still unclear what needs installed on my local webserver
Sorry. That much I don't know. I have not setup local server version. And I'm still running the old version. Haven't revisited this setup in about a year. Lots has changed. I just saw your question and knew how to answer networking because I use it for other things (Minecraft lan play outside of lan)
Reply
Hi, I have just started giving a look at this awesome custom Alexa skill. I would be interested in porting/translating it in Italian (IT) language; any suggestion on where I should start looking, and which file(s) I need to localize? From a quick glance in GitHub, I am seeing the following ones which would need to be created:
  • sample_slotvals.it.txt
  • templates.it.yaml
  • utterances.it.txt
  • SampleUtterances.it.txt
Anything else I am missing?
Thanks in advance.
Reply
Have you been using a LAN IP address of your Kodi box?  If you're running Kodi on a wireless or other home network, you must use the WAN IP address of your network router.  If you don't have a fixed IP address issued by your ISP, you'll need to use one of the DDNS services that will issue you a DNS name, translate it to your WAN IP address, and help to keep up the IP address if and when it changes.  You'll need to sign up for the service.  Your router will likely help you to manage the service - enter the DDNS login information, track and report any changes to the WAN IP address so that the DDNS service can issue changes to Internet DNS servers.  Finally, with a router you'll need to set up port forwarding so that the router knows how to send Kodi traffic to Kodi.  I suppose that you'll actually need 2 ports forwarded, one for Kodi (8080 usually) and another one to point to your OwnCloud app.

Your web server must also support (Python 2.7, not 3, I think) apps, and must have the libraries listed in the requirements.txt file installed.  I would assume that Python would be installed since you say you have WSIG running.  If not, you can download and install python, from python.org if you use as Windows or OSX box.  I suspect that most Linux boxes include python in the default distribution.
.  If and when Python is installed, you can use pip to check the libraries and install them if needed.  The command "pip install -r [Path to]requirements.txt" should tell you.
Reply
Sorry tkgafs, I didn't get to the end with my previous post.  It looks as though you'll also need to install another app aside from your web server to support your own Alexa server app.  Google OwnCloud to figure out how to do so.  I haven't dug into it myself.
Reply
Thanks guys for the info about self hosting although it doesn't get me much further

I want to self host so that I don't need to open any ports on the router, but by the look of things its impossible to do this despite what the documentation says

I perhaps misunderstand how alexa actually works, I had assumed tat the skill was downloaded to your local device but I guess Amazon host these skills some place, but how does the echo unit get info back from amazon, presumably a web call which it then scrapes for the reply somehow or other.

I have opencloud running locally as well as wsgi

the documentation has the following scattered through its pages

Obtaining Your Internet Address
This skill is hosted in the "cloud," unless you opt to host it yourself locally. As such, it will need to know your internet address to contact Kodi.    [therefore presumably ports have to be opened]

yet the next paragraph states the following

Router Setup
Unless you are hosting the skill locally, it is required that you have the Kodi web server(s) opened up to the internet via port forwarding on your router.

Self Hosting
If you are savvy enough to run your own web server, this is just a bog-standard WSGI app, and you're free to host it on any web server, provided it supports HTTPS [but what gets installed in local server]

Install the modules in requirements.txt [no link here so what are the requirements]

I'll have to go onto github and try and contact developer I think


.
Reply
Your web server has to be accessible over the internet. Hosting it yourself on your own web server means you don't need to expose Kodi's server to the internet, but as Alexa is a cloud service, Amazon has to have an internet-accessible endpoint to contact.

In other words, HTTPS (port 443) would have to be open on your router. Amazon contacts your web server over the internet, and the skill contacts Kodi over your LAN.
Reply
Anyone know the phrase needed to open a music playlist? I made a Christmas.m3u playlist from my music library but can't seem to find a way to open it. It's located in Music\Playlists\Christmas.m3u

Not sure if I understand the cache bucket. Will a Update Library add all of my media into the bucket? So far it looks like only when I ask for something specific does a bucket object get created.
Reply
Hi Guys, I need a little bit help here. I run my Kodi web server through Nginx proxy. I can successfully access my Kodi web from outside world and browse it on https://mydomain.com:port

Here is my config:
Quote:location / {
proxy_pass http://192.168.1.123:8282;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }

If I go to https://mydomain.com:port/jsonrpc I can see this in firefox so I hope my reverse proxy works:
Quote:description"JSON-RPC API of XBMC"
id"http://xbmc.org/jsonrpc/ServiceDescription.json"
methods{…}
notifications{…}
types{…}
version"10.0.0"

The problem is that when I try to deploy Kanzi I am getting this:
Quote: "→ Kodi server configuration settings are wrong. Please double-check kodi.con"
Also the error log shows this:
Quote:::: 2018-12-26 23:21:19 :::
Error: Error talking to Kodi.

Can someone please give me some clues on how to troubleshoot it?
Thanks.
Reply
Hi, 
I have double-checked everything and it's fine, according to the setup instructions. 
However, when it asks for "What's the URL for your skill server? (ex. https://... or arn:...). Press enter to skip." - I do not know what if is asking me to provide.
Can you give me a hint?

In the setup instructions it says: "It will ask you what endpoint your server code is running at. Just paste that in, and everything will be deployed to Amazon." - but I do not know what is the endpoint - is it refering to the Kodi web address? or to an Amazon hosting address? 

Thank you
Reply
(2018-12-27, 19:21)vladchiriloiu Wrote: Hi, 
I have double-checked everything and it's fine, according to the setup instructions. 
However, when it asks for "What's the URL for your skill server? (ex. https://... or arn:...). Press enter to skip." - I do not know what if is asking me to provide.
Can you give me a hint?

In the setup instructions it says: "It will ask you what endpoint your server code is running at. Just paste that in, and everything will be deployed to Amazon." - but I do not know what is the endpoint - is it refering to the Kodi web address? or to an Amazon hosting address? 

Thank you
In your AWS configuration is an arn address. That's what it is asking for.
Reply
(2018-12-27, 19:34)drizzt09 Wrote:
(2018-12-27, 19:21)vladchiriloiu Wrote: Hi, 
I have double-checked everything and it's fine, according to the setup instructions. 
However, when it asks for "What's the URL for your skill server? (ex. https://... or arn:...). Press enter to skip." - I do not know what if is asking me to provide.
Can you give me a hint?

In the setup instructions it says: "It will ask you what endpoint your server code is running at. Just paste that in, and everything will be deployed to Amazon." - but I do not know what is the endpoint - is it refering to the Kodi web address? or to an Amazon hosting address? 

Thank you
In your AWS configuration is an arn address. That's what it is asking for. 
Thank you very much for the suggestion - but I do not know how to get to that. If you have an idea, please share. 
I have a developer account - I can get to my Alexa Skill development.
Reply
In following the lexigr.am instructions, you either chose the AWS Lambda or the Heroku choice.  In either case, Lexigram required you to log into your AWS account.  If you chose the AWS Lambda route, you were required to create a zipped file and then upload it to Lambda.  When that step was finished, you were (are) logged into the AWS Mnagement Console, in the "Lambda" service, with a Lambda function having been created (with the name "kanzi", I think.)  In the upper right hand corner of the browser window is an ARN, like:

ARN - arn:aws:lambda:us-east-1:xxxxxxxxxxx:function:name,

with the xxxxxxx uniquely assigned by Lambda and the "name" being the function name.  That's the arn you need (leaving off the "ARN - ").  You need it because your Alexa skill needs to call this function,  residing on an AWS server in the case of Lambda.  

If you went the Heroku route, you will need a string starting with https://...., which is assigned by Heroku and displayed with the Heroku function that was created by Lexigram.

The reason for all of this is that Kodi-Alexa requires 2 separate functions - the Alexa skill, which must reside on the Amazon Alexa server, and the server function which can reside on Alexa Lambda, Heroku, or your own server.  In any case, the Alexa skill needs to find the server back end.  Thus the arn: or https:// address.
Reply
  • 1
  • 164
  • 165
  • 166(current)
  • 167
  • 168
  • 176

Logout Mark Read Team Forum Stats Members Help
Kanzi: Amazon Alexa skill for Kodi15