Developer:KazooIntegrationOnIos
Introduction
This article describes how developers of controller apps on iOS can provide full integration for customers with Linn systems.
A 3rd party controller app can provide control of a Linn system using the OpenHome Media specification (ohMedia). For full ohMedia support a developer would need to invest a significant amount of time and resource, so Kazoo has been designed integrate seamlessly with other apps. This is done using the iOS custom URL scheme specified in this document. Once Kazoo has been launched, via a custom URL scheme, the user can return to the controller app by clicking the back button at the top of the screen.
The back button is only visible when Kazoo is launched using a custom URL scheme.
URL Specification
The table below to construct a custom URL to launch Kazoo.
scheme | kazoo | Launch Kazoo |
host | launch | Add a back button |
query keys | title | Title to be shown in title bar (optional) |
backButton | Text to be shown in back button | |
returnUrl | URL to launch or re-open controller app | |
room | Room to be select on launch of Kazoo (optional) | |
server | Media server to be select on launch of Kazoo (optional) | |
select | Name of UI screen to select (optional) home, music, radio, multi room etc | |
location | Location to browse to in the selected UI screen (optional) |
If any of the optional keys are not specified Kazoo will default where the user was last time that Kazoo was launched.
Note: All query key values must be escaped to be used in a URL.
Note: Kazoo 4.1.504 does not implement the query keys "select" and "location" but subsequent Kazoo releases will.
Examples
To open Kazoo and enable a user to return to a fictional controller app, "Integrater App", with a URL scheme, integrater, you would use the following Kazoo URL scheme,
kazoo://launch?backButton=Integrator App&returnUrl=integrator://
A particular room can be selected, as follows,
kazoo://launch?backButton=Integrator App&returnUrl=integrator://&room=Sitting Room
Starting in the radio station selection screen, as follow,
kazoo://launch?backButton=Integrator App&returnUrl=integrator://&room=Sitting Room&select=radio
A particular server in the "Album" container can be selected, as follows,
kazoo://launch? backButton=Integrator App&returnUrl=integrator://&room=Sitting Room&server=Media Library&select=music&location=/Album