Cloud Readiness / Oracle Field Service
What's New
Expand All


  1. Update 20B
  1. Revision History
  2. Overview
  3. Feature Summary
    1. Administration
        1. Show or Hide Activity Type on Where Is My Technician Screen
        2. Show the Time Notified for Where Is My Technician
    2. Android and iOS Applications
        1. Browse Local Files in Android and iOS Applications
        2. Set Camera Permissions to Use Barcode Scanner
    3. APIs
        1. Bulk-Upload Activities Even for Unavailable Resources
        2. Create Activity Links for Segmentable Activities
        3. Retrieve Additional Parameters for an Activity
        4. Retrieve Work Zones or Work Skills for a Resource Using a Date Range
    4. Core Application
        1. Core Application Improvements
        2. Dispatch Map: Draw a Polygon to Select Activities
        3. Edit Fields in the Main Screen of Activity Details and Screen Navigation
        4. Highlight On-Calls on Resource Calendar
        5. Navigate to Internal Screens and Plug-Ins in Native and Core Application
        6. Oracle Digital Assistant (ODA) Integration for Where Is My Technician
        7. Preserve Metadata When Taking Images from Camera
        8. Set Action Time in Core Application
        9. Separate Travel Code for Real-Time Traffic Update
        10. Support of Initial Ratio for Resource in Core Application
        11. View Daylight Saving Time Changes in Core Application
    5. Collaboration
        1. Enable Helpdesk with Oracle Digital Assistant
        2. Receive Collaboration Notifications as Android Push Notifications

Update 20B

Revision History

This document will continue to evolve as existing sections change and new information is added. All updates appear in the following table:

Date Feature Notes
17 APR 2020   Created initial document.

Overview

This guide outlines the information you need to know about new and improved functionality in Oracle Field Service Update 20B. Each section includes a brief description of the feature, the steps you need to take to enable or begin using the feature, any tips or considerations that you should keep in mind, and the resources available to help you. For a listing of browsers supported by Oracle Field Service, log in to our support site and access Answer ID 8415.

Oracle Field Service Best Practices Guide: Please be sure to download our Oracle Field Service Best Practices Guide found on the Oracle Service Cloud Support Portal Answer ID 8215 (requires a login). This book contains many helpful hints and suggestions to help you improve and get the full benefit from your Oracle Field Service subscription.

ANNOUNCEMENTS FOR THIS UPDATE

  1. The Activity Management, Resource Management, HISTORY and Smart Location SOAP APIs will be removed with the 20C (August 2020) Update. If you have not already migrated to the REST APIs, we strongly encourage you to migrate to them between now and July 2020.

  2. For customers using SAML Authentication, the option ‘SHA-1’ is being removed with 20B (May 2020). Customers must update their Hashing Algorithm to SHA-256.

  3. We have pushed the removal of Core Manage to the August 2020 Update. In preparation for migrating to the Core Application, we strongly encourage you to begin configuring the Application Screens between now and June 2020 for each User Type in your configuration. This will ensure that you are prepared for the removal of the Legacy Core Manage screens with the 20C (August 2020) Update.

  4. The https://api.etadirect.com URL scheme, used to access Oracle Field Service APIs is deprecated and being removed as part of the upcoming OCI data center migration. Prior to the OCI migration, you will be required to change the URL. Review and change your current integrations and if needed change the URLs to use https://<instance_name>.etadirect.com. The instance name is available on the Configuration > About screen of the OFS application. Alternatively, you can use the alternate instance name displayed in service console. We recommend making the change in TEST first and then applying that change to your Production instance.

GIVE US FEEDBACK

We welcome your comments and suggestions to improve the content. Please send us your feedback at https://documentation.custhelp.com/ci/documents/detail/5/4/12.

Feature Summary

Column Definitions:

Features Delivered Enabled

Report = New or modified, Oracle-delivered, ready to run reports.

UI or Process-Based: Small Scale = These UI or process-based features are typically comprised of minor field, validation, or program changes. Therefore, the potential impact to users is minimal.

UI or Process-Based: Larger Scale* = These UI or process-based features have more complex designs. Therefore, the potential impact to users is higher.

Features Delivered Disabled = Action is needed BEFORE these features can be used by END USERS. These features are delivered disabled and you choose if and when to enable them. For example, a) new or expanded BI subject areas need to first be incorporated into reports, b) Integration is required to utilize new web services, or c) features must be assigned to user roles before they can be accessed.

Ready for Use by End Users
(Features Delivered Enabled)

Reports plus Small Scale UI or Process-Based new features will have minimal user impact after an update. Therefore, customer acceptance testing should focus on the Larger Scale UI or Process-Based* new features.

Action is Needed BEFORE Use by End Users
(Features Delivered Disabled)

Not disruptive as action is required to make these features ready to use. As you selectively choose to leverage, you set your test and roll out timing.

Feature

Report

UI or
Process-Based:
Small Scale

UI or
Process-Based:
Larger Scale*

Administration

Show or Hide Activity Type on Where Is My Technician Screen

Show the Time Notified for Where Is My Technician

Android and iOS Applications

Browse Local Files in Android and iOS Applications

Set Camera Permissions to Use Barcode Scanner

APIs

Bulk-Upload Activities Even for Unavailable Resources

Create Activity Links for Segmentable Activities

Retrieve Additional Parameters for an Activity

Retrieve Work Zones or Work Skills for a Resource Using a Date Range

Core Application

Core Application Improvements

Dispatch Map: Draw a Polygon to Select Activities

Edit Fields in the Main Screen of Activity Details and Screen Navigation

Highlight On-Calls on Resource Calendar

Navigate to Internal Screens and Plug-Ins in Native and Core Application

Oracle Digital Assistant (ODA) Integration for Where Is My Technician

Preserve Metadata When Taking Images from Camera

Set Action Time in Core Application

Separate Travel Code for Real-Time Traffic Update

Support of Initial Ratio for Resource in Core Application

View Daylight Saving Time Changes in Core Application

Collaboration

Enable Helpdesk with Oracle Digital Assistant

Receive Collaboration Notifications as Android Push Notifications

Administration

Show or Hide Activity Type on Where Is My Technician Screen

Earlier, the activity type was shown on the Where is My Technician screen by default, without the ability for you to show or hide it. Starting with 20B, you can show or hide the activity type. The activity type is selected by default for all new themes.

Hide the activity type on the Where is My Technician screen

  1. Click Configuration, Themes.
  2. Click the stack icon for the Where is My Technician theme that you want to edit and click Edit.
  3. Click Technician and Map and clear the Show activity type check box. This screenshot shows the Technician and Map section on the Where is My Technician theme: 

Technician and Map screen showing the 'Show activity type' check box

  1. Click Save. The activity type is hidden for the templates. These images show the activity type shown and hidden on all the templates:

Template: Bright; Activity Type: Shown

Template: Bright; Activity Type: Hidden

Template: Hero; Activity Type: Shown

Template: Hero; Activity Type: Hidden

Template: Minimal; Activity Type: Shown

Template: Minimal; Activity Type: Hidden

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

Show the Time Notified for Where Is My Technician

Earlier, you could show the 'Delivery window', or 'Service window' using the {ARRIVAL TIME RANGE} placeholder. Starting with 20B, you can show 'Time Notified' on the {ARRIVAL TIME RANGE} placeholder.  You can set the value for Time Notified through a Message Step with the Outbound API using 'send_message’.  If you set the value, it is used on the Where's My Technician screen, instead of the Delivery Window or Service Window. If 'Time Notified' is not populated then Delivery Window or Service window is shown.

You can choose to use ETA, Delivery Window, or Service Window as 'Time Notified'. For example, you can save the ETA, which you communicated to your customer and the Where is My Technician screen shows this time, even if the technician adjusts the previous activity. This way, the feature also prevents the application from updating the agreed time automatically.

How to Use

  1. Create an activity for the customer.
  2. Open the message scenario that you have configured for Where is My Technician. In the ‘Customer notification time’ field on the Settings tab, select the value that you want to display for 'Time Notified'. You can select either Service window, Delivery Window, or ETA. This screenshot shows the Add scenario step screen:
  3. Open the Where is My Technician theme and go to the Localization tab. Click the {ARRIVAL TIME RANGE} placeholder. {ARRIVAL TIME RANGE} is available only for "Not Assigned" and "assigned" activity statuses. The value you have selected for ‘Customer notification time’ in the message scenario is displayed on the Where is My Technician screen. If you have configured the ‘Time Notified’ field to receive the value from an outbound API response using ‘send_message’, it is displayed. This screenshot shows the {ARRIVAL TIME RANGE} placeholder on the Localization tab:

{ARRIVAL TIME RANGE} shows the arrival window according to the availability of these values with their priority:

  Priority of Values for: Activity on the Bucket (Not Assigned) Priority of Values for: Activity Assigned to a Technician (Assigned)
Days before screen
  1. Time Notified:
  • Service window
  • Value returned through Outbound response message
  1. Service Window
  1. Time Notified
  • Delivery window
  • ETA
  • Service window
  • Value returned through Outbound response message
  1. Delivery Window
  2. Service window

This table shows the value of Time Notified that is displayed on the Where is My Technician screen when Service Window or ETA is selected:

Message Scenario Configuration for ‘Customer notification time’ ‘Time Notified’ on the Activity Details Screen ‘Time Notified’ on the Where is My Technician Screen
Service Window     01 PM – 03 PM
ETA

When Time Notified is configured to display the ETA (Activity Start Time) property on the message scenario then the placeholder displays as a single time field on the Where is My Technician screen.

Steps to Enable

You don't need to do anything to enable this feature.

Tips And Considerations

Tips on how to setup and use Time Notified with a custom window:

  1. Go to Configuration - Message Scenarios 
  2. Open the message scenario that you have configured for Where is My Technician.
  • If not configured, the Recipient should be set to Customer in the Settings Tab. Select the Customer notification time field and select the value that you want to display for Time Notified. You can select either Service window, Delivery Window, or ETA.
  1. A custom window can be set using the Outbound API ‘send_message’. Please see the Outbound API documentation for more information on using ‘send_message’
  2. The {ARRIVAL TIME RANGE} shows the arrival window according to availability of these values and their priority: 

NOTE: If Time Notified is set with a custom window, this value will not be removed or changed if the activity is moved to another resource or bucket. You should consider this behavior in your design and make any necessary updates to the window according to your business process.

Key Resources

Android and iOS Applications

Browse Local Files in Android and iOS Applications

Starting with 20B, based on the operating system version and the third-party software you have installed, you can select the file location and upload files to Oracle Field Service from the photo library or a third-party storage device using the file property.

Steps to Enable

To select and upload files to Oracle Field Service from the photo library, follow these steps:

  1. Log in to Oracle Field Service as a user.
  2. Click Upload from the file property element.
  3. Select a file from a photo library or browse local files (may include third party storage based on the installed software).
  • Apple devices
    • iOS

      Upload Files in Apple iOS

    • iPadOS

      Upload Files in Apple iPadOS

  • Android devices

Standard prompt depends on actual version of Android OS

Upload Files in Android

  1. Click Download.
  • Apple devices:
    • iOS

      Download Files from iOS

    • iPadOS

      Download Files from iPadOS

  • Android devices

    App for Android saves the file to the Download folder and notifies the user.

    Download Files from Android

Points to note:

  • File property is always shown as a link on the form.
  • iOS application does not prevent users from using features such as 3D.
  • iOS allows users to edit image thumbnails for the image type. However, similar option is not available in Android OS.

Key Resources

Set Camera Permissions to Use Barcode Scanner

The native apps (Android or iOS) must have the necessary permissions to access the device camera for the barcode scanner functionality. When you try to use the Barcode scanner for the first time, if the camera permissions are missing, the app prompts for the permission. Clicking Enable now lets the technician to use barcode scanner.

Steps to Enable

To enable permissions in Android devices:  

  1. When you try to use the barcode scanner for the first time, a message to let Oracle Field Service access the camera to capture photos and scan barcode or QR code appears:

 

Android Permissions for Camera

  1. Click Allow to allow the barcode scanner plug-in to use the camera to scan the barcode.

If you click Deny, the app displays the message ‘Please provide access to camera in order to capture photos and scan barcode/QR code’ every time you access the barcode scanner from within the app. 

 

Android Notification to Allow Access to Camera

  1. Click Enable now to let the technician use the barcode scanner.

To enable camera permissions in iOS devices: 

  1. When you try to use the barcode scanner for the first time, a message to let Oracle Field Service access to camera to capture photos and scan barcode or QR code appears:

 

iOS Permissions for Camera

  1. Click OK to allow the barcode scanner plug-in to use the camera to scan barcode.

If you click Don’t Allow, the app displays the message, ‘Please provide access to camera in order to capture photos and scan barcode/QR code’ every time you access the barcode scanner from within the app. 

 

iOS Notification to Allow Access to Camera

  1. Click Enable now to let the technician use the barcode scanner.

Key Resources

APIs

Bulk-Upload Activities Even for Unavailable Resources

Starting with 20B, a new parameter of 'fallbackResourceId' was added to the “Bulk update activities” REST API. You can use the fallbackResourceId field to specify a backup resource, if the target resource is invalid or absent. 

For example - an external system tries to create activities but a resource, specified as the target is non working or inactive. If the parameter "fallbackResourceId" is specified and valid, such activities will not be rejected but will be successfully created in that bucket.

The "resourceId" parameter is not mandatory and may be omitted in the response if the "fallbackResourceId" is provided.

If the fallback resource was used, the information about that and the reasons are provided in the response "warnings" output structure.

The fallback bucket is used only for new activities. The processing rules are as follows:

  • For insert activity operation. If activity can't be assigned to resource in activity.resourceId, then system attempts to assign the activity to the resource specified in the fallbackResourceId. If the fallbackResourceId is empty or invalid, then insert operation fails.
  • For an update activity operation. If activity can't be re-assigned to some provider due to some reason, then that activity will remain with its current assignment, fallbackResourceId will not used.

The enhancement retains backward compatibility and requests without "fallbackResourceId" will be processed as they were in previous versions.

Steps to Enable

Review the REST service definition in the REST API guides, available from the Oracle Help Center > your apps service area of interest > REST API. If you're new to Oracle's REST services you may want to begin with the Quick Start section.

Key Resources

Create Activity Links for Segmentable Activities

Starting with 20B, you can create a link between regular and segmentable activities for the following link types and constraints:

  • Simultaneous (Segmentable and Regular activities): no constraints available
  • Regular activity Finish to Segmentable activity Start: Same Day, Same Provider
  • Segmentable activity Finish to Regular activity Start: SameDay, SameProvider, DifferentProviders
  • Segmentable activity Start to Regular activity Start: Different Providers

All other link types and constraints between segmentable activities (segmentable activities segments) are not supported.

The API functions related to activity links do not have any changes in their requests or responses. The difference is that for the activity links described above, the API will not return an error but will successfully create the link.

Steps to Enable

Review the REST service definition in the REST API guides, available from the Oracle Help Center > your apps service area of interest > REST API. If you're new to Oracle's REST services you may want to begin with the Quick Start section.

Key Resources

Retrieve Additional Parameters for an Activity

Prior to 20B, users could use some activity fields to obtain in the user interface. Starting with 20B, four new parameters can be obtained in REST API responses.

Field Label API Parameter Description 
acoord_accuracy coordinateAccuracy Coordinate accuracy of activity. The following values are returned:
  • Low
  • Medium
  • High
auto_routed_to_date autoRoutedToDate A date to which the activity was moved automatically by routing. This value is not changed when the activity is rescheduled manually or via API 
auto_routed_to_resource autoRoutedToResource

External Id of resource to which the activity was last assigned by routing. This value is not changed when the activity is reassigned manually or via API 

travel_estimation_method travelEstimationMethod

Travel estimation method. The following values are returned:

  • Not estimated

  • Using Defaults

  • Statistics

  • Airline Distance

  • Airline Distance and Statistics

  • Manual Adjustment

  • Street Level Routing

  • External Adjustment

  • Same Location

  • Real-time traffic

You can retrieve these parameters using the REST API methods:

  • Get an activity
  • Get activities
  • Get activity types
  • Update an activity
  • Search for activities
  • Get events

NOTE: The fields are only available as read-only values and cannot be updated via API.

Steps to Enable

Review the REST service definition in the REST API guides, available from the Oracle Help Center > your apps service area of interest > REST API. If you're new to Oracle's REST services you may want to begin with the Quick Start section.

Key Resources

Retrieve Work Zones or Work Skills for a Resource Using a Date Range

Starting with 20B, you can retrieve work zones or work skills assigned to a resource using a date range. You can retrieve the necessary records by providing the dateFrom and dateTo query parameters for the REST API methods: Get work zones and Get work skills. This can be helpful when looking for date from a particular time range.

Here are some request examples:

  • GET /rest/ofscCore/v1/resources/{resourceId}/workZones?dateFrom=2020-01-01 would return only entities which are actual for 2020-01-01 and any date after
  • GET /rest/ofscCore/v1/resources/{resourceId}/workZones?dateFrom=2020-01-01&dateTo=2020-01-31 would return only entities which are actual for any date in January 2020
  • GET /rest/ofscCore/v1/resources/{resourceId}/workSkills?dateFrom=2020-01-01 would return only entities which are actual for 2020-01-01 and any date after
  • GET /rest/ofscCore/v1/resources/{resourceId}/workSkills?dateFrom=2020-01-01&dateTo=2020-01-31 would return only entities which are actual for any date in January 2020

Updated API endpoints:

Get work zones

Path:

  • GET /rest/ofscCore/v1/resources/{resourceId}/workZones

Query parameters:

  • dateFrom (optional) - indicates start date of the search for active work zones

  • dateTo (optional) - indicates end date of the search for active work zones

Success response:

Response status is '200 OK'.

Response body contains:

  • items - the list of the work zones which fit query parameters criteria, empty if fit nothing
  • totalResults - number of found work zones, 0 if fit nothing
  • links - canonical and described by links

Error response:

Response status is '400 Bad Request' in case:

  • dateFrom and (or) dateTo have wrong format
  • dateTo is specified, but dateFrom is not
  • dateFrom > dateTo

Response example:

"items"

: [      

    {                  "workZoneItemId": 470956,         "workZone": "ActivityBookingWZ1",                     "startDate": "2020-01-06",         "endDate": "2020-01-06",         "ratio": 100,                 "recurrence": "daily",         "recurEvery": 1,         "type": "regular"     },       

    {         "workZoneItemId": 470957,                     "workZone": "ActivityBookingWZ2",         "startDate": "2020-01-07",         "endDate": "2020-01-07",         "ratio": 100,         "recurrence": "daily",         "recurEvery": 1,         "type": "regular"         },     {         "workZoneItemId": 470958,                     "workZone": "ActivityBookingWZ3",         "startDate": "2020-01-08",         "endDate": "2020-01-08",         "ratio": 100,         "recurrence": "daily",         "recurEvery": 1,         "type": "regular"         },       {         "workZoneItemId": 470959,                     "workZone": "ActivityBookingWZ4",         "startDate": "2020-01-09",         "endDate": "2020-01-09",         "ratio": 100,         "recurrence": "daily",         "recurEvery": 1,         "type": "regular"         },     {         "workZoneItemId": 470960,                     "workZone": "ActivityBookingWZ5",         "startDate": "2020-01-10",         "endDate": "2020-01-10",         "ratio": 100,         "recurrence": "daily",         "recurEvery": 1,         "type": "regular"         }       ],  

    "totalResults": 5,     "links"     : [               {                         "rel": "canonical",             "href": "https://frontend.ofsc.team/rest/ofscCore/v1/resources/LazyWorker/workZones"             },

        {                         "rel": "describedby",             "href": "https://frontend.ofsc.team/rest/ofscCore/v1/metadata-catalog/resources"             }     ]  }

Get work skills

Path:

  • GET /rest/ofscCore/v1/resources/{resourceId}/workSkills

New query parameters:

  • dateFrom - indicates start date of the search for active work skills
  • dateTo - indicates end date of the search for active work skills

Success response:

Response status is '200 OK'.

Response body contains:

  • items - the list of the work skills which fit query parameters criteria, empty if fit nothing
  • totalResults - number of found work skills, 0 if fit nothing
  • links - canonical and described by links

Error response:

Response status is '400 Bad Request' in case:

  • dateFrom and (or) dateTo have wrong date format
  • dateTo is specified, but dateFrom is not
  • dateFrom > dateTo

Response example:

"items" : [           {               "workSkill": "ResManAPIGroup1"         "ratio": 100,         "startDate": "2020-01-06",         "endDate": "2020-01-07",     },            {               "workSkill": "ResManAPIGroup2"         "ratio": 100,         "startDate": "2020-01-07",         "endDate": "2020-01-09",     },         {               "workSkill": "ResManAPIGroup3"         "ratio": 100,         "startDate": "2020-01-09",         "endDate": "2020-01-10",     },   ],  

    "totalResults": 3,     "links"     : [               {                         "rel": "canonical",             "href": "https://frontend.ofsc.team/rest/ofscCore/v1/resources/LazyWorker/workSkills"             },         {                         "rel": "describedby",             "href": "https://frontend.ofsc.team/rest/ofscCore/v1/metadata-catalog/resources"             },      ]  }

Steps to Enable

Review the REST service definition in the REST API guides, available from the Oracle Help Center > your apps service area of interest > REST API. If you're new to Oracle's REST services you may want to begin with the Quick Start section.

Key Resources

Core Application

Core Application Improvements

Starting with update 20B, these improvements are available in Core Application:

ACTIVITY AND RESOURCE HINTS

Earlier, activity and resource hints behaved differently in Dispatch Console and on the Manage screen (Supervisor view). Further, some functions were present only in Legacy Manage and not in Dispatch Console. Now, Activity and resource hints show all the configured links at the bottom of the hint on all the screens, in the same way they are displayed in the hints in Dispatch Console.

  • Activity hints in Dispatch Console show a small map view of the location, if available, as it was shown in the Manage screen.
  • The links 'Show Non-scheduled..." and "Show Scheduled..." are shown only in hints within the Dispatch Console screen. They are not shown in hints within other screens.

This screenshot shows the activity hint with the map:

Activity hint with the map

Activity Hint Showing Map

  • In smaller screens, Activity hints opened from Search results are displayed in a full screen, similar to how it is displayed when opened from Dispatch Console. This image shows the search and search results on a small screen:

Activity search and results on a small screen

Search and Search Results

ACTIVITY COLORS

Colors that you configure for activity statuses on the Add activity type screen are shown throughout the application (for example Core Application Manage screen, Search results, Activity list screen, My Route screen) and not just the Dispatch Console. This screenshot shows the color scheme for the activity on the Add activity type screen:

Color Scheme for Activity

This screenshot shows the Manage screen with the activity color scheme applied:

Manage screen with the activity color scheme applied

Manage Screen Showing Color Scheme

ACTIVITY HISTORY:

You can filter data using each column on the activity History screen, the same way you can filter in Legacy Manage.

  • In the Action time column, select any one of the listed times or select 'All' to include records without any time restrictions.
  • Use the check boxes in the Action and User columns to filter records based on the existing actions in the table.
  • Use the free text field to filter data in the Changes column. All rows with matching text are displayed.
  • Click the user name in the User column to see the Interface and User Agent. Interface is the Oracle Field Service module from which you have updated the activity. User Agent provides the details of the browser from which you have accessed Oracle Field Service.

This screenshot shows the History screen:

Activity History screen with the filter for each column

Activity History Screen

This screenshot shows the Action time column with the filter options:

Action time column with the filter options

Activity Details Showing Action Time Column

This screenshot shows the Action column with the filter options:

Action column with the filter options

Activity Details Showing Action Time Filter Options

This screenshot shows the Changes column with the Search field:

Changes column with the Search field

Activity Details Showing Changes Column

This screenshot shows the User column with the filter options:

User column with the filter options

Activity Details Showing User Column

This screenshot shows the hint for the user in the User column:

Hint for the user in the User column

Activity Details Showing User Hint

Steps to Enable

You don't need to do anything to enable this feature.

Dispatch Map: Draw a Polygon to Select Activities

Earlier, you could draw a polygon and select activities only on the Scheduling Layer in the Route map. Starting with 20B, the function has been extended to the Dispatch Console map as well. This change is not applicable to Legacy Manage. The lasso icon is displayed in top right corner of the Dispatch Console map when any of following conditions is valid:

  • Bucket or group is selected in resource tree
  • 'Show non-scheduled' is enabled

Activities that are scheduled and assigned to a resource's route are not available using this functionality.

DRAW A POLYGON TO SELECT NON-SCHEDULED ACTIVITIES

  1. Select a bucket or a group in the resource tree.
  2. Navigate to the Dispatch Console map and select 'Show non-scheduled'.
  3. Click the lasso icon. The application switches to drawing mode and the message, 'Outline area to select activities' is displayed on top of the map.
  4. Draw an enclosed shape using the lasso. The activities located inside the shape are displayed in the right panel on the map. All clustered activities are selected as well. Route activities (or scheduled activities) are not considered for selection. Activities in the right panel are ordered according to their priority set in the ‘Non-scheduled and Not assigned activities map markers’ section on the Business Rules screen. In addition, markers, if any, are shown for the activities in the right panel.
  5. To select the activities for further action, click the required check boxes in the right panel. The number and total duration of the selected activities is displayed on top of the panel. You can perform these functions with the selected activities:
  • Drag and drop the activity to a resource on the resource tree.
  • Click Move to move the activities to the current resource.
  1. To exit the drawing mode, close the message.

SHOW SELECTED ACTIVITIES ON THE DISPATCH MAP

When you select multiple activities on the Dispatch map (by drawing polygon or selecting clustered activity), the selected activities appear on the right panel on the map.

Dispatch Panel Showing Selected Activities Within the Polygon

When marking one or several activities in the panel, the top panel displays the number and total duration of marked activities.

To assign them to other resources user can:

  • Drag the marked activities to the resource from the tree
  • Move functionality after clicking on the Move action at the top of the panel

Activities in the panel are listed according their priority (Urgent, Under risk) of markers if defined on the Configuration > Business Rules - Non-scheduled and Not assigned activities map markers

Selected activities appear on the map with different markers - bubbles.

SHOW IDENTIFIERS ON THE ROUTE MAP

When you select activities or clustered activity in the drawing mode on the Route map, the panel displays activity marker and activity identifier (instead of activity hint) for the activities.

Route Map Showing Selected Activities

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

Edit Fields in the Main Screen of Activity Details and Screen Navigation

Starting with 20B, configuring Core Application based on Legacy Manage is now simpler with these improvements:

  • Editable Activity Details screen

Users can directly update the values of fields and properties and submit the changes from the main screen of the Activity details screen. The Submit button displays, if at least one of the elements is Read/Write or Mandatory. However, if you cannot update any of the elements on the screen, then the Submit button is not displayed.

Activity Details Screen

NOTE: Backward compatibility and migration: As it was stated above the feature removes the ReadOnly fields on the Activity Details. To make sure that 20B Update will not cause any impact to users, the visibilities of fields and properties configured in main screens of 'Edit/View activity' context layout will be automatically turned to ReadOnly upon update. 

  • Navigation Away behavior and Save as Draft 

If you make an edit to a field on the Activity Details screen and you attempt to navigate to a previous screen or click the Dismiss button, then the following message is displayed, “Your changes were not submitted. Do you want to save a draft of your updates?”

  • Select No to discard the changes and navigate to the previous screen.
  • Select Yes to save a draft and navigate to the previous screen. See Restoring Partially Filled Screens from Drafts. When you navigate to the Activity details screen, click Restore draft and make further changes (if required).

If you attempt to click a tab or a button, then the following message is displayed, “Your changes were not submitted. Do you want to save the changes and proceed to the next screen?”:

  • Select No to navigate back to the Activity Details screen and retain the edits to the fields.
  • Select Yes to save the changes and navigate to the selected tab or button.

NOTE: This does not apply to standard screens such as End activity, Suspend activity, etc.

Confirmation Dialog to Navigate Away from an Active Screen

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

Highlight On-Calls on Resource Calendar

Earlier, you could display on-call shifts on the calendar, but you could not distinguish between similar on-call shifts. Starting with 20B, you can highlight on-call shifts in different colors, so that you can differentiate between them on the Calendar and Resource Calendar screens. For example, let’s say you have two technicians working on on-call shifts from 6:00 pm to 10:00 pm, but for different lines of business. You can attach a color code to each of them, so that you can differentiate the shifts clearly on the Calendar and Resource Calendar screens. You can also use the Repeat and End date fields on the On-Call screen to define the number of days, or the date till which you want to use the shift.

These are the changes available in 20B:

  • You can select the color for the On-Call type shift on the 'Add shift' and 'Modify shift 'screen.
  • You can view the on-calls shifts according to the assigned colors on the Calendar, Resource Calendar, Manage, Dispatch Console, and My Route screens.
  • You can see the on-call badge according to the assigned colors on the resource avatar.
  • You can see an added additional on-call badge on the Manage and Dispatch Console screens.
  • You can interchange the 'End date' and 'Repeat' fields for any type of schedule (shift, on-call shift, work schedule, non-working time, or custom working time).
  • You can see the on-call badges instead of the text 'On-call' on the Dispatch Console and Manage screen.

Define Colors for On-Call Shifts

  1. Click Configuration, Work Schedules, Shifts.
  2. Click Add shift or select an existing on-call shift and click Modify.
  3. If you are adding a shift, complete these fields:

This table lists the fields required to add a shift:

Field Description
Name Enter a name for the shift, as it appears in the application.
Label Enter a unique identifier for this shift.
Type

Select On-Call from the drop-down list. On-call shift is a shift in which a resource might be available after the regular shift ends. Select the color-coded on-call icon that you want to attach to the shift. When you add this shift to a resource, this icon is displayed on the Dispatch Console, Manage, Calendar, and Resource Calendar screens, and on the resource avatar. A yellow on-call icon is shown for non-working time and custom working time schedules.

NOTE: You can create only one on-call shift per day. If you create a second on-call shift, the first one is deleted.

Active Click the check box to activate (make available for use) this shift.
Start Time Enter the start time for this shift.
End Time Enter the end time for this shift.
Points Within the application, points are used as limiters. If activities are assigned point values (based on different completion durations, complexity, value, etc.) then assignment caps can be determined on a shift-by-shift basis. Once point thresholds are reached for a resource to which that shift is assigned, then routing will allocate no more activities to that resource.

This screenshot shows the Add shift screen with the on-call shift icons:

Add shift screen with the on-call shift icons

Add Shift Screen with the On-Call Shift Icons

  1. If you are modifying a shift, select the color coded on-call icon that you want to attach to the shift. When you add this shift to a resource, this icon is displayed on the Dispatch Console, Manage, Calendar, and Resource Calendar screens, and on the resource avatar.
  2. Click OK.

Add an On-Call Shift to a Resource's Calendar

  1. Select a resource from the resource tree.
  2. Click Resource Info, Resource Calendar. The Resource Calendar screen displays.
  3. Click a date on the calendar.
  4. In the context menu, click On-Call.
  5. In the On-Call Schedule field, select the on-call shift that you want to apply. The on-call color coded icon that is attached to the shift appears. When you add this shift to a resource, this icon is displayed on the Dispatch Console, Manage, Calendar, and Resource Calendar screens, and on the resource avatar. This screenshot shows the dialog to add an on-call schedule for a resource:

Adding an on-call shift to a technician

Add On-Call Schedule Dialog

  1. If you are adding the shift for a short duration, say 5 days, enter the number in the Repeat field. The End Date is automatically adjusted. If you are adding the shift for a long duration, say a month, click the calendar in the End Date field and select the end date. The number of days is automatically calculated and displayed in the Repeat field. The dates between which the shift is applicable is also displayed.
  2. Click Submit.

This screenshot shows the on-call shift highlighted on the Calendars screen:

On-call shift highlighted on the Calendars screen

Resource Calendars Screen

This screenshot shows the on-call shift highlighted on the Resource Calendar screen:

On-call shift on the Resource Calendar screen

Resource Calendars Screen Showing On-Call Shift

This screenshot shows the on-call shift highlighted on the My Route screen:

On-call shift on the My Route screen

My Route Screen On-Call Shift 

This screenshot shows the on-call badge on the resource avatar:

On-call badge on the resource avatar

Resource Avatar Showing On-Call Badge 

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

Navigate to Internal Screens and Plug-Ins in Native and Core Application

Starting with 20B, users can directly access internal screens such as Activity details, List view, or Inventory details within the Oracle Field Service Mobile Application for custom Android or iOS apps or the Core Application using specific direct URLs. Based on the screen that is currently active and the type of user accessing that screen, the application sends these parameters with the URL:  

Based on the active screen that the user accessed and the type of user accessing that screen, the application sends some of these parameters with the URL:

Name

Type

Description

Constraints

activityId Number Specifies the Activity for the given screen This should be a valid Activity Id.
date Date Specifies the date for the given screen Date should be of the format YYYY-MM-DD.
inventoryId Number Specifies the Inventory for the given screen This should be a valid Inventory Id.
resourceInternalId Number Specifies the Resource for the given screen This should be a valid resourceInternalId. This is mandatory in case navigation is done from the supervisor screen.
screen String Specifies the screen to navigate This should be one among the Supported Screen Labels.

Supported Screen labels

  • activity_list 
  • activity_by_id
  • start_activity
  • end_activity
  • cancel_activity
  • notdone_activity
  • suspend_activity
  • delay_activity
  • inventory_list
  • inventory_by_id
  • install_inventory
  • deinstall_inventory

The order of the parameters is not important. Also, any unsupported parameters are ignored.

Based on whether the logged in user has access to other users (Supervisor) or not (Technician) the supported parameters, URLs, and accessible screens may be different as listed below. In case there are missing or invalid parameters, or if the user doesn't have access to the screen, the error message "Page not found" appears. In the below list, <OFSC_CORE_APP_URL> is the URL used to access Oracle Field Service Core Application.

ACTIVITY LIST

The screen label for activity list is activity_list. This parameter navigates to the Activity List screen.

This table lists the supported parameters for activity_list:

Name

Mandatory for Technician

Mandatory for Supervisor

date
resourceInternalId

This table provides the possible URLS for activity_list:

No

URL

Description

Applicable for Technician

Applicable for Supervisor

1 https://<OFSC_CORE_APP_URL>/#screen=activity_list Displays the activity list screen for today
2 https://<OFSC_CORE_APP_URL>/#screen=activity_list&date=2020-02-19 Displays the activity list screen for 2020-02-19
3 https://<OFSC_CORE_APP_URL>/#screen=activity_list&resourceInternalId=3000001 Displays the activity list screen of technician with resourceInternalId 3000001 for today
4 https://<OFSC_CORE_APP_URL>/#screen=activity_list&date=2020-02-19&resourceInternalId=3000001 Displays the activity list screen of technician with resourceInternalId 3000001 for the date 2020-02-19

ACTIVITY DETAILS

The screen label for activity list is activity_by_id. This parameter navigates to the Activity Details Screen.

This table lists the supported parameters for activity_by_id:

Name

Mandatory for Technician

Mandatory for Supervisor

activityId
date
resourceInternalId

This table provides the possible URLS for activity_by_id include:

No

URL

Description

Applicable for Technician

Applicable for Supervisor

1

https://<OFSC_CORE_APP_URL>/ #screen=activity_by_id&activityId=4225435&date=2020-02-20

Displays the details for activity with id 4225435.
2

https://<OFSC_CORE_APP_URL>/ #screen=activity_by_id&activityId=4225435&date=2020-02-20&resourceInternalId=3000001

Displays the details for activity with id 4225435.

Here are the constraints for this parameter:

  • The date must be the route date of the given activity.
  • For technicians, the activity should be assigned to the technician.
  • For supervisors, the given resourceInternalId should be assigned the activity and the supervisor should have access to that technician.

ACTIVITY ACTIONS

The screen labels and definitions for activity actions include:

  • start_activity: Navigates to the Start Activity Screen
  • end_activity: Navigates to the End Activity Screen
  • cancel_activity: Navigates to the Cancel Activity Screen
  • notdone_activity: Navigates to the Not Done Activity Screen
  • suspend_activity: Navigates to the Suspend Activity Screen
  • delay_activity: Navigates to the Delay Activity Screen

This table lists the supported parameters for activity actions:

Name

Mandatory for Technician

Mandatory for Supervisor

activityId
date
resourceInternalId

This table provides the possible URLS for activity actions:

No

URL

Description

Applicable for Technician

Applicable for Supervisor

1

https://<OFSC_CORE_APP_URL>/#screen=<SCREEN_LABEL>&activityId=4225435&date=2020-02-20

Displays the given activity action screen for activity with id 4225435.
2

https://<OFSC_CORE_APP_URL>/#screen= <SCREEN_LABEL>&activityId=4225435&date=2020-02-20&resourceInternalId=3000001

Displays the given activity action screen for activity with id 4225435.

The constraints for activity actions include:

  • The given Activity action screen should be visible for the given activity.
  • The date should be the route date of the given activity.
  • For technicians, the activity should be assigned to the technician
  • For supervisors, the given resourceInternalId should be assigned the activity and the supervisor should have access to that technician

INVENTORY LIST

The screen label for inventory_list is inventory_list. This parameter navigates to the Inventory List Screen.

This table lists the supported parameters for inventory_list:

Name

Mandatory for Technician

Mandatory for Supervisor

activityId
date
resourceInternalId

This table provides the possible URLS for inventory_list:

No

URL

Description

Applicable for Technician

Applicable for Supervisor

1

https://<OFSC_CORE_APP_URL>/#screen=inventory_list

Displays the inventory list screen
2

https://<OFSC_CORE_APP_URL>/#screen=inventory_list&activityId=4225435&date=2020-02-19

Displays the inventory list for activity with id 4225435
3 https://<OFSC_CORE_APP_URL>/#screen=inventory_list&resourceInternalId=3000001 Displays the inventory list screen of technician with resourceInternalId 3000001
4 https://<OFSC_CORE_APP_URL>/#screen=inventory_list&activityId=4225435&date=2020-02-19&resourceInternalId=3000001 Displays the inventory list for activity with id 4225435. resourceInternalId is needed for supervisor view

The constraints for inventory_list:include:

  • Inventory list action link should be visible from that activity.
  • The date should be the route date of the given activity. 
  • For technicians, the activity should be assigned to the technician.
  • For supervisors, the given resourceInternalId should be assigned the activity and the supervisor should have access to that technician.

INVENTORY DETAILS

The screen label for inventory details is inventory_by_id. This parameter navigates to the Inventory details screen with the given inventoryId.

This table lists the supported parameters for inventory_list include:

Name

Mandatory for Technician

Mandatory for Supervisor

inventoryId
activityId
date
resourceInternalId

This table provides the possible URLS for inventory_by_id:

No

URL

Description

Applicable for Technician

Applicable for Supervisor

1

https://<OFSC_CORE_APP_URL>/#screen=inventory_by_id& inventoryId=21229417

Displays the inventory details for inventory with id 21229417
2

https://<OFSC_CORE_APP_URL>/#screen=inventory_by_id& inventoryId=21229417& activityId=4225435&date=2020-02-19

Displays the inventory details for inventory with id 21229417 and activity with id 4225435
3

https://<OFSC_CORE_APP_URL>/#screen=inventory_by_id& inventoryId=21229417& resourceInternalId=3000001

Displays the inventory details for inventory with id 21229417 for the technician with resourceInternalId 3000001
3

https://<OFSC_CORE_APP_URL>/#screen=inventory_by_id&inventoryId=21229417&activityId=4225435&date=2020-02-19&resourceInternalId=3000001

Displays the inventory details for inventory with id 21229417 and activity with id 4225435 for the technician with resourceInternalId 3000001

The constraints for inventory_by_id include:

  • For Technicians, the technician should have the inventory with the given id.
  • For Supervisors, the given resourceInternalId should be of a technician with the inventory specified by inventoryId.
  • The date should be the route date of the given activity.
  • For technicians, the activity should be assigned to the technician.
  • For supervisors, the given resourceInternalId should be assigned the activity and the supervisor should have access to that technician.

INVENTORY ACTIONS

The screen labels and definitions for inventory actions include:

  • install_inventory: Navigates to the Add to Installed screen with the selected inventory
  • deinstall_inventory: Navigates to the Add to Deinstalled screen with the selected inventory

This table lists the supported parameters for inventory actions:

Name

Mandatory for Technician

Mandatory for Supervisor

inventoryId
activityId
date
resourceInternalId

This table provides the possible URLs for inventory actions:

No

URL

Description

Applicable for Technician

Applicable for Supervisor

1

https://<OFSC_CORE_APP_URL>/#screen=<SCREEN_LABEL>&activityId=4225435&date=2020-02-19&inventoryId=21229417

Displays the given activity action screen for activity with id 4225435 and inventory with id 21229417
2

https://<OFSC_CORE_APP_URL>/#screen= <SCREEN_LABEL>&activityId=4225435&date=2020-02-19&resourceInternalId=3000001&inventoryId=21229417

Displays the given inventory action screen for activity with id 4225435 and inventory with id 21229417

The constraints for inventory actions include:

  • The given Inventory action screen should be visible for the given activity and inventory.
  • For Technicians, the technician should have the inventory with the given id.
  • For Supervisors, the given resourceInternalId should be of a technician with the inventory specified by inventoryId.
  • The date should be the route date of the given activity.
  • For technicians, the activity should be assigned to the technician.
  • For supervisors, the given resourceInternalId should be assigned the activity and the supervisor should have access to that technician.

ACCESS TO CUSTOM PLUGINS

Users can directly access custom plugins within the Oracle Field Service Mobile Application for Android or iOS or Core Application. Users can access such screens from any custom Android or iOS app or using specific direct URLs.

Based on the screen from where the plug-in is accessed and the type of user accessing the plug-in, the following parameters can be sent with the URL:

Based on the screen where the plug-in is accessed from and the type of user accessing the plug-in a few from the following parameters can be sent with the URL:

Name

Type

Description

Constraints

plugin String Specifies the plugin to navigate. The label should be of a valid plugin. This plugin should be configured on one of the screens for the logged in user.
contextScreen String Specifies the context screen from which the plugin is open. This should be one among the Supported Context Screen Labels. Context screens have the same validations as screen navigation.
date Date Specifies the date for the context screen. Date should be of the format YYYY-MM-DD.
activityId Number Specifies the Activity for the context screen This should be a valid Activity Id.
resourceInternalId Number Specifies the Resource for the context screen. This should be a valid resourceInternalId. This is mandatory in case navigation is done from the supervisor screen.
inventoryId Number Specifies the Inventory for the context screen This should be a valid Inventory Id.

SUPPORTED CONTEXT SCREEN LABELS

Here are the supported context screen labels:

  • activity_list
  • activity_by_id
  • inventory_list
  • inventory_by_id

The order of the parameters are not important.

External Data:

Excluding the parameters described earlier, all the passed parameters will be sent to the plugin under the key, externalData.

NOTE: If the same key is given multiple times the data would be sent to the plugin as an array with the given key.

Encoding Data: 

If there are special characters in the data to be passed, they must be URL encoded.

See these examples:

Passing Single Key Data

URL:

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_list&speed=44.5&distance=11&model=V1

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "activityList",

    "resource": {},

    "activityList": {

        "4225438": {

            "aid": "4225438"

        },

        "4225439": {

            "aid": "4225439"

        }

    },

    "inventoryList": {

        "21064417": {

            "invid": "21064417"

        },

        "21064418": {

            "invid": "21064418"

        }

    },

    "openParams": {},

    "externalData": {

        "speed": "44.5",

        "distance": "11",

        "model": "V1"

    }

}

Passing Array Data

URL:

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_list&zipcodes=35801&zipcodes=06101&zipcodes=62701&status=completed

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "activityList",

    "resource": {},

    "activityList": {

        "4225438": {

            "aid": "4225438"

        },

        "4225439": {

            "aid": "4225439"

        }

    },

    "inventoryList": {

        "21064417": {

            "invid": "21064417"

        },

        "21064418": {

            "invid": "21064418"

        }

    },

    "openParams": {},

    "externalData": {

        "zipcodes": ["35801", "06101", "62701"],

        "status": "completed"

    }

}

Passing Data with Special Characters

Original Data:

"https://www.oracle.com/index?q=encoding"

Encoded Data: 

"https%3A%2F%2Fwww.oracle.com%2Findex%3Fq%3Dencoding"

URL:

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_list&targetURL=https%3A%2F%2Fwww.oracle.com%2Findex%3Fq%3Dencoding

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "activityList",

    "resource": {},

    "activityList": {

        "4225438": {

            "aid": "4225438"

        },

        "4225439": {

            "aid": "4225439"

        }

    },

    "inventoryList": {

        "21064417": {

            "invid": "21064417"

        },

        "21064418": {

            "invid": "21064418"

        }

    },

    "openParams": {},

    "externalData": {

        "targetURL": "https://www.oracle.com/index?q=encoding"

    }

}

Passing JSON Data

Original JSON String: 

{"street":"479 South Manor Station Drive","city":"Glenview","state":"IL","zipcode":"60025"}

Encoded JSON String: 

%7B%22street%22%3A%22479%20South%20Manor%20Station%20Drive%22%2C%22city%22%3A%22Glenview%22%2C%22state%22%3A%22IL%22%2C%22zipcode%22%3A%2260025%22%7D

URL:

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_list&address=%7B%22street%22%3A%22479%20South%20Manor%20Station%20Drive%22%2C%22city%22%3A%22Glenview%22%2C%22state%22%3A%22IL%22%2C%22zipcode%22%3A%2260025%22%7D

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "activityList",

    "resource": {},

    "activityList": {

        "4225438": {

            "aid": "4225438"

        },

        "4225439": {

            "aid": "4225439"

        }

    },

    "inventoryList": {

        "21064417": {

            "invid": "21064417"

        },

        "21064418": {

            "invid": "21064418"

        }

    },

    "openParams": {},

    "externalData": {

        "address": "{\"street\":\"479 South Manor Station Drive\",\"city\":\"Glenview\",\"state\":\"IL\",\"zipcode\":\"60025\"}"

    }

}

Open Plugin from Activity List Screen

URL: 

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_list&serialNo=49126

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "activityList",

    "resource": {},

    "activityList": {

        "4225438": {

            "aid": "4225438"

        },

        "4225439": {

            "aid": "4225439"

        }

    },

    "inventoryList": {

        "21064417": {

            "invid": "21064417"

        },

        "21064418": {

            "invid": "21064418"

        }

    },

    "openParams": {},

    "externalData": {

        "serialNo": "49126"

    }

}

Open Plugin from Activity Details Screen

URL:

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_by_id&activityId=4225439&date=2020-02-27&serialNo=49126

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "activity",

    "resource": {},

    "activity": {

        "aid": "4225439"

    },

    "inventoryList": {

        "21064417": {

            "invid": "21064417"

        },

        "21064418": {

            "invid": "21064418"

        }

    },

    "openParams": {},

    "externalData": {

        "serialNo": "49126"

    }

}

Open Plugin from Inventory List Screen

URL:

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_by_id&activityId=4225439&date=2020-02-27&serialNo=49126

Plugin Open Data

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=activity_by_id&activityId=4225439&date=2020-02-27&serialNo=49126

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "inventoryList",

    "resource": {},

    "activityList": {

        "4225438": {

            "aid": "4225438"

        },

        "4225439": {

            "aid": "4225439"

        }

    },

    "inventoryList": {

        "21064417": {

            "invid": "21064417"

        },

        "21064418": {

            "invid": "21064418"

        }

    },

    "openParams": {},

    "externalData": {

        "serialNo": "49126"

    }

}

Open Plugin from Inventory Details Screen

URL

https://<OFSC_CORE_APP_URL>/#plugin=<PLUGIN_LABEL>&contextScreen=inventory_by_id&inventoryId=21229417&serialNo=49126

Plugin Open Data

{

    "apiVersion": 1,

    "method": "open",

    "entity": "inventory",

    "resource": {},

    "activityList": {

        "4225438": {

            "aid": "4225438"

        },

        "4225439": {

            "aid": "4225439"

        }

    },

    "inventory": {

        "invid": "21229417"

    },

    "openParams": {},

    "externalData": {

        "serialNo": "49126"

    }

}

ACCESSING NATIVE APP FROM OTHER ANDROID OR IOS NATIVE APPS

Accessing any of the URL formats and examples listed above from an Android or iOS device will prompt the user to open the link in native app (if installed) or the web app using a browser. However, if the Oracle Field Service native app needs to be opened from another native app, without the option to open it in the browser, replace the link "https://<OFSC_CORE_APP_URL>" with "com.oracle.ofsc://", (other text remain the same) in each of the above links.

ACCESS TO SCREENS AND PLUGINS IN OFFLINE MODE

For accessing screens and plugins related to activities of past or future dates, if the application (native app or web app) can access the specified activity in Offline mode, the links to inner screens will also work for those activities.

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

Oracle Digital Assistant (ODA) Integration for Where Is My Technician

Starting with 20B, the integration between the Where is My Technician screen and Oracle Digital Assistant (ODA) is enhanced to provide simpler integration.

The integration provides these features:

  • Configuration fields are added on the Where is My Technician Theme screen to integrate with the Oracle Web channel.
  • The Assistant Chat widget has the same theme style as the Where is My Technician theme.
  • The chat window automatically opens on the Feedback screen, if the user rates the service. For example, the assistant can display “thanks for a high score” or can ask “what was not good for a low score”.
  • Notifications are displayed if the conversation is initiated by the Where is My Technician assistant.

CONFIGURE ORACLE DIGITAL ASSISTANT (ODA) ON THE WHERE IS MY TECHNICIAN SCREEN

The integration between the Where is My Technician screen and Oracle Digital Assistant (ODA) allows to accomplish a variety of tasks in natural language conversations to cover the following business scenarios

  • Reschedule an appointment to another day fit to customer
  • Cancel an appointment and define the reason
  • Send message to Technician
  • Call Technician
  • Ask for feedback
  • Sale another company service
  • Provide with promo-codes

Customers can use variables sent from OFS to implement their own skills (chatbot) in the assistant.

Prerequisites

Steps to Enable

SET UP THE ASSISTANT IN ORACLE FIELD SERVICE

NOTE: The Client Authentication feature is not supported by the Where Is My technician chat widget.

To set up the assistant in Oracle Field Service:

  1. Navigate to the Themes screen.
  2. Create or Update a theme in the Where is My Technician section.
  3. Select the Interaction tab. 
  4. Select the Enable Oracle Digital Assistant check box.
  5. Enter Channel URI and Channel ID.

Theme Screen

SUPPORTED PARAMETERS

The Where is My Technician screen supports several parameters for skill configuration in ODA.

This table lists the values of those parameters that are passed to the ODA chatbot when opening a Where is My Technician URL.

Where Is My Technician Screen Properties Sent to ODA Chat on Where Is My Technician Screen

Scheduled

Assigned

On the Way

Arrived

Feedback

activityId

activityType -  sent in case the 'Show Activity type' feature is enabled for Where is My Technician Theme

resourceName

customerName

Feedback

rate

Value from 1 to 5 sends to the chat while submitting stars on the Feedback screen in case the only Rating set up for Feedback

Here is an ODA skill implementation example using customerName and resourceName parameters

component: "System.CommonResponse"

properties:

  metadata:

    responseItems:

      - type: "text"

        text: "Hi ${profile.customerName}! Your technician is ${profile.resourceName}"

ASSISTANT VIEW FOR THE WHERE IS MY TECHNICIAN SCREEN

You can apply the Where is My Technician theme to the Oracle Digital Assistant chat screen to continue the Assistant scenario in the Where is My Technician screen.

Oracle Digital Assistant Chat Screens

IMPLEMENT FEEDBACK FLOW

The assistant opens automatically on the Where is My Technician screen if the Oracle Digital Assistant and Feedback flow are enabled for a theme and the Rating set up is configured for the Feedback screen.

Customers can develop ODA skills to implement custom feedback scenarios on the Where is My Technician screen based on the rating. These feedback scenarios can be implemented:

  • Give thanks for high feedback.
  • Ask for confirmation to post their feedback on the company site.
  • Define a reason of the low score for technician.
  • Suggest scheduling another follow up to handle an issue.
  • Connect a dispatcher to the chat to handle a situation directly.

Feedback Scenarios

Here is an example of skill with positive and negative feedback:

#Variable can be set as:

context:

  variables:

    rate: "string"

  setRate:

    component: "System.SetVariable"

    properties:

      variable: "rate"

      value: ${profile.rate}

 

#Example of how to switch depending on number of stars

completedActivityResponse:

 component: "System.Switch"

 properties:

 variable: "rate"

 source:

 values:

 - "1"

 - "2"

 - "3"

 - "4"

 - "5"

 transitions:

 actions:

 1: "negativefeedback"

 2: "negativefeedback"

 3: "negativefeedback"

 4: "positivefeedback"

 5: "positivefeedback"

#Positive feedback

positivefeedback:

    component: "System.CommonResponse"

    properties:

      metadata:

        responseItems:

          - type: "text"

            text: "Thank you for rating us high! Do you wish to provide additional feedback?"

            separateBubbles: true

            actions:

              - label: "Sure"

                type: "postback"

                payload:

                  action: "Agree"

              - label: "Nothing to add more"

                type: "postback"

                payload:

                  action: "SuccessBye"

#Negative feedback 

  negativefeedback:

    component: "System.CommonResponse"

    properties:

      metadata:

        responseItems:

          - type: "text"

            text: "Thank you for your feedback. We are always looking to improve the way we do business with our customers. Do you willing to provide additional details?"

            separateBubbles: true

            actions:

              - label: "Problem remains unsolved"

                type: "postback"

                payload:

                  action: "unsolvedProblem"

              - label: "Service was unappropriate"

                type: "postback"

                payload:

                  action: "unappropriateService"

              - label: "Other"

                type: "postback"

                payload:

                  action: "system.textReceived"

                  variables:

                    system.text: "Other"

INITIATE CHAT WITH CUSTOMER

The Where is My technician screen allows you to initiate a chat with end users. A notification badge is shown on the chat icon to the end users.

  • Oracle Digital Assistant must be enabled for the Where is My Technician Theme.
  • Customers can develop ODA skills, which can send messages to the end-user to suggest any help with the order (additional order details, promo codes, and so on) or ask for the feedback (if a customer does not want to enable feedback for the Where is My Technician screen and wants to implement their custom survey).

This screenshot shows an example of chat notification:

ODA Chat Notification and Chat Message

Here is an example of skill for initiating chat:

Response:

  component: "System.Text"

  properties:

    prompt: "Hi, I'm your assistant. Do you need help with the appointment scheduled for <b>${activity.value.date.date?number_to_date?string[dateFormat]}</b>?"

MIGRATION RULES

If 'Enable Oracle Digital Assistant' checkbox is selected and the 'Application ID' field is set before the 20B release for the Where Is My Technician theme on the Configuration screen, then these fields are available on the Theme Configuration screen after you upgrade to Update 20B.

  • Application ID
  • Channel URI
  • Channel ID

New values of configured ODA channel may be set using new fields Channel URI and Channel ID. The old Application ID value should be deleted to apply the support of the Oracle WEB Channel to the theme.

Theme Screen with Application ID

Application ID will be unavailable and the new fields, Channel URI and Channel ID are available for integration with Oracle Digital Assistant:

Theme Screen with Channel URI and Channel ID Fields

Key Resources

Preserve Metadata When Taking Images from Camera

Starting with 20B, whenever you take images using the device's camera, the application stores the coordinates in the image metadata, provided these conditions are met:

  • Geolocation is enabled on the device
  • 'Store location in pictures' is selected in the camera settings

For the images you take from the camera in Core Application, iOS and Android installed apps, the system automatically saves the timestamp and GPS coordinates in the metadata. Both parameters are stored in the metadata of images in EXIF format. This feature provides these benefits:

  • Oracle Field Service customers can audit 'performed activities' by associating them with the images taken by technicians during work.
  • Oracle Field Service clients can get the proof of work performed or about the initial conditions on a customer’s site. This can be used during the internal inspection of completed jobs for processing claims from end customers.

TIME STAMP METADATA

The system always saves the timestamp for all the images taken from the camera in ISO format with the UTC time zone offset.

You can obtain the timestamp from the following metadata tags:

  • DateTimeOriginal: Date/time of the original image was taken.
  • DateTimeDigitized: Date and time when the image was stored in Oracle Field Service.
  • OffsetTimeOrigin: Time zone of original date time.
  • OffsetTimeDigitized: Time zone of digitized date time.

GPS COORDINATES METADATA

Enable these functions on your mobile devices to save the GPS coordinates in metadata:

  • Geolocation in general settings
  • Location tag in camera settings

You can obtain the location from the following tags of metadata:

  • GPSLatitudeRef: Indicates whether the latitude is North or South. The ASCII value 'N' indicates North latitude, and 'S' is South latitude.
  • GPSLatitude: Indicates the latitude. The latitude is expressed in three rational values as in dd/1, mm/1, ss/1. When degrees and minutes are used, for example, fractions of minutes are expressed up to two decimal places then the format is dd/1, mmmm/100, 0/1.
  • GPSLongitudeRef: Indicates whether the longitude is East or West. ASCII 'E' indicates East longitude and 'W' is West longitude.
  • GPSLongitude: Indicates the longitude. The longitude is expressed in three rational values as ddd/1, mm/1, ss/1. When degrees and minutes are used, for example, fractions of minutes are expressed up to two decimal places, the format is ddd/1, mmmm/100, 0/1.

Do the following:

  • For Android users:

    1. Open the ‘Camera’ app.
    2. Tap ‘Settings’ of the camera app.
    3. Enable the ‘Location tag’ or ‘Save location’ option.
  • For iOS users

  1. Open ‘Settings’ and go to the ‘Privacy’ option.
  2. Enable the ‘Location services’ option.
  3. Tap the ‘Camera’ option and select the 'While Using the App' option.

AVAILABILITY

The feature is available on devices running on Android and iOS.

Application Type Android iOS
Browser application No limitations * Limited ability to store GPS coordinates
Installed application No limitations No limitations

NOTE: Due to the limitations imposed by Apple, GPS coordinates CANNOT be collected for an image when using the Oracle Field Service browser application on an iOS device. However, there is a way to collect geo-coordinates in the metadata of images for browser application running on iOS - users can take an image using the camera, save the image in gallery, and attach the image to a form by selecting photos from the gallery.

Steps to Enable

How to Use

Follow these steps to understand how to use this feature in Core Application:

NOTE: Image metadata is not available for presentation in the OFS UI or APIs. Data can be obtained using external tools once the image is downloaded.

  1. Log in to the Core application.
  2. Take a photo in Core application.
  3. Save the image.
  4. Verify the image's properties.

How to Retrieve Saved Data

Starting with 20B, location and time stamp are integral part of images. You should download images to your external systems through Core API or Daily extract and retrieve the information from metadata in your back office.

Currently, OFS doesn't show this information neither in UI nor provides it separately through public APIs.

Key Resources

Set Action Time in Core Application

Earlier, dispatchers could modify the time of action on screens such as Activate route, only in Legacy Manage. Starting with 20B, you can configure screens so that users can modify the time of action in Core Application. With this change, you can enter time for that specific action that is different from the current time, within the same working day.

NOTE: You can change the action time only when you are online. When you are offline, the application prompts you to go online to complete the action. For example, let’s say you are on the Start activity screen and you have the time fields to change the start time. If you are offline, you cannot change the activity start time. You must switch to online to start the activity with the time that differs from your current time.

The 'Allow action time adjustment in Legacy Manage' setting in the 'Activity Management' section in the 'General settings' tab on the Configuration, User types screen is renamed as 'Allow action time adjustment'. This setting controls the functionality that allows users to change the action time in both Legacy Manage and Core Application. This image shows the Activity Management section on the User types screen:

Action management section on the User Types screen

User Types Screen Showing Activity Management

When you select this check box for a user type, all users of this user type can adjust the action time on these screens:

  • Activate route
  • Deactivate route
  • Reactivate route
  • Start activity
  • End activity
  • Suspend activity
  • Not done activity
  • Start pre-work
  • End pre-work

This image shows the time fields on the Activate route screen:

Activate route screen showing the Route Activation Time fields

Activate Route Screen

The time fields displayed on these screens (12-hour or 24-hour) conform to the time display format configured for you. You can select the time in increments of five minutes. Further, when you save the time on these screens, it is displayed on Dispatch Console and the activity history, and sent to external applications through integrations.

Steps to Enable

You don't need to do anything to enable this feature.

Tips And Considerations

Please be sure to validate your User Type configurations before your 20B Production Update. Uncheck the 'Allow action time adjustment in Legacy Manage' for any User Types where do not user to have access to this functionality. Previously this setting did not work on Mobility so it was not available for those users, primarily field resources. After the 20B update, any user with the feature enabled will have access to set the action time.

Key Resources

Separate Travel Code for Real-Time Traffic Update

Earlier, when the travel time to the next activity was updated using real-time traffic data, it was shown as ‘Manual adjustment’ on the History screen. Starting with 20B, when the travel time is updated from Core Application or Oracle Field Service Mobile for Android and iOS using real-time traffic data, it is shown as 'Real-time traffic'. This change is available only for Oracle Field Service Enterprise Edition with Google Maps.

The Travel estimation - 'Real-time traffic' remark is applied for Activate route and Complete activity actions and is displayed in:

  • Daily Extract files
  • API
  • History tab on the Activity details screen
  • List View

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

Support of Initial Ratio for Resource in Core Application

Starting with 20B, you can set the value for the Initial ratio for Activity duration field in Core Application, while adding a field resource.

After the technician completes at least one activity, the default ratio for the technician is shown based on the reported duration.

Initial ratio for Activity duration and Default ratio for Activity duration values are displayed for the roles of these resource types:

  • Field resource
  • Tool
  • Vehicle

The values are not displayed for the roles of these resource types:

  • Manager/Dispatcher/Admin role
  • Organization unit
  • Bucket

NOTE: The Default ratio for Activity duration value is modified regularly based on the duration reported for relatively new activity types.

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

View Daylight Saving Time Changes in Core Application

Earlier, when Daylight Saving Time (DST) changed, the current timeline didn’t display in the correct position. Starting with 20B, the time at which DST starts and ends is highlighted and a hint displays the number of hours by which the clock is turned forward or backward.

The Manage screen in the Core Application shows that the clocks are turned forward by 1 hour:

Manage Screen Showing Time - 1 Hour Forward

Start of Daylight Saving Time - 1 Hour Forward

The Manage screen in the Core Application shows that the clocks are turned backward by 1 hour:

Clocks are turned backward 1 hour.

 

Manage Screen Showing Time - 1 Hour Backward

End of Daylight Saving Time - 1 Hour Backward

Steps to Enable

You don't need to do anything to enable this feature.

Key Resources

Collaboration

Enable Helpdesk with Oracle Digital Assistant

Helpdesks can enable Oracle Digital Assistant (ODA). Once enabled, ODA can act as a virtual operator in the helpdesk and can answer technicians' queries. You can train the Oracle Digital Assistant based on your business requirements and can equip ODA by adding skills to learn, engage, suggest and recommend resolutions for technician's key problems.

NOTE: You must have a subscription to the Oracle Digital Assistance service for example Digital Assistant Platform for SaaS.

To do this, the application uses ODA web hook channel for connecting with ODA. Below steps detail on how to set up connectivity between Collaboration helpdesk & ODA.

Steps to Enable

ENABLE ORACLE DIGITAL ASSISTANT (ODA) FOR HELPDESK IN ORACLE FIELD SERVICE

To enable ODA for helpdesk, follow these steps: 

  1. Navigate to Configuration, Collaboration.
  2. In the Collaboration page, select Helpdesks in the left pane.
  3. In the Helpdesk configuration page, click the Enable Oracle Digital Assistant check box.
  4. Once enabled, the Oracle Digital Assistant field shows a set of related fields.
  5. Complete these webhook endpoint details:
  • Webhook secret key 
  • Webhook URL. 
  1. The webhook endpoint details are available in ODA.

You should configure these endpoints from ODA so that ODA can use the Webhook URL endpoint for all communication with field collaboration.

CONFIGURE ORACLE DIGITAL ASSISTANT FOR CONNECTING WITH HELPDESK 

Review these requirements before you create a webhook-based channel:

  • Channel has to route to specific skill/DA
  • Channel has to be in enabled state

To create a webhook based channel in ODA, follow these steps:

  1. Navigate to ODA dashboard.
  2. Select Development, Channels to open the Channels page.
  3. Create new channel type as Webhook

Channels Page

  1. Use Outgoing webhook URI obtained from the Oracle Field Service helpdesk configuration screen.

Create New Channel Type Dialog

  1. After successful creation of the channel, use the ODA webhook URL and Webhook secret to complete the Oracle Field Service helpdesk configuration.
  2. Update the Oracle Field Service helpdesk configuration with the generated secret key and Webhook URL from ODA.

CONVERSATION BETWEEN FIELD TECHNICIAN AND ODA

Field Technician can search for a helpdesk (Enabled with ODA) in field collaboration and can initiate a conversation with that helpdesk, on receiving a new chat message ODA can proactively address the question and keep the technician engaged by initiating interaction based on the skills defined in the ODA. Skills are treated as individual chatbots in ODA and each chatbot is designed to interact with users and fulfill the specific type of task such as rescheduling a job for field tech or sharing service history of the job. For more details about skills, see Using Oracle Digital Assistant documentation. 

KEY POINTS TO DEVELOP HELPDESK RELATED SKILLS

Consider these key points when developing helpdesk related skill: 

  • Request payload from field collaboration 
  • Share inventory, activity, or resource details as an attachment

REQUEST PAYLOAD FROM FIELD COLLABORATION

This is a sample payload from OFS to ODA skill. While developing skills at ODA side, you can expect a similar request format from field collaboration.

PAYLOAD SCHEMA

{

  "userId": (String | mandatory | unique conversation id to maintain the session),

  "messagePayload": {

      "type": (String | mandatory | type of message from ODA),

      "text": (String | mandatory | response message from ODA)

  },

  "userLoginName": (String | mandatory | unique user login identifier)

}

Keywords include:

  • userLoginName will share the current chat user, which can be used to query OFS REST APIs from the custom component level.
  • User information: OFS Collaboration payload sends only the user login name to ODA. Customer can make use of OFS REST endpoints /rest/ofscCore/v1/users/{login} to get the resource ID and more information about the resource.
  • Custom Component: Field Collaboration expects these components in the response from skill/DA:
  • System.Output
  • System.Text

Field collaboration will not process responses from components other than these custom components. You must use them while developing skills for connecting with field collaboration.

  • Helpcard: Collaboration will not process DA-level help card, hence, you must use custom skills to manage use cases with help cards.

SHARING OF INVENTORY, ACTIVITY OR RESOURCE DETAILS AS AN ATTACHMENT

You can develop skills to share activity/inventory/resource information as an attachment in collaboration.  

Sending attachment from the skill

You can send attachments by using custom components within the skill. Here is a Sample custom component invocation:

Sample Custom Component for Inventor, activity or Image

ShowMyActivity:

  component: "OFS.Collaboration"

  properties:

      action: "share"

      metaData:

          type: "activity"

          id: "4545454"

          desc: "Upgrade"

Field Collaboration expects a payload in below format for attachments (Inventory / Activity/ User)

Properties

Key

Value

Description

Required

Action

Share

tell what kind of action should be done at collaboration.

supported values: share, helpDeskTransfer

Mandatory

metaData

Object

only required for share action

Optional

metaData

Key

Value

Description

Required

type

Activity

type of attachments supported values: activity, inventory, resource

Mandatory

id

ID of the activity, resource OR inventory

unique ID of the respective entity

Mandatory

desc

description or note

description or note

Mandatory

Field Collaboration expects a payload in below format for attachments (Inventory / Activity/ User)

Payload for Inventory , activity or resource share

{

  "messagePayload": {

    "payload": {

       "action": "share",

       "metaData": {

          "type": "activity"

          "id": 4545454,

          "desc": "Upgrade",

      }

    },

    "type": "raw"

  },

  "userId": "ad3jgo7s79dddgadffdasf9"

TRANSFER OF CONVERSATION FROM ODA TO HELPDESK OPERATOR

When ODA is not trained to answer any specific queries, the conversation can be transferred to a human helpdesk operator. This will be shared as a new chat in that helpdesk. When a helpdesk operator accepts this chat ODA will leave the conversation, the operator can view previous chat messages between field tech and ODA to get the context of the conversation and can continue the conversation. 

While defining the skill, you should make sure that the logic of transfer is implemented in the skill-based on the business requirement.

Transfer chat sample custom component

TransferChat:

  component: "OFS.Collaboration"

  properties:

      action: "helpDeskTransfer"

Field Collaboration expects a payload in below format in case of the transfer request from a custom component

 Sample Payload for Transfer chat to helpdesk

{

  "messagePayload": {

    "payload": {

       "action": "helpDeskTransfer"

    },

    "type": "raw"

  },

  "userId": "ad3jgo7s79dddgadffdasf9"

}

Sample Custom Component for attachment and transfer of conversation

Sample Custom Component

'use strict';

const { MessageModel } = require('@oracle/bots-node-sdk/lib');

  

module.exports = {

  metadata: () => ({

    name: "OFS.Collaboration",

    properties: {

        action: { required: true, type: 'string' },

        metaData: { required: false, type: 'object' }

    },

    supportedActions: []

  }),

  invoke: (conversation, done) => {

    conversation.logger().debug("OFS.Collaboration component invoked");

    conversation.logger().debug(this.conversation.properties());

    const message = MessageModel.rawConversationMessage(this.conversation.properties());

    conversation.reply(message);

    done();

    conversation.logger().debug("OFS.Collaboration action finished");

  }

}

USE CUSTOM COMPONENTS

Customers can use custom components to call Oracle Field Service REST API to get Oracle Field Service data in the skills.

Things to consider while writing custom components

  • Create application within Oracle Field Service with the relevant API permissions.
  • Use the application credentials within the custom component to make REST API calls.
  • Use skill configuration for sharing credentials to custom component.

Key Resources

Receive Collaboration Notifications as Android Push Notifications

Earlier, collaboration notifications were available in native android applications as in-app notifications. Starting with 20B, collaboration notifications are available as push notifications within the Oracle Field Service Mobile for Android and iOS app. With this feature, you can receive a notification when the application is running in the background. Collaboration notification provides timely alerts of new collaboration messages for native mobile app users, whether they are using the application or not.

NOTE: Such collaboration notifications will be displayed only when the app runs in the background.

PREREQUISITES:

Here are the prerequisites to use this feature:

  • Do not disable remote notifications on the device or for the application.
  • Run the application at least once on the device.
  • When Oracle Field Service triggers a new collaboration event, it sends a notification to Oracle Field Service mobile app (Android OS). The notification alerts the participants of this event who are using the mobile app (Android OS) if the application is running in the background.

NOTIFICATION FEATURES

Here is a list of notification features:

  • Notifications appear on the status bar as an icon.
  • Notifications appear on the lock screen.
  • A sound or vibrating alert is present as part of the notifications. 
  • A new notification will appear on the current screen.
  • A new notification should give an alert to the user by blinking the device's LED.
  • If a user force-quits the app using the app multitasking UI, the app does not receive remote notifications until the user relaunches it.
  • If the application is running in the foreground for a user, the user will not receive notifications.

NOTIFICATION MESSAGE STRUCTURE 

Key components of a notification message include:

  • Header Area

The header includes these items:

  • App icon
  • App Name ("Field Service")
  • Header Text (It shows the total number of unread messages and the total number of unread chats at this moment)
  • Timestamp along with the expander icon
  • An indicator to represent the number of pending notification from the same application
  • Structure of the Header area when the application is unlocked 

Header Area Structure When Application Is Unlocked

  • Structure of the Header area when the application is locked 

Header Area Structure When Application Is Locked

  • Content Area

The content includes the most important part.of the message - content title and text.

  • Structure of the content area when the application is unlocked 

 

    Content Area Structure When Application Is Unlocked

  • Structure of the content area when the application is locked 

    Content Area Structure When Application Is locked  

  • The structure of a notification includes:
    • Content Title: Headline for the collaboration notification is defined in such a way that it should differentiate the type of collaboration messages such as
      • Name of the sender- in case of a one to one message.
      • Conference -in case of a conference message. 
      • Broadcast -in case of a broadcast message.
      • New activity - in case of activity broadcast message.
      • The title also contains a count of unread chats in that conversation.
    • A content Text:  This can be the content of the text.

MULTIPLE NOTIFICATIONS

When the application displays multiple collaboration messages of the same type, it will bundle and summarize them as follows:

Multiple Notifications

The application can display multiple notifications in a hierarchical way:

  • A parent notification displays a summary of its child notifications.
  • If the user expands the parent notification, it expands to display all child notifications.
  • The user can expand child notifications to review its entire content.
  • The application may display child notifications without duplicate header information. 
  • If there is only one child notification, it appears outside of the group.

EXPANDED VIEW

Notification should have an expand indicator in the header part of the message. Users can tap the indicator or swipe down the notification body to expand it.

Notifications - Expanded View

EXAMPLES

Here are some examples of Collaboration message types and their notification appearance:

  • One to One Conversation between two users     

One to One Conversation Between Two Users Example

  • Conference

Conference Example

  • Broadcast message

Broadcast Message Example

  • Automatic broadcasting

Automatic Broadcasting Example

  • Collaboration Message from Message Scenario

Collaboration Message from Message Scenario Example

  • Share location between users

Share Location Between Users Example

  • Location sharing in Conference

Location Sharing in Conference Example

  • Inventory Sharing     

Inventory Sharing Example

  • Helpdesk Notification       

Helpdesk Notification Example

NOTIFICATION AS A BADGE 

The badge in the application launcher icon gets updated with unread collaboration chats as notifications in the application. This image shows a notification badge:

Notification as a Badge

These badges should automatically appear when a new collaboration notification appears and disappear when the user clicks the application or notification banner.

Steps to Enable

ENABLE NOTIFICATION

You can do these actions to enable notifications:

  • When the screen is locked:
    • Double tap or single tap the notification and unlock the device based on the Android version used. Once unlocked, the Collaboration User interface opens.
  • When the screen is unlocked: 
    • Tap the notification. The Collaboration user interface opens.

You can dismiss a notification after reviewing it. To dismiss a notification message, swipe it from left or right.

When a user accesses the application, all notifications will be dismissed from the notification panel.

Key Resources