This might be helpful for understanding the code structure (it might be slightly outdated):
https://www.traccar.org/architecture/
You can implement an interface that doesn't use the database. See MemoryStorage
class. That seems like what you're trying to achieve.
Thanks for answering so quickly! I took a look at the MemoryStorage class, but I don't know if we are going to solve the device registration with that. As I said, we would like not to register devices. And if I understand correctly, the fact of using a MemoryStorage implementation will mean that each time the app reboots, we will need to register the device again. Am I right?
First of all, there's a configuration option to automatically register devices. Secondly, you can adjust the implementation to always return a device object without any registration required.
Thank you for the MemoryStorage advice, we made it work. Also, we are using the database.registerUnknown configuration property. We've read in another discussion that it's possible not to persist the position data. Currently, our Memory limit heap is 8174mb, and we understand that we need database, but also we don't need to store position data. Our question is... Is it enough to just change the storage to a MemoryStorage in order to avoid saving the position data, or do we need to do something else?
It should be enough.
Hello, I'm a software engineering student from Argentina, and I wanted to ask you for some help.
My college teammates and I are working on an investigation project related to GPS tracking, and we came across the Traccar project while we were doing some research. We bought a GPS tracker on Aliexpress, and our goal was to read the data that it sends. At first, we were struggling because we didn't know how to read the packages it sent, but then we tried using the Traccar project for that. Luckily, that worked, and we were able to see the location data.
We were surprised with the dimension the whole project has, and to be honest, we were kind of overwhelmed trying to read and understand all the code, and the structure of the project. So we wanted to know if there was any way to get more info about that.
Our goal is to run an app that receives the data from the device and logs it. So we won't be needing the device registration functionality, nor the persistence one. The other question that we have is what can we do to make the project more portable? By that I mean avoid the device registration, and the connection to the database, as we just need to log what the tracker device sends.
Thank you for reading, and we would really appreciate your advice!