In another post, I postulated we could bypass the SDK completely and connect directly to the FS API over the network, if only we had some documentation about the protocol (comms format) the API uses.
So, I did some more sniffing about this, in another forum (oh, the shame of it) and it looks like the author of jSimConnect has done exactly that.
Unfortunately, his original post is no longer on the forum, however, it does still exist in the web.archive site.
Armed with this initial information, I plan to develop a proxy to capture comms to/from the API, possibly whilst capturing the actions being requested via the SDK.
For those who aren’t sure about the difference between the SImConnect SDK and the SimConnect API, let me explain.
The SDK is the DLL provided to developers to embed in their own applications, to communicate with MSFS2020. It is a proxy for transforming your requests into a binary format (protocol) suitable, for MSFS2020 to receive, and to transform the responses back into data the client application can use.
The API is the network endpoint in MSFS2020, that the SDK talks to, to transmit requests to and send responses back. It is an interface into MSFS2020 itself.
I plan to create a project in C# (which I will put on GitHub for others to access/review) using the SDK toolkit I created, so I can force the SDK to connect to my proxy, submit requests and capture the traffic between the SDK and the API, this will allow reviewing the traffic.
Using the initial documentation linked above, we should be able to enhance the documentation with a view to develop our own SDK’s, in any language, opening the door to so many projects, in almost any language, on any platform.