Field Service

Get Involved. Join the Conversation.

Topic

    Waqas Amin
    Stop creating activity on field service cloud?Answered
    Topic posted December 27, 2018 by Waqas AminRed Ribbon: 250+ Points, last edited December 27, 2018, tagged API / Integration, Dispatch Functionally 
    76 Views, 8 Comments
    Title:
    Stop creating activity on field service cloud?
    Summary:
    How can I stop the external system creating activity on field service cloud that does not fit with respect to tech's availability?
    Content:

    We have a use case where an external system should get an alert/intimation before creating activity on OFSC if the job does not fit on any of the tech schedules.

    For example: If we select a slot of 5 PM - 6 PM and the duration of the activity is 1 hour. We have no tech on the field service side, who is working after 4:30 PM, so how can we get this type of information from field service (no tech is available).

    I have tried "findMatchingResources" API, It's returning all the techs in the response.

    Version:
    Oracle Field Service Cloud 18D

    Best Comment

    Zsolt Tolgyesi

    Read this https://cloudcustomerconnect.oracle.com/posts/dbe363d570
    and play with different resource settings (I mean different work shift, skill, WZ and so on) to see if the response is changing or isn't. Or/and look for the example in the documentation https://docs.oracle.com/en/cloud/saas/field-service/18d/cxfsc/op-rest-ofsccore-v1-resources-custom-actions-findmatchingresources-post.html Example 2.
    Zsolt

    Comment

     

    • Zsolt Tolgyesi

      Hi Waqas,

      For example you can manage capacity with Capacity Cloud service https://docs.oracle.com/en/cloud/saas/field-service/18d/faccu/index.html
      and asking general availability by API https://docs.oracle.com/en/cloud/saas/field-service/18d/fasdk/index.html

      Regards,
      Zsolt

    • Waqas Amin

      Hi Zsolt,

      I hope you are doing great and thanks for the reply. I know the capacity can do all these stuff. We don't have the capacity module, I'm looking for the workaround or solution using middleware. I'm also trying to consume "findMatchingResources" but it is not returning me a required thing. For example, I'm passing the required parameters and it is showing all the techs are available on every single slot. Do you have any idea about that?
      Best regards

    • Antonio Carmona

      Hello,

      Please, have a look on /rest/ofscCore/v1/resources/custom-actions/findMatchingResources () and try to include in the request the parameter "schedulesToReturn". Using this parameter the response will include a "schedules" node and you can check the "freeTimeWindows" node:

               "schedules": {"2019-03-07":          {
                  "fitness":             {
                     "workTime": 840,
                     "workSkill": 100,
                     "workZone": 100,
                     "resourcePreference": 1
                  },
                  "workShift":             {
                     "comments": "",
                     "endDate": "",
                     "startDate": "2019-03-02",
                     "isWorking": "1",
                     "nonWorkingReason": "",
                     "points": "0",
                     "recordType": "shift",
                     "recurrence":                {
                        "dayFrom": "",
                        "dayTo": "",
                        "recurEvery": "1",
                        "recurrenceType": "weekly",
                        "weekdays":                   [
                           "Mon",
                           "Tue",
                           "Wed",
                           "Thu",
                           "Fri"
                        ]
                     },
                     "workTimeEnd": "22:00",
                     "workTimeStart": "08:00",
                     "shiftType": "regular",
                     "shiftLabel": "Shift 08-22",
                     "scheduleShifts": []
                  },
                  "freeTimeWindows": [            [
                     "20:00",
                     "22:00"
                  ]]
               }}

      Hope this can help.

      Regards.