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

Integration with Ryot #33

Open
IgnisDa opened this issue Sep 5, 2023 · 21 comments
Open

Integration with Ryot #33

IgnisDa opened this issue Sep 5, 2023 · 21 comments

Comments

@IgnisDa
Copy link

IgnisDa commented Sep 5, 2023

Hello I am the author of Ryot. I believe the goals of Librum and Ryot align wonderfully and would like to propose an intgeration between the two. What do you think about it?

Describe the solution you'd like
A webhook architecture in Librum that would inform Ryot when progress is made on a book.

Thank you for Librum, it is really useful for me!

@DavidLazarescu
Copy link
Member

Hey, thank you for reaching out. I am generally open to these kind of integrations, but I'd need to know more about your project.

How exactly would Ryot work together with Librum?

@IgnisDa
Copy link
Author

IgnisDa commented Sep 5, 2023

Ryot is meant for tracking media (in this case books). Every time you read a book, Librum will send your progress to Ryot so that it can be tracked.

@DavidLazarescu
Copy link
Member

Does this mean that you are adding webhooks to multiple applications (e.g. e-book readers / library managers) so that they sync their data with you? If that's the case, what other services is Ryot connected with?

@IgnisDa
Copy link
Author

IgnisDa commented Sep 5, 2023

Ryot supports a lot of services: https://ignisda.github.io/ryot/integrations.html.

@DavidLazarescu
Copy link
Member

Ryot supports a lot of services: https://ignisda.github.io/ryot/integrations.html.

I see. How exactly would the integration work?

@IgnisDa
Copy link
Author

IgnisDa commented Sep 8, 2023

Does Librum have access to a book identifier? Ideally I would prefer that Librum sends the openlibrary or google books ID but I think this would be outside the project scope. In that case, an ISBN13 would work fine.

When I read a book, Librum will send a progress update event to the Ryot API:

{
  "isbn13": "<identifier>",
  "progress": 56.45, // progress out of 100%
}

Does this make sense?

@DavidLazarescu
Copy link
Member

Librum parses the book files from the user's PC and thus doesn't have access to any of ISBNs. If you'd need the ISBN, I'd need to use some kind of ISBN database and try to find the proper ISBN for every book the user imports into the application.

@IgnisDa
Copy link
Author

IgnisDa commented Sep 8, 2023

I'm not that familiar with how ebooks work but i thought their ISBN was attached to their file metadata?

@DavidLazarescu
Copy link
Member

I have talked to the developers of the library that Librum uses for rendering the books and extracting their metadata and they say their Library does not support extracting ISBNs

@IgnisDa
Copy link
Author

IgnisDa commented Sep 9, 2023

Well we can use the book title themselves but that's prone to errors.

@DavidLazarescu
Copy link
Member

From what I know there are databases that you can use to get the ISBN of a book by its title. We might be able to use that.

@IgnisDa
Copy link
Author

IgnisDa commented Sep 9, 2023

https://isbndb.com/ is paid.

@DavidLazarescu
Copy link
Member

Yes, I suppose that this is not an option for now but if Librum gets more donations I could add that

@DavidLazarescu
Copy link
Member

@IgnisDa I have been looking into the google books api which looks quite promising to get more book metadata (including the isbn). I didn't manage to find out if it is free for commercial use, or if it would cost as well though. I am waiting for a response from google's sales department and if it is free or cheap, I'd be able to integrate it soon.

@IgnisDa
Copy link
Author

IgnisDa commented Sep 23, 2023

@DavidLazarescu it's free. I'm not aware how it would apply to Librum given its license. And yes using Google Books api would be great since Ryot already has support for it.

@DavidLazarescu
Copy link
Member

I couldn't find where exactly it says that. Do you have a link to that doc?

@IgnisDa
Copy link
Author

IgnisDa commented Sep 24, 2023

@DavidLazarescu
Copy link
Member

I have looked through this document before, but searching for "free", "price", "cost" and similar gave me no results. Could you be more specific on where exactly it says that it is free?

@IgnisDa
Copy link
Author

IgnisDa commented Sep 24, 2023

I assume that the absence of such clauses means it is free for non-commercial uses.

@DavidLazarescu
Copy link
Member

Librum is a commercial application though, this is why I wanted to make sure that I am not breaking any of their rules.

@IgnisDa
Copy link
Author

IgnisDa commented Sep 25, 2023

Yep, then your approach to contacting them is the right way to proceed. Do let me know what they reply.

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