Customizing UI actions for the Now Mobile Agent application
Make it easier for your end users to get things done faster with the Field Service mobile application by creating custom UI actions.
The configurations for UI action conditions are different in Field Service mobile applications than those in the desktop application. Unlike the desktop application, the UI action conditions on mobile don’t execute any database queries and therefore don’t take up mobile resources. On the mobile application, instead of performing a system check on whether a Field Service configuration is enabled, you can configure the button to be active or inactive.
As an administrator, you can review the mobile UI actions and disable the ones that aren’t being used to use less mobile resources.
The following image shows the Now Mobile Agent application open in Studio. The Now Mobile Agent application open in Studio is where you can configure UI actions.
current.state == 16 && (new StateFlow().validFlow(current, '53d0aea8d7230100fceaa6859e610326', 'manual'));- The
SMconfigurationrecord to see if the accept_reject UI action is enabled or disabled using this script:(new sn_sm.SMConfiguration()).isEnabled(current, "accept_reject", false) - If the task has been self-assigned
- Don’t change the
current.state == 16condition. It checks for information on the current record. - If this condition:
is set to false, drop this condition and disable the corresponding mobile UI actions on the mobile application.(new sn_sm.SMConfiguration()).isEnabled(current, "accept_reject", false) - Set the value for the current tasks assigned to field parameter to the logged-in user as shown here:
current.assigned_to == gs.getUserID()
current.state == 16 && current.assigned_to == gs.getUserID()Here’s another sample configuration for self-assigning a task.
(new SMTask()).canAssignToSelf(current)SMTask.canAssignToSelf(task) script include method performs a system
check for these conditions:- State of the task
- Value of the scheduled start time
- If the task has been self-assigned
- If the user has the basic and agent roles as defined in the SM Configuration record
- Whether the user is part of a group handled by the task dispatch group
current.assigned_to != gs.getUserID() && !(current.expected_start.nil()) && (current.state == 10 || current.state == 16) For the fourth condition, you can add a
specific role to the Roles field.wot_assign_to_me write-back action
item:if (smTask.canAssignToSelf(wotGR))
smTask.assignToMe(gs.getUserID(), input.sys_id);
else
gs.addErrorMessage(gs.getMessage("Not a valid task assignment."));