Ben Russell Posted November 20, 2013 Report Posted November 20, 2013 (edited) Presenting x-httpd, a simple web server plugin for x-plane. x-httpd is open source, written in C and C++.The code is from 2005 so it needs a fair bit of work but it is functional. I have placed the project under the GNU Affero GPL license version 3.(Affero stops people from running a server with custom mods and not sharing the custom server source. This plugin is a server resource, it needs the Affero license variant.) What's x-httpd good for? x-httpd can be used to create web-apps that interact with X-Plane for use on your tablet smart phone or additional monitor. x-httpd does not come with any "cool" web app content at this time. Eventually this plugin should allow for remote IOS content, remote CDU, remote popups, etc, etc. The CRJ already has a built in web server for its Remote CDU functionality. This project gives the community a web server to build similar content with. I know some Javascript and HMTL, how can I use this? Download and install an x-httpd binay when they're made available*.* The plugin still needs a little more work before I want to release a public build. Create your HTML/script content inside the folderX-Plane/resources/plugins/x-httpd.x-plugin/root/html/ Interact with X-Plane using these commands: /get?dref=sim/foo&type=float returns:{ result:true, type:"float", value:3.21, dref:"sim/foo" } /set?dref=sim/foo&type=float&val=3.21 returns: {result:true } Do you support Linux? The code is written in a way that should be trivial to port to all three operating systems. The aim of this project is to provide a basic web server that can allow all X Project AIm? Remove the roadblock stopping people from building some awesome remote instruments using modern browsers. Project Source code etc:https://github.com/benrussell/x-httpd Edited November 20, 2013 by Ben Russell 3 Quote
Ben Russell Posted November 20, 2013 Author Report Posted November 20, 2013 Mac users (32bit and 64bit) can grab a test copy here: https://github.com/benrussell/x-httpd/raw/master/downloads/mac/x-httpd.x-plugin-13.11.20.2323.zip Quote
Tom Knudsen Posted November 21, 2013 Report Posted November 21, 2013 Could this be used to have i.e weather page externally?Sent from my iPad using Tapatalk Quote
Ben Russell Posted November 21, 2013 Author Report Posted November 21, 2013 Weather adjustment page; yes. This project is restricted to simple dataref changes at the moment, more abilities and possibilities will come in future. We seem to be at a stage where multiple parties are interested in extending their product reach to tablets. Hopefully we can focus the work into one web-server plugin to do it instead of a new server and new user config burden for each product. I'm going to create some HTML content for this thing to get the ball rolling.There are a _lot_ of web programmers out there now that are super talented so I would expect to see some cool stuff emerge given time. 1 Quote
Ben Russell Posted November 21, 2013 Author Report Posted November 21, 2013 (edited) edit Edited November 21, 2013 by Ben Russell Quote
Ben Russell Posted November 21, 2013 Author Report Posted November 21, 2013 Updated Mac plugin attached. Contains web content for the wx control panel in the video above. Very quick hack.x-httpd.x-plugin-13.11.22.0029-Mac.zip Quote
Ben Russell Posted November 21, 2013 Author Report Posted November 21, 2013 (edited) Source code for wx control panel: https://github.com/benrussell/x-httpd/blob/master/content/x-httpd.x-plugin/root/html/index.htm Edited November 21, 2013 by Ben Russell 5 Quote
Andyrooc Posted November 22, 2013 Report Posted November 22, 2013 Should have called it X-God! Neat idea though. Sure lowers the barrier, and will make it more fun to experiment with X-Plane. Quote
Ben Russell Posted November 22, 2013 Author Report Posted November 22, 2013 I have added some features to allow other plugins to talk to x-httpd to and have their content served.Using standard X-Plane C SDK functions any other plugin can extend itself using the XPLMSendMessageToPlugin function. Third party plugins have complete control over the data read from and sent to the client.You get the complete http packet to play with. If x-httpd is not installed the third party plugin will continue to operate as normal. x-httpd is an entirely optional enhancement. I've also added some features to Gizmo so we can interact with x-httpd..We are no longer restricted to simple dataref get/set operations. Anything is possible. Plenty of work remains to make the httpd server code more robust.I'm more interested in integrating it with X-Plane in useful ways at this point."Correctness" with regards to socket operations and so forth can come a little later. 1 Quote
xplaneorgisdumb Posted January 4, 2014 Report Posted January 4, 2014 any windows-version for it? Quote
Ben Russell Posted January 4, 2014 Author Report Posted January 4, 2014 Not yet, there's more dev work to do before I bother. This is more of a long term project, with low priority. Lots of other work to do.. Quote
ksgy Posted October 13, 2015 Report Posted October 13, 2015 Just found this, might be useful with x-httpd for simple home cockpit builders - like having the instruments on tablets/smartphoneshttps://github.com/dmh2000/svg-ac-instrumentsDemo: http://www.geezer-x.com/panel.html Quote
BrunoCubateli Posted December 2, 2015 Report Posted December 2, 2015 Could I use this plugin to run a private flight server? How could I do this? Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.