jelu icon indicating copy to clipboard operation
jelu copied to clipboard

feature request: audiobookshelf and kavita integration

Open zombiehoffa opened this issue 2 years ago • 6 comments

It would be awesome if this could talk to kavita (https://www.kavitareader.com/) and audiobookshelf (https://www.audiobookshelf.org/) to add their libraries (ideally with recognizing duplicates across them) and to keep track of what is read and not read in each to add to read/not read in this app.

zombiehoffa avatar May 16 '22 18:05 zombiehoffa

Hi, I'm not against integrations, but how would you see this ?

My point of view is that Jelu is a passive app : your activity happens in other apps (like reading a book in kavita or listening to an audiobook in audiobookshelf), so the best place to trigger read events would be in kavita or audiobookshelf.

For example you finish to read a book in kavita and that triggers a call to Jelu REST API to mark this book as read.

So I see several ways to do it :

  • you can ask to the developers of those apps to add read progress integration
  • in case of webapps ans if a REST API is provided, someone could create a JS user script (like tamper monkey etc...) that could be called from the apps to call Jelu (in that case the developers of those apps don't need to do anything)
  • If we absolutely need to do this in Jelu, that would be the less convenient way because we would have to periodically call kavita or audiobookshelf (only if they provide a REST API available). We would have to track on our side what was already matched and what wasn't. And we don't have a way to know if a book you imported in jelu comes from kavita or audiobookshelf, or you added it by hand etc... So if we call we would try to find your audiobooks in kavita and so on...

Well you see that is not easy on our side

Maybe there is a plugin mechanism or a list of API to be used as sources in those apps ?

bayang avatar May 16 '22 20:05 bayang

Hi, Both those apps track read progress but I believe only kavita has an api at this point. Both are in very active development so maybe that will change. I was picturing the third option when jelu polls on a user set period of time or can be kicked off to poll by the user. Both apps keep an "added on" date so could poll for only stuff added since the last poll or do a complete poll then match based on book name, author, isbn, etc.

zombiehoffa avatar May 16 '22 21:05 zombiehoffa

Hi it seems both projects have already planned scrobbling :

Kavita in the projects section, planned for v 0.6.1 : https://github.com/Kareadita/Kavita/projects

Audiobookshelf : https://github.com/advplyr/audiobookshelf/issues/281

Maybe it could be worth reaching them.

bayang avatar May 17 '22 07:05 bayang

I will ping both projects

zombiehoffa avatar May 17 '22 14:05 zombiehoffa

kinda curious if you decided to switch your personal setup to audiobookshelf and therefore may be making audiobookshelf and jelu interact?

zombiehoffa avatar Jun 11 '22 00:06 zombiehoffa

Hi, I'm testing audiobookshelf for podcasts only as I'm not listening to audiobooks.

Sorry, I know you want this, but no interaction at the moment I'm afraid.

Maybe you could benefit the APIs of Jelu and audiobookshelf and write some kind of sync script ?

bayang avatar Jun 11 '22 16:06 bayang