Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Usage of named pipes? #79

Open
ndelta0 opened this issue Mar 16, 2021 · 5 comments
Open

Usage of named pipes? #79

ndelta0 opened this issue Mar 16, 2021 · 5 comments

Comments

@ndelta0
Copy link

ndelta0 commented Mar 16, 2021

Is your feature request related to a problem? Please describe.
Memory Mapped Files are only a thing in Windows, thus limiting the plugin to Windows only (#75).

Describe the solution you'd like
Usage of Named Pipes, they are present in both Windows and Unix/Unix-like, although they have a bit different implementation.

Describe alternatives you've considered
Other alternative is a TCP (or UDP maybe?) socket, similarly to how ETCARS and ETS2 Telemetry Server. In case of the latter it would probably require either JSON format or Base64 encoding.

Additional context
None

@RenCloud
Copy link
Owner

Linux support is indeed planed. It will need some time, because currently I have no time for that.

I saw some alternatives with TCP, but it will probably a similar solution to memory mapped files like pipes.

@ndelta0
Copy link
Author

ndelta0 commented Mar 16, 2021

It's possible to use something like ZeroMQ, it has lots of libraries for lots of languages, and supports TCP, UDP, IPC, etc.

@RenCloud
Copy link
Owner

I would like to use a way without external libraries, but I will take a look.

@ndelta0
Copy link
Author

ndelta0 commented Mar 17, 2021

Understandable, I just spent an entire day trying to get cppzmq working with the plugin, but it's really useful, you can use publisher/subscriber pattern with topics (maybe events in this case) and subscribers can subscribe to any of the events.

@ndelta0
Copy link
Author

ndelta0 commented Mar 18, 2021

I've made a crudely working telemetry using the demo and converted it to use ZeroMQ. It was basically plug and play, drop in replacement. You can see the changes here, it was done quickly so there is high possibility for something not working. It makes use of CMake and vcpkg (it makes using open source libraries very very easy).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants