OverloadUT Posted December 12, 2012 Posted December 12, 2012 I've been working on making a little lightweight web interface for quick control of lights in my house to replace the atrocious one served up by the ISY. When I got to the step where I needed to test the AJAX calls to the REST API, I had to put my files on the ISY itself to play nicely with the Same Origin Policy. When I did, my jaw hit the floor when I got the error saying that most of my files couldn't be uploaded because they don't observe the 8.3 filename restriction. It has been literally 15 years since I have had to worry about 8.3 filenames, and I could not believe that the ISY-994 is actually beholden to this! What exactly is the webserver intended to be used for with this sort of restriction? You can't even load jquery! Is there any workaround to this or way to change the filesystem in the ISY?
Michel Kohanim Posted December 12, 2012 Posted December 12, 2012 OverloadUT, We had to disable long file names because it increased RAM usage by almost 200%. Network resources/web server functionality accounts for less than 1% ISY features and as such, regardless of how many years long file names have been around, it makes no sense to sacrifice memory for this function. With kind regards, Michel
Vyrolan Posted December 12, 2012 Posted December 12, 2012 When I did, my jaw hit the floor when I got the error saying that most of my files couldn't be uploaded because they don't observe the 8.3 filename restriction. It has been literally 15 years since I have had to worry about 8.3 filenames, and I could not believe that the ISY-994 is actually beholden to this! I'm not sure if you noticed, but the ISY is not a computer...it's a tiny little box that can do a TON of stuff... It comes as no surprise to me that such a restriction exists in an environment where memory and processing power are at a premium. What exactly is the webserver intended to be used for with this sort of restriction? You can't even load jquery! Is there any workaround to this or way to change the filesystem in the ISY? It's easy enough to rename files...jquery can be just one file...just rename it... You could also put your web pages on your router if you have one that supports DD-WRT or one of the other alternative firmwares. You'd have a much more powerful web server that way anyway...
Xathros Posted December 12, 2012 Posted December 12, 2012 Or a $20 Pogoplug with Archlinux would give you a full Apache webserver and pretty much anything else you might need like perl, PHP, MySQL etc. -Xathros
Xathros Posted December 12, 2012 Posted December 12, 2012 Yep. Same stuff - different box... -Xathros
OverloadUT Posted December 12, 2012 Author Posted December 12, 2012 Thanks for the info Michel Kohanim; I figured it might be something like that. It's disappointing, but I'll figure out another way. Everyone else - I am perfectly capable of setting up a web server, but you guys are forgetting the entire point of needing to run it on the ISY itself: Same Origin Policy. I can't have javascript access the REST interface on the ISY unless that javascript is loading from the same domain. The objective was to have an extremely lightweight Bootstrap+jQuery webpage for turning on and off the lights. I suppose I could set up a simple REST mirroring interface on the separate web server. I'll have to look up what the best practices for accomplishing this are, as I'm not sure what is the most proper way to go. Also, calling the ISY not a "computer" is an extraordinarily silly assertion but let's not dwell on that!
Vyrolan Posted December 12, 2012 Posted December 12, 2012 Also, calling the ISY not a "computer" is an extraordinarily silly assertion but let's not dwell on that! It would have been better to say not a "general purpose computer"...but it's still essentially like a highly-specialized embedded device. The "extraordinary silly" part was when you blasted the developers with exaggerated statements about jaws hitting floors, and statements like "It has been literally 15 years since I have had to worry about 8.3 filenames, and I could not believe that the ISY-994 is actually beholden to this!" I also still don't understand why you can't just rename all your files to match 8.3 scheme...
OverloadUT Posted December 12, 2012 Author Posted December 12, 2012 Also, calling the ISY not a "computer" is an extraordinarily silly assertion but let's not dwell on that! It would have been better to say not a "general purpose computer"...but it's still essentially like a highly-specialized embedded device. The "extraordinary silly" part was when you blasted the developers with exaggerated statements about jaws hitting floors, and statements like "It has been literally 15 years since I have had to worry about 8.3 filenames, and I could not believe that the ISY-994 is actually beholden to this!" I also still don't understand why you can't just rename all your files to match 8.3 scheme... I apologize. It was 1:30 in the morning after a terrible day at work and so I definitely came across a lot more angry than I meant to. I even changed the title of the thread this morning to be less incredulous. I never expected the ISY to have a full apache web server or anything, but it having a web server was one of the selling points for me, so it was that frustration mixed with the above that caused my anger. The issue with renaming the files is having to adjust the source code for bootstrap so that it knows about all of the shortened filenames. It's certainly not insurmountable, but it'll be annoying each time I want to update bootstrap. Realistically though, I'll probably never need to update bootstrap as once I build this it'll probably last for a very long time.
Vyrolan Posted December 12, 2012 Posted December 12, 2012 I apologize. It was 1:30 in the morning after a terrible day at work and so I definitely came across a lot more angry than I meant to. Makes sense...I too apologize as I overreacted and was pretty snarky myself. The issue with renaming the files is having to adjust the source code for bootstrap so that it knows about all of the shortened filenames. It's certainly not insurmountable, but it'll be annoying each time I want to update bootstrap. Realistically though, I'll probably never need to update bootstrap as once I build this it'll probably last for a very long time. Yea, I was thinking I would just do a massive find-replace (or sed or whatever your tool of choice is) to rename them and fix all the references, but for sure it would be a pain if you wanted to update. There are plenty of ways around the cross-domain thing, but admittedly none of them are super elegant. =p Since you have access to the server side in this case, a REST mirroring setup like you mentioned is probably easiest and least convoluted.
Recommended Posts