Skip to content

Case Variables

tomolimo edited this page Sep 20, 2024 · 66 revisions

Some case variables are injected into the case by the plugin. At ticket creation and/or updates, from central interface and/or simplified interface. They can be used in the running case to get info from GLPI or to give back some info to GLPI.

These case variables can be used anywhere where variables can be used (Dynaforms, Triggers, Conditions, ...) see https://wiki.processmaker.com/3.2/Variables.

Variables in processes

Variables are used to send information to a case.

  • Some of them are read-only (noted below RO in Dir. column): a process can only read information from them. If it writes new values in them, it will have no effect in GLPI, and more than that the plugin may change the values if they have been changed in GLPI.
  • Some of them are read-write (noted below RW in Dir. column): a process can read them and write to them: the plugin sends information from GLPI, and use them to get information back to GLPI (and potentially do some actions).
  • Some of them are write-only (noted below WO in Dir. column). The plugin will use them to get information into GLPI (and potentially do some actions).
Variable Name & Description Dir. Event codes Values Notes
General variables
GLPI_URL: URL of the GLPI web application RO 1, 2 string 5
GLPI_ITEM_CAN_BE_SOLVED: To inform GLPI that item can be solved, even if case is still TO_DO WO 1, 2, 3 0 or 1 1
GLPI_SELFSERVICE_CREATED: Flag which exists only when case has been started via simplified (self-service) interface RO 2 1
GLPI_SEND_EMAIL: A JSON string which defines data for sending emails WO 3 string 3, 18, 19
GLPI_TASK_PREVENT_REASSIGN: a JSON string which is used to prevent given users to be reassigned to given tasks WO 3 string 20, 21
General item variables
GLPI_ITEM_TYPE: Type of the item that hosts the case RO 1, 2 string 2
GLPI_ITEM_ID: Item ID that hosts the case RO 1, 8 number
GLPI_ITEM_OPENING_DATE: Item opening date RO 1, 4 date 9, 15
GLPI_ITEM_DUE_DATE: Item due date field (renamed 'time to resolve' since GLPI 9.2) RW 1, 4, 7 date 3, 9
GLPI_TICKET_TYPE: Ticket type field (incident or request) RO 1, 2 1 or 2 11
GLPI_ITEM_ITIL_CATEGORY_ID: ITIL category of the item RO 1, 4 number
GLPI_ITEM_STATUS: Status of the item RW 1, 4, 7 1 to 12 3, 8, 16
GLPI_ITEM_URGENCY: Item urgency field RO 1, 4 1 to 5
GLPI_ITEM_IMPACT: Item impact field RO 1, 4 1 to 5
GLPI_ITEM_PRIORITY: Item priority field RO 1, 4 1 to 5
GLPI_TICKET_REQUESTTYPES_ID: Ticket request source RW 1, 4, 7 number 22
GLPI_ITEM_GLOBAL_VALIDATION: Item global validation field RO 1, 4 1 to 4 4
GLPI_ITEM_TITLE: Item title field (= name in database) RW 1 string 3
GLPI_ITEM_DESCRIPTION: Item description (= content in database) field RO 1 string
GLPI_SATISFACTION_QUALITY: Satisfaction survey RO 5 0 to 5
Item actors
GLPI_ITEM_REQUESTER_GLPI_ID: GLPI ID of the requester of the item RO 1, 2 number
GLPI_ITEM_REQUESTER_PM_ID: ProcessMaker GUID of the requester of the item RO 1, 2 string
GLPI_ITEM_TECHNICIAN_GLPI_ID: GLPI ID of the assigned technician of the item RO 1, 6 number
GLPI_ITEM_TECHNICIAN_PM_ID: ProcessMaker UID of the assigned technician of the item RO 1, 6 string
Variables that can be used to modify next task
GLPI_ITEM_TASK_CONTENT: to set description WO 7 string 3
GLPI_ITEM_TASK_STARTDATE: to set the start date WO 7 date 3, 9
GLPI_ITEM_TASK_ENDDATE: to set end date WO 7 date 3, 9
GLPI_ITEM_TASK_REMINDER: to set a reminder WO 7 number 3, 10, 16
GLPI_ITEM_TASK _GROUP: ProcessMaker group GUID to be assigned WO 7 string 3, 6, 16
Variables that can be used to modify current solved task
GLPI_ITEM_APPEND_TO_TASK: to append to task description WO 7 string 3
GLPI_ITEM_SOLVED_TASK_STARTDATE: to set the start date WO 7 date 3, 9, 14
GLPI_ITEM_SOLVED_TASK_ENDDATE: to set the end date WO 7 date 3, 9,14
GLPI_ITEM_SOLVED_TASK_SETINFO: to set the state to INFORMATION (this will change type of task from TODO to INFORMATION) WO 7 0 or 1 3, 14
Variables that can be used to create follow-ups 17
GLPI_ITEM_FOLLOWUP_CONTENT: follow-up description WO 7 string 3, 12, 17
GLPI_ITEM_FOLLOWUP_IS_PRIVATE: follow-up private flag WO 7 0 or 1 3, 12, 17
GLPI_ITEM_FOLLOWUP_REQUESTTYPES_ID: follow-up requesttypes_id WO 7 number 3, 12, 17
Variables that can be used to add a solution to item
GLPI_ITEM_SET_SOLUTION_TEMPLATE_ID: ID of solution template WO 7 number 3, 7, 13
GLPI_ITEM_SET_SOLUTION_TYPE_ID: ID of solution type WO 7 number 3, 7, 13
GLPI_ITEM_APPEND_TO_SOLUTION_DESCRIPTION: solution description WO 7 string 3, 7, 13

Event codes:

  1. Start of a case via central interface.
  2. Start of a case via simplified interface.
  3. At any time during case execution.
  4. At any update of the GLPI item.
  5. At satisfaction survey update.
  6. The plugin will assign to next task the GLPI group matching the ProcessMaker GUID.
  7. When a PM task is done. And before the next one
  8. Set right after save of first case task, when case is started via simplified interface (since release 3.1.6).

Notes:

  1. GLPI_ITEM_CAN_BE_SOLVED is set to 0 by plugin at case start, and is read by plugin whenever someone wants to solve the item. If at least one task of the process is 'to_do' and GLPI_ITEM_CAN_BE_SOLVED=0 then item cannot be solved. If you need to execute a process task after closing of item, then set this variable to 1 in the process (@@GLPI_ITEM_CAN_BE_SOLVED=1;). This variable is never reset by the plugin.

  2. GLPI_ITEM_TYPE contains either 'Ticket', 'Problem' or 'Change'.

  3. Value is reset by plugin to '' (empty string) after use.

  4. Possible values are 1 (=none), 2 (=waiting), 3 (=accepted) and 4 (=rejected). Is valid for Ticket and Change item types, for Problem is '' (empty string).

  5. Value may also contain doc root if needed, Ex: 'http://itsm.acme.com/glpi'

  6. GLPI_ITEM_TASK_GROUP => Is GUID of ProcessMaker group used for next Task. Must be set in a ProcessMaker trigger before assignment of next task. Must be used when:

  • Next ProcessMaker task assignment rule is 'Self Service' AND when several ProcessMaker groups have the rights to execute next task. or
  • Next ProcessMaker task assignment rule is 'Self Service Value Based Assignment'. More info on https://wiki.processmaker.com/3.2/Tasks#Assignment_Rules

This variable can also be used at any time when a group is assigned to a task and this group is a subset of the people with the rights to execute next task.

  1. This group of variables can be used to add a solution to an item. Depending on your business requirements about item solving, you may use one or more of these variables.
  2. The possible values are 1 (=new), 2 (=assigned), 3 (=planned), 4 (=waiting), 5 (=solved), 6 (=closed), 7 (=accepted), 8 (=observe), 9 (=evaluation), 10 (=approval), 11 (=test), 12 (=qualification).
  3. All date format must be: 'YYYY-MM-DD HH:mm:ss'. Y stands for year on 4 digits with leading zero, M stands for month on 2 digits with leading zero, D stands for day on 2 digits with leading zero, H stands for hour on a 24 format o 2 digits with leading zero, m stands for minute on 2 digits with leading zero, s stands for second on 2 digits with leading zero.
  4. A number of seconds before task start date. for example, if you need a reminder half an hour before the start date of the task then set this to the value 1800.
  5. Ticket type is either incident (= 1) or request (= 2). If item is not a Ticket, then Ticket type is '' (= empty string).
  6. This group of variables can be used to add a follow-up to an item. Depending on your business requirements, you may use one or more of these variables.
  7. Since release 3.3.0
  8. Since release 3.3.3
  9. Since release 3.3.5
  10. Since release 3.4.9
  11. Since release 3.6.3 (for GLPI 9.4), these case variables are replacing GLPI_TICKET_..., due to the fact that since GLPI 9.4, follow-ups can be added to Ticket, Change or Problem.
  12. Since release 3.4.12
  13. See Spontaneous eMails
  14. See Prevent reassignment
  15. Since release 3.4.25
  16. Since release 4.1.0

General notes:

  1. variables with TICKET in their names will be replaced in a near future (next release?) by ITEM to be more generic. Example: GLPI_TICKET_xxxx, will be replaced by GLPI_ITEM_xxxx, but kept when there is no equivalent variable for Change or Problem.
  2. plugin maintains both user's IDs, as a PM process knows only the PM user's UID, and GLPI knows only the GLPI user's ID.
  3. a case can run without these variables!

Deprecated variables

These variables are deprecated, and will be deleted in the future. They are all superseded by other variables that have names more representative.

Deprecated variable Superseded by variable
GLPI_TICKET_ID GLPI_ITEM_ID
GLPI_TICKET_REQUESTER_GLPI_ID GLPI_ITEM_REQUESTER_GLPI_ID
GLPI_TICKET_REQUESTER_PM_ID GLPI_ITEM_REQUESTER_PM_ID
GLPI_TICKET_TITLE GLPI_ITEM_TITLE
GLPI_TICKET_DESCRIPTION GLPI_ITEM_DESCRIPTION
GLPI_TICKET_DUE_DATE GLPI_ITEM_DUE_DATE
GLPI_TICKET_URGENCY GLPI_ITEM_URGENCY
GLPI_TICKET_TECHNICIAN_GLPI_ID GLPI_ITEM_TECHNICIAN_GLPI_ID
GLPI_TICKET_TECHNICIAN_PM_ID GLPI_ITEM_TECHNICIAN_PM_ID
GLPI_ITEM_SET_STATUS GLPI_ITEM_STATUS
GLPI_NEXT_GROUP_TO_BE_ASSIGNED GLPI_ITEM_TASK_GROUP
GLPI_ITEM_INITIAL_DUE_DATE GLPI_ITEM_DUE_DATE
GLPI_TICKET_GLOBAL_VALIDATION GLPI_ITEM_GLOBAL_VALIDATION
GLPI_TICKET_FOLLOWUP_CONTENT GLPI_ITEM_FOLLOWUP_CONTENT
GLPI_TICKET_FOLLOWUP_IS_PRIVATE GLPI_ITEM_FOLLOWUP_IS_PRIVATE
GLPI_TICKET_FOLLOWUP_REQUESTTYPES_ID GLPI_ITEM_FOLLOWUP_REQUESTTYPES_ID