Het is mogelijk om automatisch een ander stuk content te triggeren nadat de eindgebruiker een bepaalde stap heeft afgerond in zijn module. Ook kan je voorwaardelijke (conditionele) triggers inbouwen.  Je kunt de volgende content types triggeren:

  • Dagboek
  • Module


Waar bouw je een trigger in?

Je kan een trigger zowel aan een normale pagina toevoegen als aan een verzendmoment of een mijlpaal. 


Wanneer gaat de trigger af?

De normale trigger gaat af wanneer de eindgebruiker de pagina/verzendmoment/mijlpaal passeert waar deze trigger is geplaatst. Een conditionele trigger gaat af bij het passeren van een verzendmoment 


Let op: Het content type 'dagboek' komt op de homepagina van de cliënt te staan zodra hij is getriggerd. Trigger je echter een module, dan wordt deze automatisch achter de vorige module geplaatst van de cliënt. De module loopt als het ware automatisch over in de volgende module. Trigger je meerdere modules? Dan worden deze in de volgorde achter de module geplaatst waarin je ze getriggerd hebt. Het is ook mogelijk om modules op de homepagina te laten verschijnen, door "new_modulelist": true toe te voegen aan je code. Hoe dit moet wordt verderop uitgelegd.


Hoe bouw je een trigger?

Hoe bouw je de trigger?

Je bouwt een trigger in een paar stappen. 

Kijk allereerst of je de rol editor hebt door te klikken op je profiel. Kijk bij 'groepen' of je de rol 'editor' hebt.  Is dit niet het geval? Benader dan eerst de beheerder van jouw CMS, zodat je de rol toegewezen kan krijgen.


Stap 1 

Het bouwen van een trigger doe je in de ruwe code van je module. Om bij de ruwe code te komen, moet je in de bewerk-modus zijn. Wanneer je in deze modus bent, verwijder al je tekst in de URL na het word ‘json’. Voeg na het verwijderen van deze tekst '/edit' aan de URL toe. Zie afbeelding:


Stap 2

Je zit nu in de ruwe code van je module. Als je goed kijkt dan kan je de verschillende elementen van je module in de code herkennen. Scroll naar de pagina waar je de trigger wilt toevoegen. Je kan het einde van een pagina herkennen door de tekst  "type": "page".


Stap 3

De juiste plek voor de trigger is na de tekst: "type": "page". Dit doe je door eerst een komma toe te voegen na "page" (,) en vervolgens de code uit onderstaande afbeelding toe te voegen.  


Je kunt deze code kopiëren voor een normale trigger, om de content in een bestaande modulelijst te laten verschijnen:

"triggers": [
            {
                "tool": [
                {
                    "id":"ID OF TO BE TRIGGERED CONTENT"                   
                  }
                ]
              }
            ]

Wil je liever de module op de homepagina laten verschijnen in een nieuwe module lijst? Voeg dan een "new_modulelist": true toe:

"triggers": [
            {
                "tool": [
                {
                    "id":"ID OF TO BE TRIGGERED CONTENT",
                    "new_modulelist": true
                  }
                ]
              }
            ]

Stap 4

Alles wat je nu nog moet doen is klikken op ‘opslaan en zien’ en de trigger is klaar. Wanneer je terug bent in de normale bewerk-modus, dan laat een bliksemschicht-icoon zien dat de trigger met succes is toegevoegd. Vanaf nu kan je direct navigeren naar de ruwe code door op deze bliksemschicht te klikken. Je hoeft niet langer de URL te bewerken om daar te komen.


Conditionele triggers

Conditionele triggers

Ook kan je een voorwaardelijke (conditionele) trigger toevoegen. Dit betekent dat content alleen getriggerd wordt als een eindgebruiker een specifiek antwoord geeft. Ter illustratie: Je kan een cliënt een vraag stellen of hij/zij graag een extra module over ontspanning zou willen doen. De client kan vervolgens met 'ja' of met 'nee' antwoorden. Alleen wanneer client met 'ja' antwoord, wordt de module klaargezet voor client. Hieronder staan een aantal stukjes aan code, die je volgens hetzelfde (zojuist beschreven) stappenplan kan toevoegen om zo je trigger in te bouwen. Alleen bij stap 3 gebruik je dus een ander stukje code.

Let op! de conditionele trigger functionaliteit werkt alleen voor tools die ook in de mobiele app beschikbaar zijn. Legacy modules, documenten en ROM screenings zijn hier niet geschikt voor.

Triggeren van een mobiele tool in een bestaande module lijst gebaseerd op een antwoord:

Met het volgende stukje code kan je een mobiele module triggeren op basis van een specifiek antwoord van de eindgebruiker. Gebruik bij stap 3 dit onderstaande stukje code. Hierbij is het van belang dat wanneer je in de ruwe code bent van jouw content, je het ID van de vraag zoekt in de code en het ID van het antwoord wat de eindgebruiker moet geven om te zorgen dat de nieuwe content wordt getriggerd. Dit zijn dus de voorwaarden waaronder de nieuwe content getriggerd wordt. Kopieer de ID's vervolgens in het stukje code. Voeg daarnaast uiteraard het ID toe van de nieuwe content die getriggerd moet worden.

"triggers": [
            { 
               "condition": [
                 "ID of question",
                  "==", 
                  "ID of answer"
                 ],
                "tool": [
                {
                    "id":"ID OF TO BE TRIGGERED CONTENT"
                  }
                ]
              }
            ]


Triggeren van een (mobiele) tool in een nieuwe module lijst, gebaseerd op een antwoord:

Dit stukje code werkt op dezelfde manier als het vorige stukje code, alleen wordt de getriggerde module in een nieuwe module lijst klaargezet. Dit betekent dat hij parallel klaarstaat voor de eindgebruiker in plaats van opeenvolgend. Als de module parallel klaar staat, dan kan de eindgebruiker er direct mee aan de slag. 

"triggers": [
            { 
               "condition": [
                 "ID of question",
                  "==", 
                  "ID of answer"
                 ],
                "tool": [
                {
                    "id":"ID OF TO BE TRIGGERED CONTENT",
                     "new_modulelist": true
                  }
                ]
              }
            ]


Triggeren van een tool (module, dagboek etc.) op de homepagina, gebaseerd op de score van een berekening (computation):

Je kan ook content triggeren op basis van de uitslag van een berekening. Hieronder staat een voorbeeldstukje code wat je kan gebruiken. Waar 'vraag1' staat komt dan de naam van de computation die je hebt gemaakt. computation:vraag1= de totaalscore van 'vraag1'. Waar het getal 2 staat, kan je zelf kiezen vanaf welke waarde je wilt dat de nieuwe content getriggerd wordt. De ">" is de operator, en betekent in dit geval dat de totaalscore van computation met de naam 'vraag1' groter moet zijn dan 2. Zodra de waarde hoger is dan 2, dan wordt de content getriggerd. Bij 'ID of tool' vul je het ID in van de content die je wilt triggeren. 


"triggers": [
               {
                 "condition": [
                   "computation:vraag1",
                   ">",
                   2
                 ],
                 "tool": [
                   {
                     "id": "ID of tool",
                     "new_modulelist": true
                   }
                 ]
               }
         ]


Je kan voor de conditionele trigger kiezen tussen verschillende operators:

Betekenis
Code
Is gelijk aan
==
Is niet gelijk aan
!=
Is groter dan
>
Is kleiner dan
<
Is groter of gelijk aan
>=
Is kleiner of gelijk aan
<=


Wil je meer weten over computations? Klik dan hier om naar de supportpagina over computations te gaan.(Opent in nieuwe venster)


 Vertraging in triggers 

Vertraging in triggers

Naast het definiëren van een ID en een conditie (voorwaarde) kan het eventueel handig zijn om content met een vertraging te activeren. Dit betekent dat de content pas na een bepaalde tijd getriggerd wordt. Hieronder is een voorbeeld van code met een ingebouwde vertraging van 8 weken:


"triggers": [
             {
              "tool":[
                       { 
                         "id": "ID of module",
                          "new_modulelist": true
                       }
                      ], 
                      "delay": "8w"
               }                 
          ]


Deze tabel geeft verschillende tijdsaanduidingen als optie die je in je code kan schrijven:

Betekenis
Code
Seconde
s
Minuut
min
Uur
h
Dag
d
Weekw
Maandm
Jaary