wcs/help/fr/api-workflow.page

83 lines
2.3 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<page xmlns="http://projectmallard.org/1.0/"
type="topic" id="api-workflow" xml:lang="fr">
<info>
<link type="guide" xref="index#api" />
<revision docversion="0.1" date="2013-01-04" status="draft"/>
<credit type="author">
<name>Frédéric Péters</name>
<email>fpeters@entrouvert.com</email>
</credit>
<desc>Workflow, états, transition, etc.</desc>
</info>
<title>Traitement dun formulaire</title>
<section>
<title>Synchrone</title>
<p>
Pour faire évoluer un formulaire en fonction de données extérieures, le
workflow peut contenir une action d<link xref="wf-wscall">appel à un
webservice</link> et enchaîner sur une série de sauts automatiques,
conditionnés par le résultat de lappel.
</p>
</section>
<section>
<title>Asynchrone</title>
<p>
Pour des traitements asynchrones, w.c.s expose également une API autorisant
les logiciels tiers à faire progresser le
traitement dun formulaire; cela passe par la définition dans le statut du
workflow dun élément de type « Changement de statut automatique », dans
lequel un identifiant de déclencheur est défini.
</p>
<p>
La demande dun changement détat se fait par une requête <code>POST</code> à
ladresse du formulaire en question, suivi de <code>jump/trigger/</code> et de
la référence à lidentifiant de déclencheur (<code>validate</code> dans
lexemple qui suit).
</p>
<p>
Lors de cette requête, il est nécessaire dinclure lentête
<code>Accept: application/json</code>.
</p>
<screen>
<input>POST https://www.example.net/inscriptions/newsletter/14/jump/trigger/validate/</input>
<output>{"url": null, "err": 0}</output>
</screen>
<p>
Il est également possible daccompagner le déclenchement dun changement
de statut dune série de données, qui seront enregistrées dans les données de
workflow du formulaire.
</p>
<p>
Il est également possible de définir des déclencheurs au niveau des actions
globales du workflow, ils pourront alors être appelés quel que soit le statut
de la demande.
</p>
<p>
Un tel appel, avec un déclencheur global ici intitulé <code>urgent</code> se
ferait ainsi :
</p>
<screen>
<input>POST https://www.example.net/api/forms/newsletter/14/hooks/urgent/</input>
<output>{"err": 0}</output>
</screen>
</section>
</page>