Callisto as a Service Warranty Service
Callisto as a Service Warranty Services use the central Callisto Controller to pre-cache warranty information from various warranty providers.
Pre-requisites
You must be using the Callisto Central Controller. This is a good idea anyway as it's significantly more efficient than the local controller which is generally only recommended for testing Callisto. A new version of the controller was released to support this functionality, you will be prompted to upgrade in the admin page if needed.
Setup
All configuration is completed in the Administration node under External Services.

We must check both "Is enabled" and "Enable warranty caching". With only "is enabled" set you will be able to view the device warranty data in the device modal screen, but the warranty dashboard will not be populated.
We do not need any additional details for Microsoft and Toshiba/ProBook devices but we do for Dell and Lenovo.
Once these have been added to the admin area, we can move to the Warranty page.


When you click Yes the caching process will begin, how long this takes depends entirely on the number of clients, expect up to 10 minutes for 1,000 clients. The processing statistic will update every 5 seconds to show progress. You can navigate away from this page and the process will complete without you.



On completion the page will refresh and the warranty dashboard will be fully populated.

Clicking any client name will open the device modal, the warranty tab will be populated with details from the cached warranty data.

Technical Detail
The Callisto Warranty Caching service is an additional website created under IIS. It runs on port 5001 with a standard HTTP binding. This website is only referenced internally on this server by the Callisto Controller so cannot be SSL secured (we can't bind the Callisto Controller SSL certificate to localhost) and does not need to be.
Warranty data is retrieved by our warranty service which runs under this Callisto Warranty website. The vendor APIs work in different ways (for example Dell will provide bulk warranty details in blocks of 200 devices, whereas Microsoft must be queried one at a time), Callisto abstracts you from this and just handles everything internally.
Callisto queries ConfigMgr for all devices, we populate a small SQLite database with the serial number and manufacturer of each client. Then we submit the serial numbers to the relevant vendor warranty API and add the returned details to the SQLite database. It is this database that is used to populate the warranty dashboard with lookups against the ConfigMgr database simultaneously to present additional device data, such as username.
The SQLite database is stored in %ProgramData%CallistoWarranty which is C:\ProgramDataCallistoWarranty by default.
As with all other Callisto pages you can specify which users or roles have access to warranty info and can also control who has access to the update warranty action.
