GitHub
https://github.com/Tomhoogstra/OSTracker
If you found this repository useful, please consider giving it a star!
About
In late 2019, OSTracker 1.0 was released which was a client-server implementation that strived to collect user data for scripters with ease. There were a few problems with this type of implementation, and most of them were performance related and mostly poor ways of communication between the client and the database.
Today I am happy to release OSTracker 2.0, which transitions from this Client-Server approach to a RESTful API which allows for much easier and less intensive data submission and tracking.
OSTracker 2.0 API is built on Laravel, a PHP framework that specialises in the development of web applications.
Tracked Data (per user)
Experience gained for all skills
Items Received, Lost, or Spent (e.g. arrows and runes)
Time ran
Error logs (if setup)
Upcoming
Data retrieval end points that will allow you to filter certain users, scripts, skills, items, and more.
Client-side installation
Integration with your OSBot script is relatively simple. Simply copy the contents of the 'client' directory in this repo into your scripts code base.
In your scripts onStart, you should initialise OSTracker like so.
private Tracker tracker;
@Override
public void onStart(){
try {
tracker = new Tracker(getBot(), getName(), "BASE_API_URL", "YOUR_TOKEN")
.setUpdateInterval(30) // Defaults to an hour
.start();
tracker.getSessionTracker().setVersion(getVersion());
} catch (Exception e) {
if (tracker != null) {
tracker.stop();
}
e.printStackTrace();
}
}
And end the tracker in your scripts onExit like so
@Override
public void onExit(){
if(tracker != null){
tracker.stop();
}
}
Your token will be created when deploying the Laravel API to your server, or it will be provided to you if you are choosing to integrate with somebody else's API.
From here, OSTracker will automatically handle experience, loot, and script runtime tracking, and by default will submit this data to the API once per hour. Data will also be submitted when the script is stopped.
API installation
Don't fancy setting all this up? I can host your data for you for $3 USD per month.
Post-installation instructions / API endpoints