Deeplink vanuit ECD naar nCare app

Wat houdt de koppeling in? #

Je kan in je ECD een extra knop (laten) maken binnen het cliëntendossier, waarachter een deeplink hangt die je direct naar de client leidt in de nCare iOS app.

In deze documentatie staat alle informatie die jouw ECD leverancier nodig heeft om er voor te zorgen dat dit werkend gemaakt kan worden binnen jouw ECD.

De deeplink is standaard gemaakt en kan door elke ECD gebruikt worden. Het kan zijn dat jouw ECD hiervoor nog iets moet ontwikkelen, dit kan buiten CareConnections om gebeuren.

Wat is er nodig om de koppeling te implementeren? #

External ID #

Deze deeplink moet worden aangevuld met een External ID uit het ECD. Het is aan jouw ECD leverancier om er voor te zorgen dat het ID gevuld wordt achter de url.

Voorbeeld van de Deeplink:

=> https://directnaar.ncare.nl/patient?externalId=(clientID uit ECD)

=> https://directnaar.ncare.nl/patient?externalId=144

Clientkoppeling #

nCare moet een clientenkoppeling hebben met jouw ECD, ander is het niet mogelijk om het cliënt ID uit het ECD te matchen met een cliënt in nCare.

App versie #

Om de deeplink functionaliteit te laten werken dient ten minste deze versie van de app gebruikt te worden, of hoger:

iOS App versie: >=  1.11.14

Mobile device management #

Indien gebruik gemaakt wordt van een MDM moet afhankelijk van het gekozen URL typen het volgende toegestaan worden.

Universal Link

https://developer.apple.com/ios/universal-links/

Services

Daarnaast dienen de volgende webservices bereikbaar te zijn (firewall):

Productie

https://directnaar.ncare.nl

https://soft.services.ncare.nl

De URL #

De service voert een strenge validatie uit op de meegegeven URL. Als die afwijkt van onderstaande format zal deze niet werken en een foutmelding weergeven. Wees secuur in het overnemen van alle delen van de URL en let op dat de juiste omgeving gebruikt wordt.

https://directnaar.ncare.nl/patient?externalId=

Universal Link #

De app is in te stellen op een omgeving: development, test, acceptatie en productie. Op het moment dat een URL geopend wordt in de app zal wel gecheckt worden of de URL bij de betreffende omgeving hoort. Als dat niet het geval is zal een melding weergeven worden.

Uitleg foutmeldingen #

App opent niet na klikken op Universal Link

Wanneer je wisselt tussen verschillende types van de app (AppStore, AppCenter, Test Flight) moet je het volgende aanhouden:

  • Verwijder het vorige type
  • Start het device opnieuw
  • Installeer het nieuwe type

Bijvoorbeeld:

  • Ik heb nu de AppStore versie geïnstalleerd en wil naar de Testflight versie
  • Verwijder de AppStore versie
  • Start device opnieuw
  • Installeer Testflight versie

Als je dit niet doet zal de app niet geopend worden als je op een link klikt. Daarnaast werken de deeplinks/universal links niet optimaal als je twee verschillende types gelijktijdig geïnstalleerd hebt, probeer dat dus te voorkomen.

Foutcodes #

Deze foutcodes kunnen op dit moment getoond worden aan de gebruikers. In de voorbeelden wordt meestal gebruik gemaakt van het veld: “id” in de URL. Hier kan echter ook een van de ander ondersteunde velden gebruikt worden zoals bijvoorbeeld “externalId”.

URI_STRING_EMPTY
Oplossen door: nCare
De service heeft een lege URL ontvangen van de app en kan daardoor niet bepalen wat geopend moet worden.

URI_STRING_CONVERSION_FAILED
Oplossen door: beheerder
Als deze melding weergeven wordt zit hoogstwaarschijnlijk een niet ondersteund teken in de URL die geopend wordt.
Voorbeeld
Fout: https://directnaar.ncare.nl|patient?id=1
Goed: https://directnaar.ncare.nl/patient?id=1

URI_UNKNOWN_SCHEME
Oplossen door: beheerder
Zal in de praktijk bijna niet voor komen maar kan voorkomen als de URL waarop geklikt wordt een ongeldig schema heeft. 9/10 keer zal de gebruiker een fout in Safari of van iOS krijgen maar in het zeldzame geval dat dat goed gaat zal deze melding getoond worden.

Voorbeeld
Fout: httpss://directnaar.ncare.nl/patient?id=1
Goed: https://directnaar.ncare.nl/patient?id=1

URI_ENVIRONMENT_MISMATCH
Oplossen door: gebruiker/beheerder
Komt voor als de service een link voor een andere omgeving ontvangt dan verwacht wordt. Als de gebruiker bijvoorbeeld in de app de “test” omgeving geselecteerd heeft en een link voor de productie omgeving opent zal deze melding getoond worden.

Voorbeelden
Fout:
• App: test
• https://directnaar.acceptance.ncare.nl/patient?id=1
Goed:
• App: test
• https://directnaar.test.ncare.nl/patient?id=1
Fout:
• App: productie
• https://directnaar.test.ncare.nl/patient?id=1
Goed:
• App: productie
• https://directnaar.ncare.nl/patient?id=1

TARGET_TYPE_CONVERSION_NOT_ENOUGH_SEGMENTS
Oplossen door: beheerder
Indien de URL geen type indicator bevat zal deze melding getoond worden.

Voorbeeld
Fout: https://directnaar.ncare.nl/?id=1
Goed: https://directnaar.ncare.nl/patient?id=1

TARGET_TYPE_CONVERSION_SEGMENT_UNRECOGNIZED
Oplossen door: beheerder
De type indicator in de URL wordt niet herkend door de service. Op dit moment ondersteund de service: patiënt.

Voorbeeld
Fout: https://directnaar.ncare.nl/niet-ondersteund?id=1
Goed: https://directnaar.ncare.nl/patient?id=1

TARGET_TYPE_EMPTY
Oplossen door: nCare
De service heeft een probleem met het doorgeven van de type indicator.

TARGET_TYPE_NOT_IMPLEMENTED
Oplossen door: nCare
De service heeft een probleem met het verwerken van de type indicator.

QUERY_STRING_CONVERSION_FAILED
Oplossen door: beheerder
Deze melding zal getoond worden als de URL een ongeldig teken bevat.

Voorbeeld
Fout: https://directnaar.ncare.nl/patient?ïd=1
Goed: https://directnaar.ncare.nl/patient?id=1

QUERY_STRING_KEY_UNRECOGNIZED
Oplossen door: beheerder
Deze melding zal getoond worden als de URL een key bevat die niet herkend wordt door de service. Op dit moment ondersteund de service: id, externalId.

Voorbeeld
Fout: https://directnaar.ncare.nl/patient?niet-ondersteund=1
Goed: https://directnaar.ncare.nl/patient?id=1

QUERY_STRING_KEY_DOUBLE
Oplossen door: beheerder
Deze melding zal getoond worden als de URL een dubbele key bevat.

Voorbeeld
Fout: https://directnaar.ncare.nl/patient?id=1&id=1
Goed: https://directnaar.ncare.nl/patient?id=1
Fout: https://directnaar.ncare.nl/patient?id=1&id=2
Goed: https://directnaar.ncare.nl/patient?id=1

QUERY_STRING_ID_PARAMETER_MISSING
Oplossen door: beheerder
De melding wordt getoond als de URL geen geldige identificatie methode bevat.
Fout: https://directnaar.ncare.nl/patient
Goed: https://directnaar.ncare.nl/patient?id=1

QUERY_STRING_COLLECTION_NULL
Oplossen door: nCare
De service heeft een probleem met het verwerken van de URL.

QUERY_STRING_ID_CONVERSION_FAILED
Oplossen door: beheerder
De melding wordt getoond als de identificatie methode geen geldig type heeft. Het “id” veld moet altijd numeriek zijn.
Fout: https://directnaar.ncare.nl/patient?id=abc
Goed: https://directnaar.ncare.nl/patient?id=1

QUERY_STRING_ID_TYPE_UNRECOGNIZED
Oplossen door: nCare
De service heeft een probleem met het verwerken van de URL.

PATIENT_OR_PLACEMENT_NOT_FOUND
Oplossen door: beheerder
De link bevat het id van een patiënt die:
• niet gevonden kan worden
• geen geldige verblijfplaats heeft
• geblokkeerd is
Controleer of het id van de patiënt in de URL overeenkomt met het id van de patiënt in nCare. Check vervolgens of de patiënt een geldige verblijfplaats heeft in het systeem en niet geblokkeerd is.

USER_PERMISSION_DENIED
Oplossen door: beheerder
De link bevat het id van een patiënt die waar de app gebruiker geen rechten voor heeft. Controleer of de gebruiker de juiste rechten heeft om de patiënt te mogen openen.

MESSAGE_EMPTY_SUCCESS_RESPONSE
Oplossen door: gebruiker/nCare
In de communicatie tussen de service en app is iets fout gegaan. De service heeft de link kunnen verwerken maar de app heeft data ontvangen die niet valide is. Controleer of de laatste versie van de app gebruikt wordt en de internetverbinding stabiel is.

MESSAGE_EMPTY_FAILURE_RESPONSE
Oplossen door: gebruiker/nCare
In de communicatie tussen de service en app is iets fout gegaan. De service heeft de link niet kunnen verwerken en de app heeft data ontvangen die niet valide is. Controleer of de laatste versie van de app gebruikt wordt en de internetverbinding stabiel is.

DATA_EMPTY_SUCCESS_RESPONSE
Oplossen door: gebruiker/nCare
In de communicatie tussen de service en app is iets fout gegaan. De service heeft de link kunnen verwerken maar de app heeft data ontvangen die niet valide is. Controleer of de laatste versie van de app gebruikt wordt en de internetverbinding stabiel is.

HTTP_FAILURE_RESPONSE
Oplossen door: nCare
De service heeft een fout veroorzaakt bij het verwerken van de link, probeer het later nog een keer.

UNABLE_TO_PARSE_RESPONSE
Oplossen door: gebruiker/nCare
In de communicatie tussen de service en app is iets fout gegaan. De service heeft de link kunnen verwerken en de app heeft data ontvangen die niet valide is. Controleer of de laatste versie van de app gebruikt wordt en de internetverbinding stabiel is.

UNABLE_TO_CONNECT_TO_SERVICE
Oplossen door: gebruiker/nCare
In de communicatie tussen de service en app is iets fout gegaan. De app heeft geen verbinding kunnen maken met de service. Controleer of de laatste versie van de app gebruikt wordt en de internetverbinding stabiel is.

ERROR_DESCRIPTION_EMPTY
Oplossen door: gebruiker/nCare
In de communicatie tussen de service en app is iets fout gegaan. De service heeft de link niet kunnen verwerken maar de app is niet in staat om de foutmelding uit de gegevens te halen. Controleer of de laatste versie van de app gebruikt wordt en de internetverbinding stabiel is.

LOCATION_NOT_FOUND_IN_DATABASE
Oplossen door: gebruiker/beheerder/nCare
De service heeft de link succesvol verwerkt en data teruggegeven aan de app. Op dit moment is de locatie niet bekend in de app. Dit kan bijvoorbeeld komen door:
• Rechten die aangepast zijn na inloggen gebruiker
• Locatie aangemaakt na inloggen gebruiker
• Onvoldoende rechten voor de gebruiker
• Oude app versie
De gebruiker kan proberen opnieuw in te loggen en de link opnieuw te openen. De beheerder zou de rechten van de gebruiker kunnen controleren.

DEPARTMENT_NOT_FOUND_IN_DATABASE
Oplossen door: gebruiker/beheerder/nCare
De service heeft de link succesvol verwerkt en data teruggegeven aan de app. Op dit moment is de afdeling niet bekend in de app. Dit kan bijvoorbeeld komen door:
• Rechten die aangepast zijn na inloggen gebruiker
• Afdeling aangemaakt na inloggen gebruiker
• Onvoldoende rechten voor de gebruiker
• Oude app versie
De gebruiker kan proberen opnieuw in te loggen en de link opnieuw te openen. De beheerder zou de rechten van de gebruiker kunnen controleren.