Developer:KazooIntegrationOnIos

From LinnDocs
Revision as of 10:26, 19 November 2015 by Iainm (talk | contribs) (Examples)
Jump to: navigation, search

Introduction

This article describes how developers of control apps on iOS can provide full integration for customers with Linn systems.

A 3rd party control 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, tidal, multiroom, inputs
location Location to browse to in the selected UI screen (optional)
view View to select on launch of Kazoo (optional)
none or fullscreenheaderinfo

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 Id&select=music&location=/Album