Deeplinks naar de Workplace-app

Moeilijkheidsgraad: expert

Leerdoelen

Na het lezen van dit artikel kun je:

  • Vanuit externe apps naar Workplace linken

In één actie app en specifiek scherm openen.

Via website/webapp of andere app op hetzelfde apparaat.

Standaardapp op iOS en Android.

image-20221006-165838.png

Wat zijn deeplinks?

Aangepaste vooraf bepaalde URL’s openen een app, zoals navigatieknop die Maps met route start.

Vereisten

Voor activering:

  • Doelapp, hier De Workplace-app, geïnstalleerd
  • Bronapp roept aangepaste URL aan
  • Juiste opmaak en vereiste parameters

Workplace-deeplinks

Schermen:

  • Ruimte boeken
  • Liveplattegrond

URL-opbouw

Drie delen:

  • Scheme – Geregistreerd voorvoegsel dat appondersteuning aangeeft.
  • Host – Unieke app-/functieidentifier bij gedeeld scheme.
  • Parameters – String-sleutel/waardeparen.

Formaat:

PA://spacewell?targetview={0}&extraparam={1}&username={2}

Waarbij:

Scheme = PA://

Host = spacewell

Parameters = targetview, extraparam en username

Host en Scheme

Deze blijven constant zoals hierboven.

Scheme mag volledig hoofd- of kleine letters bevatten; bron noemt hoofdlettergevoeligheid.

Info

Niet mengen.

Toegestaan

PA://…. OF pa://….

Niet toegestaan

Pa://…. OF pA://….

Parameters

Verwachte waarden:

Sleutel

Doel

Verplicht

Details

targetview

Doelscherm

JA

Volgens bron één van vijf vooraf bepaalde waarden hieronder.

extraparam

Extra ID/waarde volgens targetview

Optioneel

Combinaties hieronder.

username

Workplace-gebruikersnaam of e-mail.

Zonder sessie identificatie voor login.

Met sessie dezelfde gebruiker in bron en Workplace controleren.

E-mail moet bij Workplace-gebruiker horen.

NEE

Indien username meegegeven:

Een niet-ingelogde gebruikerkrijgt dit vooraf ingevuld en automatisch juiste SSO-/authenticatieprocedure.

Andere gebruiker kiezen kan dan niet.

Een ingelogde gebruikerwordt vergeleken; bij verschil huidige sessie beëindigd en juiste login gestart.

Zonder username:

Geen vergelijking met bronapp.

Niet ingelogd: handmatig ID, iedere Workplace-gebruiker mag aanmelden.

Al ingelogd: sessie blijft zonder vergelijking.

 targetview/extraparam-combinaties

Onjuiste targetview geeft fout en terug naar bron. Terugnavigatie standaard alleen Android.

targetview

extraparam

Beschrijving

BOOK_ROOM

Niet nodig

Book a room voor zoeken.

FLOORPLAN

Optioneel

Liveplattegrond.

Met extraparam:

Verdieping-ID uit REST APIopent direct; binnen huidig gebouw.

Zonder extraparam:

Eerst verdieping kiezen, later onthouden; wisselen binnen gebouw mogelijk.

Gewist bij:

  • Andere gebruiker
  • Ander gebouw

Voorbeelden

Ruimte boeken

Structuur: PA://spacewell?targetview={0}&extraparam={1}&username={2}

{0} = BOOK_ROOM

{1} – “”

{2} = leeg of gebruikersnaam/e-mail

Voorbeeld: PA://spacewell?targetview=BOOK_ROOM

Probeer:

image-20230102-114314.png
QR voor PA://spacewell?targetview=BOOK_ROOM

Plattegrond openen

Structuur: PA://spacewell?targetview={0}&extraparam={1}&username={2}

{0} = FLOORPLAN

{1} = leeg of verdieping-ID

{2} = leeg of gebruikersnaam/e-mail

Algemeen: PA://spacewell?targetview=FLOORPLAN opent verdiepingskeuze indien meerdere

Concreet: PA://spacewell?targetview=FLOORPLAN&extraparam=910000000004545

Probeer:

image-20230102-131410.png
QR voor PA://spacewell?targetview=FLOORPLAN

Workplace vanuit een bronapp openen

Zoals web-URL: knop, browser Chrome/Safari of native iOS/Android.

Implementatievoorbeelden:

Xamarin iOS

string url = string.Format("PA://spacewell?targetview={0}&extraparam={1}&username={2}", viewName, extraParamValue, userName);

UIApplication.SharedApplication.OpenUrl(new NSUrl(url));

Xamarin Android

string url = string.Format("PA://spacewell?targetview={0}&extraparam={1}&username={2}", viewName, extraParamValue, userName);               

Android.Net.Uri uri = Android.Net.Uri.Parse(url);

Intent intent = new Intent(Intent.ActionView, uri);

StartActivity(intent);

Web/JavaScript

Doorverwijzing

window.location.replace("PA://spacewell?targetview=FLOORPLAN&extraparam=0000012345&username=aaa");

Link

<a href="PA://spacewell?targetview=FLOORPLAN&extraparam=0000012345&username=aaa">Floorplan</a>

Terug naar bronapp

Android

Standaard terug: Workplace sluit naar eerder geopende bronapp.

Vloeiende navigatie.

iOS

Bron gaat naar achtergrond; terug niet standaard beschikbaar.

Omgekeerde deeplink kan bronapp openen.

Bron-iOS-app heeft waarschijnlijk ontwikkeling nodig voor scheme:

pabacknavigation

 Aanpassingen:

  • AppDelegate: OpenURL implementeren, true retourneren.
image-20230102-110307.png
  • info.plist: custom URL scheme pabacknavigation
image-20230102-110317.png

Zonder terugnavigatie handmatig wisselen na Workplace-actie.