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

Introduce support of OPDS catalog #1203

Open
kelson42 opened this issue Jun 17, 2019 · 12 comments
Open

Introduce support of OPDS catalog #1203

kelson42 opened this issue Jun 17, 2019 · 12 comments
Assignees
Labels
enhancement OPDS Necessary for or dependent on OPDS implementation
Milestone

Comments

@kelson42
Copy link
Collaborator

It support is done in the libkiwix. More infos at https://wiki.kiwix.org/wiki/OPDS

@kelson42 kelson42 added this to the 3.1 milestone Jun 26, 2019
@stale
Copy link

stale bot commented Aug 25, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be now be reviewed manually. Thank you for your contributions.

@stale stale bot added the stale label Aug 25, 2019
@kelson42 kelson42 modified the milestones: 3.1, 3.0 Sep 17, 2019
@stale stale bot removed stale labels Sep 17, 2019
@kelson42 kelson42 modified the milestones: 3.0, 3.2 Sep 17, 2019
@stale
Copy link

stale bot commented Nov 16, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be now be reviewed manually. Thank you for your contributions.

@stale stale bot added the stale label Nov 16, 2019
@stale stale bot removed the stale label Jan 17, 2020
@kelson42
Copy link
Collaborator Author

@BBT-SeanMacGillicuddy Would be good to have a look now if you can get all the information you need from libkiwix, at least to provide a similar feature set like currently.

@kelson42 kelson42 pinned this issue Jan 17, 2020
@macgills
Copy link
Contributor

@kelson42 is the expectation that kiwixlib provides the OPDS stream? I see no methods for it to do that with version 8.2.2

@kelson42
Copy link
Collaborator Author

@mgautierfr This is important the libkiwix provides everything about the local/remote catalog via the JNI binding, please talk together with @macgills to secure that this happens soon. If you have questions you can not solve together please let me know.

@macgills
Copy link
Contributor

@kelson42 @mgautierfr
This ticket will require a lot of change and integration with the jetpack Pagination Library.

I believe the aim is to replace the current call to http://mirror.download.kiwix.org/library/library_zim.xml
with
https://library.kiwix.org/catalog/search
filling out several query parameters for searchTerm, active languages, result position and result count.
A quick question here, does this endpoint support multiple languages active at once?
There is also the possibility to filter on tag (specifically category tags?), I don't know how this is to be supported in the ui.

Changes in data returned means there will also need to be a new mechanism to load thumbnails of each book if I am interpreting the OPDS entries correctly

<entry>
    <title>Wikisource</title>
    <id>urn:uuid:010ccf61-e131-1613-e567-f1020086c7e7</id>
    <icon>/meta?name=favicon&amp;content=wikisource_fr_all_nopic_2020-01</icon>
    <updated>2020-01-18T00:00::00:Z</updated>
    <summary>La bibliothèque libre.</summary>
    <tags>wikisource;_category:wikisource;_pictures:no;_videos:no;_details:yes;_ftindex:yes</tags>
    <link type="text/html" href="/wikisource_fr_all_nopic_2020-01" />
    <author>
      <name>Wikisource</name>
    </author>
    <link rel="http://opds-spec.org/acquisition/open-access" type="application/x-zim" href="http://download.kiwix.org/zim/wikisource/wikisource_fr_all_nopic_2020-01.zim.meta4" length="9626015744" />
    <link rel="http://opds-spec.org/image/thumbnail" type="image/png" href="/meta?name=favicon&amp;content=wikisource_fr_all_nopic_2020-01" />
  </entry>

Which will involve the addition of an Image Downloading Library, most likely Picasso to handle error prone list loading/caches.
The language of the entry no longer being explicit means that the headings we create for language when showing a list of downloaded books will possibly need to be removed.

Or is this ticket that I download the data with the query parameters and then pass the raw data to kiwixlib and it returns some parsed object list similar to what the app already consumes?

Is there a schema for the OPDS catalog and is there an interface definition for kiwixlib integration?

@macgills
Copy link
Contributor

does this endpoint support multiple languages active at once?

@kelson42 it does not appear to, this means our language selection will have to change to be singular and we will need a new source for where we read languages from, currently done by iterating over the library.

@kelson42 kelson42 modified the milestones: 3.2, 3.3 Feb 11, 2020
@macgills macgills added the OPDS Necessary for or dependent on OPDS implementation label Apr 1, 2020
@kelson42 kelson42 modified the milestones: 3.3, 3.4 Apr 4, 2020
@stale
Copy link

stale bot commented May 31, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be now be reviewed manually. Thank you for your contributions.

@stale stale bot added the stale label May 31, 2020
@kelson42 kelson42 modified the milestones: 3.4, 3.5 Aug 16, 2020
@stale stale bot removed the stale label Aug 16, 2020
@kelson42 kelson42 unpinned this issue Sep 10, 2020
@stale
Copy link

stale bot commented Oct 17, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be now be reviewed manually. Thank you for your contributions.

@stale stale bot added the stale label Oct 17, 2020
@kelson42 kelson42 pinned this issue Jul 2, 2022
@stale stale bot removed the stale label Jul 2, 2022
@kelson42 kelson42 unpinned this issue Aug 26, 2022
@kelson42 kelson42 pinned this issue Aug 26, 2022
@stale
Copy link

stale bot commented Sep 21, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be now be reviewed manually. Thank you for your contributions.

@kelson42
Copy link
Collaborator Author

kelson42 commented Oct 8, 2023

@kelson42 kelson42 closed this as completed Oct 8, 2023
@kelson42
Copy link
Collaborator Author

kelson42 commented Oct 8, 2023

@kelson42 kelson42 reopened this Oct 8, 2023
@stale stale bot removed stale labels Oct 8, 2023
@kelson42 kelson42 closed this as completed Oct 8, 2023
@kelson42 kelson42 reopened this Oct 8, 2023
@kelson42 kelson42 self-assigned this Oct 8, 2023
@kelson42 kelson42 closed this as completed Oct 8, 2023
@kelson42 kelson42 reopened this Oct 8, 2023
@kelson42 kelson42 closed this as completed Oct 8, 2023
@kelson42 kelson42 reopened this Oct 8, 2023
@kelson42 kelson42 closed this as completed Oct 8, 2023
@kelson42 kelson42 reopened this Oct 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement OPDS Necessary for or dependent on OPDS implementation
Projects
None yet
Development

No branches or pull requests

2 participants