Skip to content

Adding runelite-homeassistant-data-exporter to the plugin hub#10704

Merged
riktenx merged 6 commits into
runelite:masterfrom
xXD4rkDragonXx:master
Mar 1, 2026
Merged

Adding runelite-homeassistant-data-exporter to the plugin hub#10704
riktenx merged 6 commits into
runelite:masterfrom
xXD4rkDragonXx:master

Conversation

@xXD4rkDragonXx
Copy link
Copy Markdown
Contributor

This PR introduces a new RuneLite plugin that is conceptually based on the existing Dink plugin architecture, but differs in both the structure of the transmitted data and the conditions under which data is sent.

The plugin uses a custom Home Assistant (HA) integration available through HACS and utilizes a secure code–based authentication mechanism for connection handling.

@runelite-github-app
Copy link
Copy Markdown

runelite-github-app Bot commented Feb 23, 2026

@pajlada
Copy link
Copy Markdown
Contributor

pajlada commented Feb 23, 2026

Hi, there's currently a homeassistant plugin https://runelite.net/plugin-hub/show/homeassistant - does this suit your needs?

@pajlada pajlada added the waiting for author waiting for the pr author to make changes or respond to questions label Feb 23, 2026
@RedFirebreak
Copy link
Copy Markdown

Hi @pajlada ! Thanks for your comment. We saw this plugin aswell. It does have some overlap with some of the data that is being exported, but it didnt quite fit our needs or wants for such a connection to Home Assistant. Some notable features about this plugin compared to the homeassistant one that already exists are:

  • Secure pairing (no sensitive access tokens required - acces tokens are scoped for security)
  • Death events / PK events
  • Inventory tracking

One could argue to contribute... but we opted for a different approach.

@runelite-github-app runelite-github-app Bot removed the waiting for author waiting for the pr author to make changes or respond to questions label Feb 23, 2026
@runelite-github-app
Copy link
Copy Markdown

runelite-github-app Bot commented Feb 23, 2026

This plugin requires a review from a Plugin Hub maintainer. The reviewer will request any additional changes if needed.


Internal use only: Reviewer details Maintainer details

@raiyni
Copy link
Copy Markdown
Member

raiyni commented Feb 23, 2026

We would prefer if you could contribute if possible.

@xXD4rkDragonXx
Copy link
Copy Markdown
Contributor Author

We would prefer if you could contribute if possible.

@raiyni In this case I do not see how contributing would be possible as we use a different authentication pattern to limit exposure of Home Assistant.
If we were to contribute to the other plugin we need to either drop this pattern, thus exposing more of Home Assistant then needed, or rewrite the other plugin to use this pattern, which in my opinion goes past the scope of that plugin.

Either option introduces unnecessary complexity and risk, and would require a major refactor.

This plugin handles data export to home assistant differently and with different data allowing for a different approach to the existing solutions.

Instead of considering this as a home assistant duplicate it is an alternative solution for data.

@raiyni
Copy link
Copy Markdown
Member

raiyni commented Feb 23, 2026

So I'm just telling you this for information but many applications and integrations are able to support alternative login methods.

@RedFirebreak
Copy link
Copy Markdown

RedFirebreak commented Feb 23, 2026

Hi @raiyni ! Thanks for your reply once more! Does this imply that our alternative approach is not allowed on the plugin-hub?

@raiyni
Copy link
Copy Markdown
Member

raiyni commented Feb 23, 2026

I would be curious to know why you need to live export everything about the player (ie inventory, spellbook, equipment, location, etc) and when they login/logout.

@RedFirebreak
Copy link
Copy Markdown

Hi @raiyni , in case it wasn't clear. Home assistant is an automation platform designed for triggers, storing sensor data and other hooks. This means that if the data is available, you can trigger off of it. The combinations with a smart home are limitless, but to give some concrete examples:

  • Flash office lights red when "book of the dead" has been forgotten and player is near a popular PVM zone
  • Turn LED-strip off when logged out
  • Start a stream-party when a high-value loot drop happens ingame
  • Notify your wifes phone that you suck at PvM when you die at Zulrah ;)

I hope that clears up the why, the usage of the plugin is up to the user. Our goal is to provide the events and data to combine it. As per my previous question:

Does this imply that our alternative approach is not allowed on the plugin-hub?

@raiyni
Copy link
Copy Markdown
Member

raiyni commented Feb 23, 2026

I know what home assistant is, I was just asking about the realistic usage of it instead of a theoretical

@RedFirebreak
Copy link
Copy Markdown

No worries, hope I clarfied it for you with the examples mentioned above. The "realistic" usecase would differ per user. I for one plan on implementing the first two. (and another project to show myself on a live web-based-map using the location data).

@riktenx
Copy link
Copy Markdown
Member

riktenx commented Feb 28, 2026

@riktenx riktenx added the waiting for author waiting for the pr author to make changes or respond to questions label Feb 28, 2026
@runelite-github-app runelite-github-app Bot removed the waiting for author waiting for the pr author to make changes or respond to questions label Feb 28, 2026
@xXD4rkDragonXx
Copy link
Copy Markdown
Contributor Author

You cannot block on shutdown / clientshutdown, ever https://github.com/xXD4rkDragonXx/runelite-homeassistant-data-exporter/blob/91f3b96ce5bbdd128235de35fb7f84c58c4fd6bc/src/main/java/haexporterplugin/utils/HomeAssistUtils.java#L51

Thank you for your comment. I've removed the blocking calls from the code.

Comment thread plugins/ha-exporter Outdated
@riktenx
Copy link
Copy Markdown
Member

riktenx commented Mar 1, 2026

apply the above manifest file change and ping me and i'll merge this

@riktenx riktenx added the waiting for author waiting for the pr author to make changes or respond to questions label Mar 1, 2026
Co-authored-by: riktenx <riktenx@gmail.com>
@runelite-github-app runelite-github-app Bot removed the waiting for author waiting for the pr author to make changes or respond to questions label Mar 1, 2026
@xXD4rkDragonXx
Copy link
Copy Markdown
Contributor Author

xXD4rkDragonXx commented Mar 1, 2026

apply the above manifest file change and ping me and i'll merge this

Added

@riktenx riktenx merged commit d00abfd into runelite:master Mar 1, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants