James Turner
8472f8c6d0
Fix positional ordering of remote-canvas elements.
...
The mirror protocol now sends the position for internal as well as
leaf nodes, and the group uses this data to sort when no explicit
Z-indices exist. This gets the extra-500 much closer to working!
2017-01-26 23:14:48 +00:00
James Turner
c9f922ce1b
Expose node position over property-mirror protocol.
2017-01-26 20:36:07 +00:00
James Turner
95e09de1ff
Remove a log message.
2016-12-28 22:01:29 +01:00
James Turner
eba1f3221f
Fix a bug starting the property-tree mirror.
2016-12-21 10:26:31 +00:00
Torsten Dreyer
c472788ad8
Httpd: fix slow websocket init
2016-12-20 11:46:02 +01:00
James Turner
4fb5bc8512
Property-Mirror websocket: fix removing props.
...
Special case handling when recently removed properties are re-added;
when this happens simply send a value change since it's much cheaper
over the wire and for the receiver. Poorly designed Canvas code does
this frequently (eg, every update)
2016-12-10 22:01:25 +00:00
James Turner
b767a33f84
MirrorPropertyTree websocket fixes
...
- deal with ‘NONE’ properties correctly
- use a better method to send the initial tree on connection.
2016-12-05 21:27:38 +00:00
Torsten Dreyer
c3c0d25fe7
Fix Linux build
2016-12-03 22:46:31 +01:00
James Turner
47042b03f4
Expose an entire property tree via WebSockets.
...
Use a recursive listener to expose a property tree via a WebSocket.
Currently using a JSON-based encoding, will likely change to binary so
please don’t write code using this interface until the encoding
is stable and documented!
2016-12-03 14:23:48 +00:00
Torsten Dreyer
65b51b8d91
Limit the update rate of the property change websocket
...
Of fast systems with 60fps sending many properties to web clients
may overrun the rendering capabilities of the browser. At some point
the web socket client halts the simulation by throtteling the network
connection.
Update rate is settable at startup setting to a double value
/sim/http/property-websocket/update-interval-secs
(default: 0.05 aka 20Hz)
2016-10-26 11:02:24 +02:00
James Turner
6d0c2070fd
Use future-proof SGPath APIs.
...
Remove uses of .str(), .c_str() and some other methods of SGPath.
Pass SGPath directly where possible, or explicitly convert to the
appropriate 8-bit encoding.
2016-06-28 10:08:38 +01:00
Torsten Dreyer
6f09b9e31e
httpd: expose /fg-home and /fg-root
2016-01-13 13:25:16 +01:00
James Turner
5f0e347c60
Keep in sync with SimGear Package API
2015-09-27 19:44:39 -05:00
Torsten Dreyer
93f03f5f2e
property browser: group radio-button elements
...
This allows to better render bool properties
2015-04-15 10:41:31 +02:00
Torsten Dreyer
8f9df6940f
httpd: extend the NavDbUriHandler
...
- add more details for airports
- add "q=airports" query to get the airport list
- add "q=airport&id=abcd" query to get airport details
2015-03-28 00:34:28 +01:00
Torsten Dreyer
3ee36a7143
PropertyChangeWebsocket: sanitize property names
2015-03-17 09:27:03 +01:00
Torsten Dreyer
f5f82c461f
RunUriHandler: add some INFO logging for the requests
2015-03-11 22:28:23 +01:00
James Turner
68efa84b3a
Remove obsolete #ifdef check
2015-03-11 17:09:59 +00:00
Torsten Dreyer
f32f1fba59
Fix recently introduced bug in json-to-prop conversion
2015-03-11 16:59:58 +01:00
Torsten Dreyer
fced50f480
JSON Properties: encode NaN as null
...
JSON doesn't know about NaN, probably null matches best
2015-03-09 16:17:20 +01:00
Torsten Dreyer
8b141025cd
httpd: expose if airport has metar in navdb uri handler
2015-03-09 14:53:40 +01:00
Torsten Dreyer
0f72564140
Use the pagedPathForHistory in the FlightHistoryUriHandler
2015-03-03 17:10:16 +01:00
Torsten Dreyer
2e5db3ce85
httpd: fix misplaced warning message
2015-03-02 20:39:23 +01:00
Torsten Dreyer
0fcfbe9221
wrap the json flight history as a feature
...
this allows to attach properties later
2015-02-27 15:54:28 +01:00
Torsten Dreyer
146efcafa4
JsonUriHandler: allow POST updates without child
...
updates to properties used to be
POST /json/some/property/path
{
name: 'somechild',
value: 'somevalue'
}
which required some ugly path hacking when directly updating a node.
now, this works too (and in a probably more intuitive way)
POST /json/some/property/path/somechild
{
value: 'somevalue'
}
2015-02-27 11:07:25 +01:00
Torsten Dreyer
4b5dec2cae
HTML Property Browser: use radiobuttons for bools
2015-02-26 18:14:09 +01:00
Torsten Dreyer
0034d6b59a
flighthistory service: use GeoJSON instead of own invention
...
Track now comes as a LineString object
{
"type":"LineString",
"coordinates": [ [lon,lat,alt], [lon,lat,alt], ... ]
}
ref: http://geojson.org/geojson-spec.html#linestring
2015-02-25 10:38:22 +01:00
Torsten Dreyer
cc6178a9f3
Expose FlightHistory as a http service
...
usage:
GET http://localhost:8080/flighthistory/track.json
retrieves track as JSON data
{
flightHistory: [
{
latitude: (number),
longitude: (number),
altitude: (number)
}
]
}
GET http://localhost:8080/flighthistory/track.kml
retrieves track as KML path
optional request parameter:
LineColor=(hex encoded rgba color)
LineWidth=(line width in pixel)
PolyColor=(hex encoded rgba color)
interval=(number of seconds to auto-refresh)
2015-02-23 16:33:58 +01:00
Torsten Dreyer
ae91b9cede
Initial work for a PKG http service
2015-02-17 12:06:50 +01:00
Torsten Dreyer
6e3486349b
PropertyBrowser: Add a JSON link and the path
2015-02-13 11:42:45 +01:00
Torsten Dreyer
6970ea69a8
httpd/json: send as correct typ for bools and numbers
2015-02-11 11:34:16 +01:00
Torsten Dreyer
4b4f5c9e9a
httpd: some code cleanup for JsonUriHandler.
...
no functional change
2014-11-11 08:59:41 +01:00
Torsten Dreyer
aeb1eedba8
Allow property set on the /json/ uri handler
2014-11-10 14:23:12 +01:00
Torsten Dreyer
d46aa5114f
httpd: upgrade to latest mongoose 5.5
2014-11-06 22:21:22 +01:00
Torsten Dreyer
0376ab3f28
Fix #1579 : Handle special characters in html property browser
2014-11-04 22:21:44 +01:00
Torsten Dreyer
e786b1a54e
httpd: expose airport id to geojson properties
2014-10-16 13:09:43 +02:00
Torsten Dreyer
cc526174c1
httpd: fix mjpeg encoding
2014-10-02 11:13:12 +02:00
Torsten Dreyer
c0c82f4f7b
Fix (1st try) absolute paths for httpd url_rewrites
...
Thanks to Alan Teeder for guiding me into the right direction
2014-09-24 20:50:10 +02:00
Torsten Dreyer
2859400336
Some debug stuff for the mongoose httpd
...
- add a config-dump on log-level=info
- add an access-log option
use --prop:string:/sim/http/options/access-log-file="/path/to/access.log"
2014-09-24 17:40:04 +02:00
Torsten Dreyer
996a46536d
httpd: fix log message typos
...
no functional change
2014-09-21 22:29:10 +02:00
Torsten Dreyer
e8d851d236
Allow user defined mime types for the internal httpd
2014-09-20 01:48:32 +02:00
Torsten Dreyer
c9d159e71f
httpd: downgrade log message
2014-09-15 10:54:00 +02:00
Torsten Dreyer
512ec61e8e
Expose the running-state of the internal webserver
2014-09-12 22:58:30 +02:00
Torsten Dreyer
b50b1a778b
httpd: expose the aircraft dir to the web server
...
add a (currently) hard coded url rewrite to access the
currently used aircraft by
http://localhost:8080/aircraft-dir/
2014-09-10 22:43:06 +02:00
James Turner
8f754a1673
Type-correct decoding of JSON to props.
2014-06-12 19:58:13 +01:00
James Turner
d1a477324e
Websocket get/set props and exec commands.
2014-06-12 17:57:25 +01:00
Torsten Dreyer
2e76a2c72a
Update of the httpd implementation
...
- Add a screenshot uri handler
- Enable persistent http connections
- Simple CORS implementatation for the
JSON property uri handler
many changes for the httpd
2014-05-22 10:28:54 +02:00
Torsten Dreyer
75f9d7e66e
add nChildren to json properties
2014-03-26 15:06:24 +01:00
Torsten Dreyer
0dcc8aa34d
Add a timestamp to JSON properties
...
add special attribute 'ts' to a JSON property reflecting
/sim/time/elapsed-sec
always add timestamp for listener properties
add timestamp for json requests if req param t=y is set
2014-03-26 08:51:15 +01:00
Torsten Dreyer
f68ae55068
Don't return invalid JSON if node not found
2014-03-25 21:43:08 +01:00