Offline provisioning

Hi,

We give each of our learners a tablet. One challenge we face with our current LMS, iSpring Learn, is that before a learner can run our course offline it needs to be downloaded from the Web to their tablet. For this we are reliant on mobile networks. What we are finding is whilst coverage is not a problem, consistent download speeds are and with a large cohort this provisioning step can take a long time.

I know Kolibri can be run totally offline via a LAN. However, what I am interested to know is could we use a local server via a LAN to provision our learner’s tablets, running the Kolibri Android app in learn-only mode, but then switch their devices to communicate with a server on the Web for syncing of quiz results, updates, etc.?

Thanks,
Richard

Hi Richard,

I’ll address this part of your question first:

what I am interested to know is could we use a local server via a LAN to provision our learner’s tablets, running the Kolibri Android app in learn-only mode,

Yes, and a benefit of provisioning learner tablets in learn-only mode is that the syncing of lessons, quizzes and progress is automatic between the tablet and the server, and only the relevant content needed for the lessons and quizzes will be synced when updates are pulled in.

To address the other question, can you say more about when this potential web server would be used and what your model looks like? In other words, where are the different locations that learners will be engaging with your course (at home, in a central learning space, etc)?

If it’s helpful, here’s a diagram of possible data flow. The central Kolibri server in this instance is an offline server, but could also be an online server:

Thanks Laura.

Happy to elaborate. I will use the course I just finished rolling out in Malawi, as an example.

Over the last two weeks we have brought our learners together in two central locations, one in South Malawi and one in North Malawi. During each week-long training, we have given them tablets, installed the iSpring Learn app and provisioned our video-first course content, which is about 1Gb in size. The way iSpring Learn works is that the course has to be uploaded to their online servers then downloaded to each tablet - this is what I am referring to as provisioning. Once a tablet is provisioned, a learner can cut their internet connection and access the content completely offline. At the end of the week’s training, our learners go back to their respective villages with their tablets. The only times they need to go back online for iSpring is to sync quiz results and access course updates.

So, back to my original question. My understanding is that with Kolibri we would download our course as a channel to a learner’s tablet. Is this correct? Assuming so, could we do this provisioning during the week-long trainings using a server on a LAN rather than an online server, to save downloading content via mobile networks, but then subsequently connect the learners’ tablets to an online server for quiz submissions and updates?

Also, a follow-up question based on your response: “syncing of lessons, quizzes and progress is automatic between the tablet and the server, and only the relevant content needed for the lessons and quizzes will be synced when updates are pulled in”. With iSpring Learn, online content is given a priority. This means, if the app detects an internet connection, it will access the online version of a course. So, to access the offline version (on a tablet), a learner has to cut their internet connection. This is a little bit of a pain, given they need to be online for other apps like WhatsApp. How does Kolibri work? Can a learner stay connected to the internet whilst accessing the locally downloaded channel?

Hi Richard,

Thanks for the additional details, it’s quite clear now. I’ll address your questions inline below:

My understanding is that with Kolibri we would download our course as a channel to a learner’s tablet. Is this correct? Assuming so, could we do this provisioning during the week-long trainings using a server on a LAN rather than an online server, to save downloading content via mobile networks,

Correct. You could provision a server device with Kolibri and the content first, and then can use a LAN to transfer the content to the tablets. You would follow the steps here and select “Local network” as the method for importing the channels.

but then subsequently connect the learners’ tablets to an online server for quiz submissions and updates?

This is technically possible if you were to set up an online instance of Kolibri (either setting one up yourself, or Learning Equality can set one up and host it as a contracted service that we offer), but this is only a model we have explored when syncing an offline server to an online server, not a Learner Only device to an online server.

I think 2 questions before we go further into the challenges and possibilities there, are

  1. How often would the learner devices be synced back with the offline server, if ever? Or would the offline server only be used for purposes of importing content over a LAN?
  2. Rather than setting up an online server to collect quiz submissions or push updates, how feasible is it either for learners to come back to a central place to sync with the offline server, or an admin to bring the offline server to sync with the learner devices?

The answer to these questions will also influence whether it makes sense to set up your tablets as Learn Only Devices, or as full facility devices, and whether an online server is really needed.

With iSpring Learn, online content is given a priority. This means, if the app detects an internet connection, it will access the online version of a course. So, to access the offline version (on a tablet), a learner has to cut their internet connection. This is a little bit of a pain, given they need to be online for other apps like WhatsApp. How does Kolibri work? Can a learner stay connected to the internet whilst accessing the locally downloaded channel?

Yes, an offline instance of Kolibri will run fully offline and won’t attempt to access the Internet. So the learners could keep the Internet on for apps like WhatsApp without interfering with the ability to access Kolibri offline.

Thanks @laura. Apologies for the delay in replying. I have been travelling.

To answer your two questions …

  1. The offline server would only be used for the purposes of importing content over a LAN. It is only of interest because it means we can provision our learners’ tablets without them or us having to go online to do it.
  2. See my previous answer. Whilst this is possible, it would add extra overhead. Our learners tend to come together in one central place at the beginning of our programme, but rarely after that.

Let me know if you need any further information, in order to provide some direction.

Hi Richard,

Thanks for the clarifications. I think the part about your setup that our model doesn’t currently support in a streamlined way is the need you mentioned to be able to “connect the learners’ tablets to an online server for quiz submissions and updates.” It is possible to set up an online server of Kolibri and have it sync periodically to an offline Kolibri server, but you would have to set up each learner tablet as a server with a full facility and we haven’t tested this model in practice.

What we have tested is a model where there’s an offline server in a central learning location (community center), and it periodically syncs to an online server. Learners could then access the online server on their mobile devices while away from the center, if they had Internet.

The learner device model we have designed for is one where the learner device isn’t housing a full facility, but rather only holds the data and content relevant for the particular learner, and can only sync offline to another offline server when it comes in local network range. So I think a key thing we don’t support there about your model is that a device set up for learn-only can’t sync to an online server, only an offline server. We also don’t typically recommend setting up full facilities on a learner tablet.

We also have a tool called Kolibri Data Portal, which serves as a place to aggregate learner data and is collected through online syncing. We are happy to share more about what data is revealed there if its of interest (we currently offer access to this tool as a paid service), but lesson and quiz data from a learner-only device would again first need to be synced offline to a server and it wouldn’t be a means for sharing updated content back to the devices.

Let me know if any clarifications are needed and happy to discuss this further.

Best,
Laura