@salesforce/afv-skills 1.47.0 → 1.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/package.json +1 -1
  2. package/skills/education-cloud-domain-configure/SKILL.md +234 -0
  3. package/skills/education-cloud-domain-configure/references/dependent-features.md +198 -0
  4. package/skills/education-cloud-domain-configure/references/domain-features/academic-operations.md +386 -0
  5. package/skills/education-cloud-domain-configure/references/domain-features/alumni-relations.md +155 -0
  6. package/skills/education-cloud-domain-configure/references/domain-features/cross-domain-dependencies.md +18 -0
  7. package/skills/education-cloud-domain-configure/references/domain-features/industriessettings-toggle-reference.md +43 -0
  8. package/skills/education-cloud-domain-configure/references/domain-features/mentoring.md +198 -0
  9. package/skills/education-cloud-domain-configure/references/domain-features/recruitment-admissions.md +315 -0
  10. package/skills/education-cloud-domain-configure/references/domain-features/student-management.md +155 -0
  11. package/skills/education-cloud-domain-configure/references/domain-features/student-success.md +249 -0
  12. package/skills/education-cloud-domain-configure/references/domain-features.md +27 -0
  13. package/skills/education-cloud-domain-configure/references/gotchas-extended.md +23 -0
  14. package/skills/education-cloud-domain-configure/references/toggle-write-path.md +67 -0
  15. package/skills/education-cloud-domain-configure/scripts/check_license_provisioned.py +62 -0
  16. package/skills/education-cloud-domain-configure/scripts/check_org_edition.py +44 -0
  17. package/skills/education-cloud-domain-configure/scripts/check_permission_assigned.py +39 -0
  18. package/skills/education-cloud-multi-campus-configure/SKILL.md +7 -0
  19. package/skills/education-cloud-multi-campus-configure/references/foundation_prerequisites.md +4 -3
  20. package/skills/service-agentforce-channel-configure/SKILL.md +33 -28
  21. package/skills/service-agentforce-human-escalation-configure/SKILL.md +205 -0
  22. package/skills/service-agentforce-human-escalation-configure/assets/escalation-thresholds.instructions.md +37 -0
  23. package/skills/service-agentforce-human-escalation-configure/assets/force-app/main/default/flows/Human_Escalation_Outbound_Flow.flow-meta.xml +173 -0
  24. package/skills/service-agentforce-human-escalation-configure/assets/package.xml +8 -0
  25. package/skills/service-agentforce-human-escalation-configure/assets/sfdx-project.json +5 -0
  26. package/skills/service-agentforce-human-escalation-configure/references/classifier-contracts.md +103 -0
  27. package/skills/service-agentforce-human-escalation-configure/references/escalation-mechanism.md +63 -0
  28. package/skills/service-agentforce-human-escalation-configure/references/failure-policy.md +44 -0
  29. package/skills/service-agentforce-human-escalation-configure/references/nga-escalation.md +57 -0
  30. package/skills/service-agentforce-human-escalation-configure/references/runtime-verification.md +72 -0
  31. package/skills/service-agentforce-human-escalation-configure/scripts/classify-agent-active.mjs +49 -0
  32. package/skills/service-agentforce-human-escalation-configure/scripts/classify-nga-escalation.mjs +166 -0
  33. package/skills/service-agentforce-human-escalation-configure/scripts/extract-outbound-route.mjs +67 -0
  34. package/skills/service-agentforce-human-escalation-configure/scripts/patch-escalation-surfaces.mjs +131 -0
  35. package/skills/service-agentforce-human-escalation-configure/scripts/tests/__init__.py +0 -0
  36. package/skills/service-agentforce-human-escalation-configure/scripts/tests/_bootstrap.py +249 -0
  37. package/skills/service-agentforce-human-escalation-configure/scripts/tests/test_escalation_contracts.py +899 -0
  38. package/skills/service-agentforce-human-escalation-configure/scripts/verify-and-configure.sh +705 -0
  39. package/skills/service-agentforce-human-escalation-configure/scripts/verify-escalation-config.mjs +89 -0
  40. package/skills/service-de-channel-routing-configure/SKILL.md +13 -5
  41. package/skills/service-de-channel-routing-configure/scripts/tests/test_skill_contract.py +25 -0
  42. package/skills/service-itsm-agentic-setup-agentforce-coordinate/SKILL.md +23 -10
  43. package/skills/service-itsm-agentic-setup-agentforce-coordinate/examples/output-templates.md +63 -48
  44. package/skills/service-itsm-agentic-setup-agentforce-coordinate/scripts/verify-child-verdict.mjs +6 -2
  45. package/skills/service-omni-agent-users-create/SKILL.md +96 -0
  46. package/skills/service-omni-agent-users-create/assets/create-users.apex.template +80 -0
  47. package/skills/service-omni-agent-users-create/references/apex-patterns.md +135 -0
  48. package/skills/service-omni-agent-users-create/references/apex-template-notes.md +40 -0
  49. package/skills/service-omni-agent-users-create/scripts/detect-and-create.sh +206 -0
  50. package/skills/service-omni-agent-users-create/scripts/detect-existing.sh +122 -0
  51. package/skills/service-omni-agent-users-create/scripts/run-create.sh +298 -0
  52. package/skills/service-omni-agent-users-create/scripts/tests/test_user_create_security.py +171 -0
  53. package/skills/service-omni-agent-work-sharing-configure/SKILL.md +78 -0
  54. package/skills/service-omni-agent-work-sharing-configure/references/api-notes.md +31 -0
  55. package/skills/service-omni-agent-work-sharing-configure/scripts/configure-and-report.sh +186 -0
  56. package/skills/service-omni-agent-work-sharing-configure/scripts/tests/_bootstrap.py +120 -0
  57. package/skills/service-omni-agent-work-sharing-configure/scripts/tests/test_agent_work_sharing_contracts.py +93 -0
  58. package/skills/service-omni-base-settings-configure/SKILL.md +77 -0
  59. package/skills/service-omni-base-settings-configure/assets/force-app/main/default/settings/OmniChannel.settings-meta.xml +8 -0
  60. package/skills/service-omni-base-settings-configure/assets/package.xml +8 -0
  61. package/skills/service-omni-base-settings-configure/assets/sfdx-project.json +12 -0
  62. package/skills/service-omni-base-settings-configure/references/api-notes.md +121 -0
  63. package/skills/service-omni-base-settings-configure/scripts/configure-and-report.sh +164 -0
  64. package/skills/service-omni-base-settings-configure/scripts/detect-existing.sh +69 -0
  65. package/skills/service-omni-channel-setup-coordinate/SKILL.md +168 -0
  66. package/skills/service-omni-channel-setup-coordinate/examples/output-templates.md +161 -0
  67. package/skills/service-omni-channel-setup-coordinate/references/gap-catalog.md +99 -0
  68. package/skills/service-omni-channel-setup-coordinate/scripts/integration-driver.sh +1542 -0
  69. package/skills/service-omni-channel-setup-coordinate/scripts/tests/__init__.py +0 -0
  70. package/skills/service-omni-channel-setup-coordinate/scripts/tests/_bootstrap.py +223 -0
  71. package/skills/service-omni-channel-setup-coordinate/scripts/tests/test_omni_contracts.py +804 -0
  72. package/skills/service-omni-command-center-analyze/SKILL.md +84 -0
  73. package/skills/service-omni-command-center-analyze/references/api-notes.md +54 -0
  74. package/skills/service-omni-command-center-analyze/scripts/analyze.sh +198 -0
  75. package/skills/service-omni-command-center-analyze/scripts/tests/_bootstrap.py +115 -0
  76. package/skills/service-omni-command-center-analyze/scripts/tests/test_command_center_analyze_contracts.py +165 -0
  77. package/skills/service-omni-permission-set-assign/SKILL.md +88 -0
  78. package/skills/service-omni-permission-set-assign/assets/package.xml +8 -0
  79. package/skills/service-omni-permission-set-assign/references/api-notes.md +143 -0
  80. package/skills/service-omni-permission-set-assign/scripts/verify-and-assign.sh +397 -0
  81. package/skills/service-omni-presence-status-deploy/SKILL.md +87 -0
  82. package/skills/service-omni-presence-status-deploy/assets/package.xml +12 -0
  83. package/skills/service-omni-presence-status-deploy/references/api-notes.md +115 -0
  84. package/skills/service-omni-presence-status-deploy/scripts/deploy-and-report.sh +422 -0
  85. package/skills/service-omni-presence-user-config-deploy/SKILL.md +80 -0
  86. package/skills/service-omni-presence-user-config-deploy/references/api-notes.md +60 -0
  87. package/skills/service-omni-presence-user-config-deploy/scripts/deploy-and-report.sh +261 -0
  88. package/skills/service-omni-presence-user-config-deploy/scripts/tests/_bootstrap.py +106 -0
  89. package/skills/service-omni-presence-user-config-deploy/scripts/tests/test_presence_user_config_contracts.py +142 -0
  90. package/skills/service-omni-queue-deploy/SKILL.md +91 -0
  91. package/skills/service-omni-queue-deploy/references/api-notes.md +140 -0
  92. package/skills/service-omni-queue-deploy/scripts/verify-and-align.sh +470 -0
  93. package/skills/service-omni-queue-members-assign/SKILL.md +93 -0
  94. package/skills/service-omni-queue-members-assign/references/api-notes.md +144 -0
  95. package/skills/service-omni-queue-members-assign/scripts/tests/_bootstrap.py +67 -0
  96. package/skills/service-omni-queue-members-assign/scripts/tests/test_queue_members_contracts.py +73 -0
  97. package/skills/service-omni-queue-members-assign/scripts/verify-and-bind.sh +362 -0
  98. package/skills/service-omni-queue-routing-config-deploy/SKILL.md +101 -0
  99. package/skills/service-omni-queue-routing-config-deploy/references/api-notes.md +127 -0
  100. package/skills/service-omni-queue-routing-config-deploy/scripts/tests/_bootstrap.py +90 -0
  101. package/skills/service-omni-queue-routing-config-deploy/scripts/tests/test_queue_routing_config_contracts.py +70 -0
  102. package/skills/service-omni-queue-routing-config-deploy/scripts/upsert-and-report.sh +538 -0
  103. package/skills/service-omni-routing-flow-deploy/SKILL.md +111 -0
  104. package/skills/service-omni-routing-flow-deploy/assets/force-app/main/default/flows/Omni_Route_Case_Trigger.SkillsBased.flow-meta.xml +94 -0
  105. package/skills/service-omni-routing-flow-deploy/assets/force-app/main/default/flows/Omni_Route_Case_Trigger.flow-meta.xml +88 -0
  106. package/skills/service-omni-routing-flow-deploy/assets/force-app/main/default/flows/Omni_Route_Cases.flow-meta.xml +144 -0
  107. package/skills/service-omni-routing-flow-deploy/assets/force-app/main/default/flows/Omni_Route_VoiceCall_Trigger.SkillsBased.flow-meta.xml +94 -0
  108. package/skills/service-omni-routing-flow-deploy/assets/force-app/main/default/flows/Omni_Route_VoiceCall_Trigger.flow-meta.xml +88 -0
  109. package/skills/service-omni-routing-flow-deploy/assets/force-app/main/default/flows/Omni_Route_VoiceCalls.flow-meta.xml +144 -0
  110. package/skills/service-omni-routing-flow-deploy/assets/package.xml +11 -0
  111. package/skills/service-omni-routing-flow-deploy/assets/sfdx-project.json +11 -0
  112. package/skills/service-omni-routing-flow-deploy/references/api-notes.md +265 -0
  113. package/skills/service-omni-routing-flow-deploy/scripts/deploy-and-report.sh +684 -0
  114. package/skills/service-omni-service-channel-configure/SKILL.md +83 -0
  115. package/skills/service-omni-service-channel-configure/assets/force-app/main/default/serviceChannels/Cases.serviceChannel-meta.xml +9 -0
  116. package/skills/service-omni-service-channel-configure/assets/force-app/main/default/serviceChannels/Incidents.serviceChannel-meta.xml +9 -0
  117. package/skills/service-omni-service-channel-configure/assets/force-app/main/default/serviceChannels/MessagingSessions.serviceChannel-meta.xml +9 -0
  118. package/skills/service-omni-service-channel-configure/assets/force-app/main/default/serviceChannels/VoiceCalls.serviceChannel-meta.xml +9 -0
  119. package/skills/service-omni-service-channel-configure/assets/package.xml +11 -0
  120. package/skills/service-omni-service-channel-configure/assets/sfdx-project.json +12 -0
  121. package/skills/service-omni-service-channel-configure/references/api-notes.md +84 -0
  122. package/skills/service-omni-service-channel-configure/scripts/deploy-and-report.sh +383 -0
  123. package/skills/service-omni-sidebar-configure/SKILL.md +77 -0
  124. package/skills/service-omni-sidebar-configure/references/api-notes.md +51 -0
  125. package/skills/service-omni-sidebar-configure/scripts/enable-and-report.sh +315 -0
  126. package/skills/service-omni-sidebar-configure/scripts/tests/_bootstrap.py +142 -0
  127. package/skills/service-omni-sidebar-configure/scripts/tests/test_sidebar_contracts.py +139 -0
  128. package/skills/service-omni-skills-based-routing-configure/SKILL.md +81 -0
  129. package/skills/service-omni-skills-based-routing-configure/references/api-notes.md +50 -0
  130. package/skills/service-omni-skills-based-routing-configure/scripts/configure-and-report.sh +270 -0
  131. package/skills/service-omni-skills-based-routing-configure/scripts/tests/_bootstrap.py +120 -0
  132. package/skills/service-omni-skills-based-routing-configure/scripts/tests/test_sbr_contracts.py +129 -0
  133. package/skills/service-omni-supervisor-config-deploy/SKILL.md +97 -0
  134. package/skills/service-omni-supervisor-config-deploy/assets/force-app/main/default/omniSupervisorConfigs/Omni_Supervisor.omniSupervisorConfig-meta.xml +9 -0
  135. package/skills/service-omni-supervisor-config-deploy/assets/package.xml +8 -0
  136. package/skills/service-omni-supervisor-config-deploy/assets/sfdx-project.json +12 -0
  137. package/skills/service-omni-supervisor-config-deploy/references/api-notes.md +205 -0
  138. package/skills/service-omni-supervisor-config-deploy/scripts/deploy-and-report.sh +586 -0
  139. package/skills/service-omni-supervisor-config-deploy/scripts/tests/_bootstrap.py +153 -0
  140. package/skills/service-omni-supervisor-config-deploy/scripts/tests/test_supervisor_config_contracts.py +116 -0
  141. package/skills/service-omni-supervisor-permset-assign/SKILL.md +88 -0
  142. package/skills/service-omni-supervisor-permset-assign/references/api-notes.md +48 -0
  143. package/skills/service-omni-supervisor-permset-assign/scripts/verify-and-assign.sh +316 -0
  144. package/skills/service-omni-supervisor-surface-deploy/SKILL.md +85 -0
  145. package/skills/service-omni-supervisor-surface-deploy/references/api-notes.md +47 -0
  146. package/skills/service-omni-supervisor-surface-deploy/scripts/deploy-and-report.sh +216 -0
  147. package/skills/service-omni-supervisor-surface-deploy/scripts/tests/_bootstrap.py +95 -0
  148. package/skills/service-omni-supervisor-surface-deploy/scripts/tests/test_supervisor_surface_contracts.py +154 -0
  149. package/skills/service-omni-supervisor-users-create/SKILL.md +92 -0
  150. package/skills/service-omni-supervisor-users-create/assets/create-supervisors.apex.template +72 -0
  151. package/skills/service-omni-supervisor-users-create/references/apex-patterns.md +73 -0
  152. package/skills/service-omni-supervisor-users-create/references/apex-template-notes.md +41 -0
  153. package/skills/service-omni-supervisor-users-create/scripts/detect-and-create.sh +197 -0
  154. package/skills/service-omni-supervisor-users-create/scripts/detect-existing.sh +112 -0
  155. package/skills/service-omni-supervisor-users-create/scripts/run-create.sh +296 -0
  156. package/skills/service-omni-work-skill-routing-configure/SKILL.md +80 -0
  157. package/skills/service-omni-work-skill-routing-configure/references/api-notes.md +67 -0
  158. package/skills/service-omni-work-skill-routing-configure/scripts/configure-and-report.sh +262 -0
  159. package/skills/service-omni-work-skill-routing-configure/scripts/tests/_bootstrap.py +121 -0
  160. package/skills/service-omni-work-skill-routing-configure/scripts/tests/test_work_skill_routing_contracts.py +161 -0
@@ -0,0 +1,94 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Flow xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <actionCalls>
5
+ <name>Route_Case_Work_Item</name>
6
+ <label>Route Case Work Item</label>
7
+ <locationX>176</locationX>
8
+ <locationY>276</locationY>
9
+ <actionName>routeWork</actionName>
10
+ <actionType>routeWork</actionType>
11
+ <flowTransactionModel>CurrentTransaction</flowTransactionModel>
12
+ <inputParameters>
13
+ <name>recordId</name>
14
+ <value>
15
+ <elementReference>$Record.Id</elementReference>
16
+ </value>
17
+ </inputParameters>
18
+ <inputParameters>
19
+ <name>serviceChannelId</name>
20
+ <value>
21
+ <stringValue>__SERVICE_CHANNEL_ID__</stringValue>
22
+ </value>
23
+ </inputParameters>
24
+ <inputParameters>
25
+ <name>serviceChannelDevName</name>
26
+ <value>
27
+ <stringValue>__SERVICE_CHANNEL_DEVNAME__</stringValue>
28
+ </value>
29
+ </inputParameters>
30
+ <inputParameters>
31
+ <name>serviceChannelLabel</name>
32
+ <value>
33
+ <stringValue>__SERVICE_CHANNEL_LABEL__</stringValue>
34
+ </value>
35
+ </inputParameters>
36
+ <inputParameters>
37
+ <name>routingType</name>
38
+ <value>
39
+ <stringValue>SkillsBased</stringValue>
40
+ </value>
41
+ </inputParameters>
42
+ <inputParameters>
43
+ <name>skillOption</name>
44
+ <value>
45
+ <stringValue>__SKILL_OPTION__</stringValue>
46
+ </value>
47
+ </inputParameters>
48
+ <inputParameters>
49
+ <name>routingConfigId</name>
50
+ <value>
51
+ <stringValue>__ROUTING_CONFIG_ID__</stringValue>
52
+ </value>
53
+ </inputParameters>
54
+ <inputParameters>
55
+ <name>queueId</name>
56
+ <value>
57
+ <stringValue>__QUEUE_ID__</stringValue>
58
+ </value>
59
+ </inputParameters>
60
+ </actionCalls>
61
+ <description>Record-triggered Omni-Channel SKILLS-BASED routing flow. Fires on Case insert and calls the standard routeWork invocable action with routingType=SkillsBased and a non-null skillOption to create a PendingServiceRouting for the new Case, then routes by skill. With skillOption=RunSBRRules (default) the platform evaluates the org's WorkSkillRouting (skills-based routing) rules server-side and attaches the matching SkillRequirement rows to the PSR; skillOption is REQUIRED here (a null skillOption makes the platform routeWork action NPE and roll back the Case insert - W-24069761), so this asset always carries it. The org-specific IDs (serviceChannelId, queueId, routingConfigId) and the skillOption are tokenized and resolved at deploy time so the asset is portable across orgs. Deployed by service-omni-routing-flow-deploy with --routing-type SkillsBased. This is the skills-based production routing variant; Omni_Route_Case_Trigger is the queue-based variant.</description>
62
+ <interviewLabel>Omni Route Case Trigger {!$Flow.CurrentDateTime}</interviewLabel>
63
+ <label>Omni Route Case Trigger</label>
64
+ <processMetadataValues>
65
+ <name>BuilderType</name>
66
+ <value>
67
+ <stringValue>LightningFlowBuilder</stringValue>
68
+ </value>
69
+ </processMetadataValues>
70
+ <processMetadataValues>
71
+ <name>CanvasMode</name>
72
+ <value>
73
+ <stringValue>AUTO_LAYOUT_CANVAS</stringValue>
74
+ </value>
75
+ </processMetadataValues>
76
+ <processMetadataValues>
77
+ <name>OriginBuilderType</name>
78
+ <value>
79
+ <stringValue>LightningFlowBuilder</stringValue>
80
+ </value>
81
+ </processMetadataValues>
82
+ <processType>AutoLaunchedFlow</processType>
83
+ <start>
84
+ <locationX>176</locationX>
85
+ <locationY>0</locationY>
86
+ <connector>
87
+ <targetReference>Route_Case_Work_Item</targetReference>
88
+ </connector>
89
+ <object>Case</object>
90
+ <recordTriggerType>Create</recordTriggerType>
91
+ <triggerType>RecordAfterSave</triggerType>
92
+ </start>
93
+ <status>Active</status>
94
+ </Flow>
@@ -0,0 +1,88 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Flow xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <actionCalls>
5
+ <name>Route_Case_Work_Item</name>
6
+ <label>Route Case Work Item</label>
7
+ <locationX>176</locationX>
8
+ <locationY>276</locationY>
9
+ <actionName>routeWork</actionName>
10
+ <actionType>routeWork</actionType>
11
+ <flowTransactionModel>CurrentTransaction</flowTransactionModel>
12
+ <inputParameters>
13
+ <name>recordId</name>
14
+ <value>
15
+ <elementReference>$Record.Id</elementReference>
16
+ </value>
17
+ </inputParameters>
18
+ <inputParameters>
19
+ <name>serviceChannelId</name>
20
+ <value>
21
+ <stringValue>__SERVICE_CHANNEL_ID__</stringValue>
22
+ </value>
23
+ </inputParameters>
24
+ <inputParameters>
25
+ <name>serviceChannelDevName</name>
26
+ <value>
27
+ <stringValue>__SERVICE_CHANNEL_DEVNAME__</stringValue>
28
+ </value>
29
+ </inputParameters>
30
+ <inputParameters>
31
+ <name>serviceChannelLabel</name>
32
+ <value>
33
+ <stringValue>__SERVICE_CHANNEL_LABEL__</stringValue>
34
+ </value>
35
+ </inputParameters>
36
+ <inputParameters>
37
+ <name>routingType</name>
38
+ <value>
39
+ <stringValue>QueueBased</stringValue>
40
+ </value>
41
+ </inputParameters>
42
+ <inputParameters>
43
+ <name>routingConfigId</name>
44
+ <value>
45
+ <stringValue>__ROUTING_CONFIG_ID__</stringValue>
46
+ </value>
47
+ </inputParameters>
48
+ <inputParameters>
49
+ <name>queueId</name>
50
+ <value>
51
+ <stringValue>__QUEUE_ID__</stringValue>
52
+ </value>
53
+ </inputParameters>
54
+ </actionCalls>
55
+ <description>Record-triggered Omni-Channel routing flow. Fires on Case insert and calls the standard routeWork invocable action to create a PendingServiceRouting for the new Case, handing it to Omni-Channel for distribution to an available agent monitoring the target queue. The org-specific IDs (serviceChannelId, queueId, routingConfigId) are tokenized and resolved by DeveloperName at deploy time so the asset is portable across orgs. Deployed by service-omni-routing-flow-deploy. This is the production routing variant; Omni_Route_Cases is the autolaunched dryRun smoke-test variant that proves headless CLI invocability.</description>
56
+ <interviewLabel>Omni Route Case Trigger {!$Flow.CurrentDateTime}</interviewLabel>
57
+ <label>Omni Route Case Trigger</label>
58
+ <processMetadataValues>
59
+ <name>BuilderType</name>
60
+ <value>
61
+ <stringValue>LightningFlowBuilder</stringValue>
62
+ </value>
63
+ </processMetadataValues>
64
+ <processMetadataValues>
65
+ <name>CanvasMode</name>
66
+ <value>
67
+ <stringValue>AUTO_LAYOUT_CANVAS</stringValue>
68
+ </value>
69
+ </processMetadataValues>
70
+ <processMetadataValues>
71
+ <name>OriginBuilderType</name>
72
+ <value>
73
+ <stringValue>LightningFlowBuilder</stringValue>
74
+ </value>
75
+ </processMetadataValues>
76
+ <processType>AutoLaunchedFlow</processType>
77
+ <start>
78
+ <locationX>176</locationX>
79
+ <locationY>0</locationY>
80
+ <connector>
81
+ <targetReference>Route_Case_Work_Item</targetReference>
82
+ </connector>
83
+ <object>Case</object>
84
+ <recordTriggerType>Create</recordTriggerType>
85
+ <triggerType>RecordAfterSave</triggerType>
86
+ </start>
87
+ <status>Active</status>
88
+ </Flow>
@@ -0,0 +1,144 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Flow xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <assignments>
5
+ <name>Set_Dry_Run_Ok</name>
6
+ <label>Set Dry Run Ok</label>
7
+ <locationX>176</locationX>
8
+ <locationY>350</locationY>
9
+ <assignmentItems>
10
+ <assignToReference>dryRunOk</assignToReference>
11
+ <operator>Assign</operator>
12
+ <value>
13
+ <booleanValue>true</booleanValue>
14
+ </value>
15
+ </assignmentItems>
16
+ <assignmentItems>
17
+ <assignToReference>routed</assignToReference>
18
+ <operator>Assign</operator>
19
+ <value>
20
+ <booleanValue>false</booleanValue>
21
+ </value>
22
+ </assignmentItems>
23
+ </assignments>
24
+ <assignments>
25
+ <name>Set_Routed</name>
26
+ <label>Set Routed</label>
27
+ <locationX>440</locationX>
28
+ <locationY>350</locationY>
29
+ <assignmentItems>
30
+ <assignToReference>dryRunOk</assignToReference>
31
+ <operator>Assign</operator>
32
+ <value>
33
+ <booleanValue>false</booleanValue>
34
+ </value>
35
+ </assignmentItems>
36
+ <assignmentItems>
37
+ <assignToReference>routed</assignToReference>
38
+ <operator>Assign</operator>
39
+ <value>
40
+ <booleanValue>true</booleanValue>
41
+ </value>
42
+ </assignmentItems>
43
+ </assignments>
44
+ <decisions>
45
+ <name>Is_Dry_Run</name>
46
+ <label>Is Dry Run</label>
47
+ <locationX>308</locationX>
48
+ <locationY>242</locationY>
49
+ <defaultConnector>
50
+ <targetReference>Set_Routed</targetReference>
51
+ </defaultConnector>
52
+ <defaultConnectorLabel>Not a dry run</defaultConnectorLabel>
53
+ <rules>
54
+ <name>Dry_Run_True</name>
55
+ <conditionLogic>and</conditionLogic>
56
+ <conditions>
57
+ <leftValueReference>dryRun</leftValueReference>
58
+ <operator>EqualTo</operator>
59
+ <rightValue>
60
+ <booleanValue>true</booleanValue>
61
+ </rightValue>
62
+ </conditions>
63
+ <connector>
64
+ <targetReference>Set_Dry_Run_Ok</targetReference>
65
+ </connector>
66
+ <label>Dry Run True</label>
67
+ </rules>
68
+ </decisions>
69
+ <description>Omni-Channel routing flow for Case work items. Includes a dryRun input for CLI smoke-testing without a queue configured. When dryRun=false, expects workItemId/queueId/routingConfigurationId inputs and hands off to the platform's routeWorkAction. Deployed by service-omni-routing-flow-deploy.</description>
70
+ <interviewLabel>Omni Route Cases {!$Flow.CurrentDateTime}</interviewLabel>
71
+ <label>Omni Route Cases</label>
72
+ <processMetadataValues>
73
+ <name>BuilderType</name>
74
+ <value>
75
+ <stringValue>LightningFlowBuilder</stringValue>
76
+ </value>
77
+ </processMetadataValues>
78
+ <processMetadataValues>
79
+ <name>CanvasMode</name>
80
+ <value>
81
+ <stringValue>AUTO_LAYOUT_CANVAS</stringValue>
82
+ </value>
83
+ </processMetadataValues>
84
+ <processMetadataValues>
85
+ <name>OriginBuilderType</name>
86
+ <value>
87
+ <stringValue>LightningFlowBuilder</stringValue>
88
+ </value>
89
+ </processMetadataValues>
90
+ <processType>AutoLaunchedFlow</processType>
91
+ <start>
92
+ <locationX>182</locationX>
93
+ <locationY>134</locationY>
94
+ <connector>
95
+ <targetReference>Is_Dry_Run</targetReference>
96
+ </connector>
97
+ </start>
98
+ <status>Active</status>
99
+ <variables>
100
+ <name>dryRun</name>
101
+ <dataType>Boolean</dataType>
102
+ <isCollection>false</isCollection>
103
+ <isInput>true</isInput>
104
+ <isOutput>false</isOutput>
105
+ <value>
106
+ <booleanValue>false</booleanValue>
107
+ </value>
108
+ </variables>
109
+ <variables>
110
+ <name>dryRunOk</name>
111
+ <dataType>Boolean</dataType>
112
+ <isCollection>false</isCollection>
113
+ <isInput>false</isInput>
114
+ <isOutput>true</isOutput>
115
+ </variables>
116
+ <variables>
117
+ <name>queueId</name>
118
+ <dataType>String</dataType>
119
+ <isCollection>false</isCollection>
120
+ <isInput>true</isInput>
121
+ <isOutput>false</isOutput>
122
+ </variables>
123
+ <variables>
124
+ <name>recordId</name>
125
+ <dataType>String</dataType>
126
+ <isCollection>false</isCollection>
127
+ <isInput>true</isInput>
128
+ <isOutput>false</isOutput>
129
+ </variables>
130
+ <variables>
131
+ <name>routed</name>
132
+ <dataType>Boolean</dataType>
133
+ <isCollection>false</isCollection>
134
+ <isInput>false</isInput>
135
+ <isOutput>true</isOutput>
136
+ </variables>
137
+ <variables>
138
+ <name>routingConfigurationId</name>
139
+ <dataType>String</dataType>
140
+ <isCollection>false</isCollection>
141
+ <isInput>true</isInput>
142
+ <isOutput>false</isOutput>
143
+ </variables>
144
+ </Flow>
@@ -0,0 +1,94 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Flow xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <actionCalls>
5
+ <name>Route_VoiceCall_Work_Item</name>
6
+ <label>Route VoiceCall Work Item</label>
7
+ <locationX>176</locationX>
8
+ <locationY>276</locationY>
9
+ <actionName>routeWork</actionName>
10
+ <actionType>routeWork</actionType>
11
+ <flowTransactionModel>CurrentTransaction</flowTransactionModel>
12
+ <inputParameters>
13
+ <name>recordId</name>
14
+ <value>
15
+ <elementReference>$Record.Id</elementReference>
16
+ </value>
17
+ </inputParameters>
18
+ <inputParameters>
19
+ <name>serviceChannelId</name>
20
+ <value>
21
+ <stringValue>__SERVICE_CHANNEL_ID__</stringValue>
22
+ </value>
23
+ </inputParameters>
24
+ <inputParameters>
25
+ <name>serviceChannelDevName</name>
26
+ <value>
27
+ <stringValue>__SERVICE_CHANNEL_DEVNAME__</stringValue>
28
+ </value>
29
+ </inputParameters>
30
+ <inputParameters>
31
+ <name>serviceChannelLabel</name>
32
+ <value>
33
+ <stringValue>__SERVICE_CHANNEL_LABEL__</stringValue>
34
+ </value>
35
+ </inputParameters>
36
+ <inputParameters>
37
+ <name>routingType</name>
38
+ <value>
39
+ <stringValue>SkillsBased</stringValue>
40
+ </value>
41
+ </inputParameters>
42
+ <inputParameters>
43
+ <name>skillOption</name>
44
+ <value>
45
+ <stringValue>__SKILL_OPTION__</stringValue>
46
+ </value>
47
+ </inputParameters>
48
+ <inputParameters>
49
+ <name>routingConfigId</name>
50
+ <value>
51
+ <stringValue>__ROUTING_CONFIG_ID__</stringValue>
52
+ </value>
53
+ </inputParameters>
54
+ <inputParameters>
55
+ <name>queueId</name>
56
+ <value>
57
+ <stringValue>__QUEUE_ID__</stringValue>
58
+ </value>
59
+ </inputParameters>
60
+ </actionCalls>
61
+ <description>Record-triggered Omni-Channel SKILLS-BASED routing flow. Fires on VoiceCall insert and calls the standard routeWork invocable action with routingType=SkillsBased and a non-null skillOption to create a PendingServiceRouting for the new VoiceCall, then routes by skill. With skillOption=RunSBRRules (default) the platform evaluates the org's WorkSkillRouting (skills-based routing) rules server-side and attaches the matching SkillRequirement rows to the PSR; skillOption is REQUIRED here (a null skillOption makes the platform routeWork action NPE and roll back the VoiceCall insert - W-24069761), so this asset always carries it. The org-specific IDs (serviceChannelId, queueId, routingConfigId) and the skillOption are tokenized and resolved at deploy time so the asset is portable across orgs. Deployed by service-omni-routing-flow-deploy with --routing-type SkillsBased. This is the skills-based production routing variant; Omni_Route_VoiceCall_Trigger is the queue-based variant.</description>
62
+ <interviewLabel>Omni Route VoiceCall Trigger {!$Flow.CurrentDateTime}</interviewLabel>
63
+ <label>Omni Route VoiceCall Trigger</label>
64
+ <processMetadataValues>
65
+ <name>BuilderType</name>
66
+ <value>
67
+ <stringValue>LightningFlowBuilder</stringValue>
68
+ </value>
69
+ </processMetadataValues>
70
+ <processMetadataValues>
71
+ <name>CanvasMode</name>
72
+ <value>
73
+ <stringValue>AUTO_LAYOUT_CANVAS</stringValue>
74
+ </value>
75
+ </processMetadataValues>
76
+ <processMetadataValues>
77
+ <name>OriginBuilderType</name>
78
+ <value>
79
+ <stringValue>LightningFlowBuilder</stringValue>
80
+ </value>
81
+ </processMetadataValues>
82
+ <processType>AutoLaunchedFlow</processType>
83
+ <start>
84
+ <locationX>176</locationX>
85
+ <locationY>0</locationY>
86
+ <connector>
87
+ <targetReference>Route_VoiceCall_Work_Item</targetReference>
88
+ </connector>
89
+ <object>VoiceCall</object>
90
+ <recordTriggerType>Create</recordTriggerType>
91
+ <triggerType>RecordAfterSave</triggerType>
92
+ </start>
93
+ <status>Active</status>
94
+ </Flow>
@@ -0,0 +1,88 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Flow xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <actionCalls>
5
+ <name>Route_VoiceCall_Work_Item</name>
6
+ <label>Route VoiceCall Work Item</label>
7
+ <locationX>176</locationX>
8
+ <locationY>276</locationY>
9
+ <actionName>routeWork</actionName>
10
+ <actionType>routeWork</actionType>
11
+ <flowTransactionModel>CurrentTransaction</flowTransactionModel>
12
+ <inputParameters>
13
+ <name>recordId</name>
14
+ <value>
15
+ <elementReference>$Record.Id</elementReference>
16
+ </value>
17
+ </inputParameters>
18
+ <inputParameters>
19
+ <name>serviceChannelId</name>
20
+ <value>
21
+ <stringValue>__SERVICE_CHANNEL_ID__</stringValue>
22
+ </value>
23
+ </inputParameters>
24
+ <inputParameters>
25
+ <name>serviceChannelDevName</name>
26
+ <value>
27
+ <stringValue>__SERVICE_CHANNEL_DEVNAME__</stringValue>
28
+ </value>
29
+ </inputParameters>
30
+ <inputParameters>
31
+ <name>serviceChannelLabel</name>
32
+ <value>
33
+ <stringValue>__SERVICE_CHANNEL_LABEL__</stringValue>
34
+ </value>
35
+ </inputParameters>
36
+ <inputParameters>
37
+ <name>routingType</name>
38
+ <value>
39
+ <stringValue>QueueBased</stringValue>
40
+ </value>
41
+ </inputParameters>
42
+ <inputParameters>
43
+ <name>routingConfigId</name>
44
+ <value>
45
+ <stringValue>__ROUTING_CONFIG_ID__</stringValue>
46
+ </value>
47
+ </inputParameters>
48
+ <inputParameters>
49
+ <name>queueId</name>
50
+ <value>
51
+ <stringValue>__QUEUE_ID__</stringValue>
52
+ </value>
53
+ </inputParameters>
54
+ </actionCalls>
55
+ <description>Record-triggered Omni-Channel routing flow. Fires on VoiceCall insert and calls the standard routeWork invocable action to create a PendingServiceRouting for the new VoiceCall, handing it to Omni-Channel for distribution to an available agent monitoring the target Voice queue. The org-specific IDs (serviceChannelId, queueId, routingConfigId) are tokenized and resolved by DeveloperName at deploy time so the asset is portable across orgs. Deployed by service-omni-routing-flow-deploy. This is the production routing variant; Omni_Route_VoiceCalls is the autolaunched dryRun smoke-test variant that proves headless CLI invocability.</description>
56
+ <interviewLabel>Omni Route VoiceCall Trigger {!$Flow.CurrentDateTime}</interviewLabel>
57
+ <label>Omni Route VoiceCall Trigger</label>
58
+ <processMetadataValues>
59
+ <name>BuilderType</name>
60
+ <value>
61
+ <stringValue>LightningFlowBuilder</stringValue>
62
+ </value>
63
+ </processMetadataValues>
64
+ <processMetadataValues>
65
+ <name>CanvasMode</name>
66
+ <value>
67
+ <stringValue>AUTO_LAYOUT_CANVAS</stringValue>
68
+ </value>
69
+ </processMetadataValues>
70
+ <processMetadataValues>
71
+ <name>OriginBuilderType</name>
72
+ <value>
73
+ <stringValue>LightningFlowBuilder</stringValue>
74
+ </value>
75
+ </processMetadataValues>
76
+ <processType>AutoLaunchedFlow</processType>
77
+ <start>
78
+ <locationX>176</locationX>
79
+ <locationY>0</locationY>
80
+ <connector>
81
+ <targetReference>Route_VoiceCall_Work_Item</targetReference>
82
+ </connector>
83
+ <object>VoiceCall</object>
84
+ <recordTriggerType>Create</recordTriggerType>
85
+ <triggerType>RecordAfterSave</triggerType>
86
+ </start>
87
+ <status>Active</status>
88
+ </Flow>
@@ -0,0 +1,144 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Flow xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <assignments>
5
+ <name>Set_Dry_Run_Ok</name>
6
+ <label>Set Dry Run Ok</label>
7
+ <locationX>176</locationX>
8
+ <locationY>350</locationY>
9
+ <assignmentItems>
10
+ <assignToReference>dryRunOk</assignToReference>
11
+ <operator>Assign</operator>
12
+ <value>
13
+ <booleanValue>true</booleanValue>
14
+ </value>
15
+ </assignmentItems>
16
+ <assignmentItems>
17
+ <assignToReference>routed</assignToReference>
18
+ <operator>Assign</operator>
19
+ <value>
20
+ <booleanValue>false</booleanValue>
21
+ </value>
22
+ </assignmentItems>
23
+ </assignments>
24
+ <assignments>
25
+ <name>Set_Routed</name>
26
+ <label>Set Routed</label>
27
+ <locationX>440</locationX>
28
+ <locationY>350</locationY>
29
+ <assignmentItems>
30
+ <assignToReference>dryRunOk</assignToReference>
31
+ <operator>Assign</operator>
32
+ <value>
33
+ <booleanValue>false</booleanValue>
34
+ </value>
35
+ </assignmentItems>
36
+ <assignmentItems>
37
+ <assignToReference>routed</assignToReference>
38
+ <operator>Assign</operator>
39
+ <value>
40
+ <booleanValue>true</booleanValue>
41
+ </value>
42
+ </assignmentItems>
43
+ </assignments>
44
+ <decisions>
45
+ <name>Is_Dry_Run</name>
46
+ <label>Is Dry Run</label>
47
+ <locationX>308</locationX>
48
+ <locationY>242</locationY>
49
+ <defaultConnector>
50
+ <targetReference>Set_Routed</targetReference>
51
+ </defaultConnector>
52
+ <defaultConnectorLabel>Not a dry run</defaultConnectorLabel>
53
+ <rules>
54
+ <name>Dry_Run_True</name>
55
+ <conditionLogic>and</conditionLogic>
56
+ <conditions>
57
+ <leftValueReference>dryRun</leftValueReference>
58
+ <operator>EqualTo</operator>
59
+ <rightValue>
60
+ <booleanValue>true</booleanValue>
61
+ </rightValue>
62
+ </conditions>
63
+ <connector>
64
+ <targetReference>Set_Dry_Run_Ok</targetReference>
65
+ </connector>
66
+ <label>Dry Run True</label>
67
+ </rules>
68
+ </decisions>
69
+ <description>Omni-Channel routing flow for VoiceCall work items. Includes a dryRun input for CLI smoke-testing without a Contact Center configured. When dryRun=false, expects workItemId/queueId/routingConfigurationId inputs and hands off to the platform's routeWorkAction. Deployed by service-omni-routing-flow-deploy. Omni_Route_VoiceCall_Trigger is the record-triggered production variant.</description>
70
+ <interviewLabel>Omni Route VoiceCalls {!$Flow.CurrentDateTime}</interviewLabel>
71
+ <label>Omni Route VoiceCalls</label>
72
+ <processMetadataValues>
73
+ <name>BuilderType</name>
74
+ <value>
75
+ <stringValue>LightningFlowBuilder</stringValue>
76
+ </value>
77
+ </processMetadataValues>
78
+ <processMetadataValues>
79
+ <name>CanvasMode</name>
80
+ <value>
81
+ <stringValue>AUTO_LAYOUT_CANVAS</stringValue>
82
+ </value>
83
+ </processMetadataValues>
84
+ <processMetadataValues>
85
+ <name>OriginBuilderType</name>
86
+ <value>
87
+ <stringValue>LightningFlowBuilder</stringValue>
88
+ </value>
89
+ </processMetadataValues>
90
+ <processType>AutoLaunchedFlow</processType>
91
+ <start>
92
+ <locationX>182</locationX>
93
+ <locationY>134</locationY>
94
+ <connector>
95
+ <targetReference>Is_Dry_Run</targetReference>
96
+ </connector>
97
+ </start>
98
+ <status>Active</status>
99
+ <variables>
100
+ <name>dryRun</name>
101
+ <dataType>Boolean</dataType>
102
+ <isCollection>false</isCollection>
103
+ <isInput>true</isInput>
104
+ <isOutput>false</isOutput>
105
+ <value>
106
+ <booleanValue>false</booleanValue>
107
+ </value>
108
+ </variables>
109
+ <variables>
110
+ <name>dryRunOk</name>
111
+ <dataType>Boolean</dataType>
112
+ <isCollection>false</isCollection>
113
+ <isInput>false</isInput>
114
+ <isOutput>true</isOutput>
115
+ </variables>
116
+ <variables>
117
+ <name>queueId</name>
118
+ <dataType>String</dataType>
119
+ <isCollection>false</isCollection>
120
+ <isInput>true</isInput>
121
+ <isOutput>false</isOutput>
122
+ </variables>
123
+ <variables>
124
+ <name>recordId</name>
125
+ <dataType>String</dataType>
126
+ <isCollection>false</isCollection>
127
+ <isInput>true</isInput>
128
+ <isOutput>false</isOutput>
129
+ </variables>
130
+ <variables>
131
+ <name>routed</name>
132
+ <dataType>Boolean</dataType>
133
+ <isCollection>false</isCollection>
134
+ <isInput>false</isInput>
135
+ <isOutput>true</isOutput>
136
+ </variables>
137
+ <variables>
138
+ <name>routingConfigurationId</name>
139
+ <dataType>String</dataType>
140
+ <isCollection>false</isCollection>
141
+ <isInput>true</isInput>
142
+ <isOutput>false</isOutput>
143
+ </variables>
144
+ </Flow>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Package xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <types>
4
+ <members>Omni_Route_Cases</members>
5
+ <members>Omni_Route_Case_Trigger</members>
6
+ <members>Omni_Route_VoiceCalls</members>
7
+ <members>Omni_Route_VoiceCall_Trigger</members>
8
+ <name>Flow</name>
9
+ </types>
10
+ <version>66.0</version>
11
+ </Package>