Σημείωμα
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να εισέλθετε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτήν τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Χρησιμοποιήστε το msdyn_invokeCaseProcessingAgent επιχειρηματικό συμβάν για να ενεργοποιήσετε τον Παράγοντα διαχείρισης υποθέσεων για να κάνετε τα εξής:
- Εξαγάγετε πληροφορίες από μια οντότητα προέλευσης, όπως ένα μήνυμα ηλεκτρονικού ταχυδρομείου, και ενημερώστε την υπόθεση με σχετικές λεπτομέρειες.
- επίλυση μιας συγκεκριμένης υπόθεσης.
Μπορείτε να το χρησιμοποιήσετε αυτό για να επεκτείνετε την αυτοματοποίηση υποθέσεων πέρα από τα προεπιλεγμένα εναύσματα. Για παράδειγμα, μπορείτε να καλέσετε τον Παράγοντα διαχείρισης υποθέσεων όταν ένας πελάτης δημιουργεί μια υπόθεση από μια εξωτερική πύλη ή όταν παρουσιάζεται ένα συμβάν CRUD σε έναν προσαρμοσμένο πίνακα, όπως νέες αποδείξεις που προστίθενται σε μια υπόθεση.
Προαπαιτούμενα
- Ο Παράγοντας διαχείρισης υποθέσεων έχει ρυθμιστεί.
- Βεβαιωθείτε ότι
Microsoft.CrmSdk.CoreAssembliesέχουν εγκατασταθεί τα ,Newtonsoft.Jsonκαι [Microsoft.Xrm.Tooling.Connector.dllαπό το Microsoft.CrmSdk.CoreTools .
Αίτηση HTTP
POST [Organization URI]/api/data/v9.2/msdyn_invokeCaseProcessingAgent
Σώμα αίτησης
| Property | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
| msdyn_incidentId | String | Ναι | Το αναγνωριστικό της υπόθεσης (περιστατικό) στην οποία θα πρέπει να εκτελεστεί ο Παράγοντας διαχείρισης υποθέσεων. Παράδειγμα: "3895d023-a353-f011-877b-6045bd062e87" |
| msdyn_actions | Συμβολοσειρά από JSON πίνακα | Ναι | Καθορίζει ποιες ενέργειες/δυνατότητες του Παράγοντα διαχείρισης υποθέσεων θα εκτελεστούν. Παρακάτω μπορείτε να δείτε λεπτομέρειες. |
αντικείμενο πίνακα msdyn_actions
| Property | Τύπος | Υποχρεωτικό | Περιγραφή |
|---|---|---|---|
| ενέργεια | String | Ναι | Καθορίζει την ενέργεια επεξεργασίας υπόθεσης προς εκτέλεση. Αξιεσ:
|
| automationLevel | String | Αρ. | Καθορίζει την κατάσταση αυτοματισμού για την ενέργεια. Αυτό ισχύει μόνο για την επίλυση υποθέσεων. Εάν αυτή η τιμή δεν παρέχεται, ο παράγοντας χρησιμοποιεί την κατάσταση λειτουργίας που έχει ρυθμιστεί από τον διαχειριστή. Αξιεσ:
|
| sourceContextEntity | String | Ναι | Αυτή είναι μια απαιτούμενη τιμή για τον εμπλουτισμό των υποθέσεων και προαιρετική για την επίλυση υποθέσεων. Η οντότητα προέλευσης, όπως ένα μήνυμα ηλεκτρονικού ταχυδρομείου ή μια συνομιλία που πρέπει να χρησιμοποιηθεί για την ενημέρωση της υπόθεσης. Παράδειγμα: "emails(0e20cf92-f663-f011-bec1-000d3a3622ba)" |
Δείγμα αίτησης
{
"msdyn_incidentId": "5ad2ac2c-6363-f011-bec2-6045bd026457",
"msdyn_actions": "[{\"action\":\"enrich\",\"sourceContextEntity\":\"emails(0e20cf92-f663-f011-bec1-000d3a3622ba)\"},{\"action\":\"resolve\",\"automationLevel\":\"Full\"}]"
}
Απάντηση
-
Επιτυχία: Επιστρέφει HTTP
204 No Contentμε κενό σώμα. - Αποτυχία: Τυπική απόκριση σφάλματος OData.
Δείγμα κώδικα
Στο παρακάτω παράδειγμα, μπορείτε να καλέσετε τον Παράγοντα διαχείρισης υποθέσεων από προσθήκες Dataverse ή προσαρμοσμένο κώδικα εκτελώντας την msdyn_invokeCaseProcessingAgent αίτηση οργανισμού. Ο παράγοντας χρησιμοποιείται για την ενημέρωση της υπόθεσης χρησιμοποιώντας μια σχετική οντότητα ηλεκτρονικού ταχυδρομείου και, στη συνέχεια, επιλύει την υπόθεση με πλήρη αυτοματοποίηση.
Παράδειγμα 1
CrmServiceClient GetService()
{
string orgUrl = "";
string username = "";
string connectionString = $"AuthType=OAuth;Username={username};Url={orgUrl};AppId=51f81489-12ee-4a9e-aaae-a2591f45987d;RedirectUri=http://localhost;LoginPrompt=Auto";
CrmServiceClient svc = new CrmServiceClient(connectionString);
return svc;
}
public class InvokeCaseProcessingAgentRequest
{
[JsonProperty("msdyn_incidentId")]
public string incidentid { get; set; }
[JsonProperty("msdyn_actions")]
public List<AgentAction> actions { get; set; }
}
public class AgentAction
{
[JsonProperty("action")]
public AgentActionType action { get; set; }
[JsonProperty("sourceContextEntity")]
public string sourceContextEntity { get; set; }
[JsonProperty("automationLevel")]
public AutomationLevel? automationLevel { get; set; }
}
[JsonConverter(typeof(StringEnumConverter))]
public enum AgentActionType
{
[EnumMember(Value = "enrich")]
Enrich,
[EnumMember(Value = "resolve")]
Resolve
}
[JsonConverter(typeof(StringEnumConverter))]
public enum AutomationLevel
{
[EnumMember(Value = "Full")]
Full,
[EnumMember(Value = "Semi")]
Semi
}
void Main()
{
var service = GetService();
var actions = new List<AgentAction>()
{
new AgentAction()
{
action = AgentActionType.Enrich,
sourceContextEntity = "emails(0e20cf92-f663-f011-bec1-000d3a3622ba)"
},
new AgentAction()
{
action = AgentActionType.Resolve,
automationLevel = AutomationLevel.Full
},
};
var req = new OrganizationRequest("msdyn_invokeCaseProcessingAgent")
{
["msdyn_incidentId"] = new Guid("8f2db50d-0c64-f011-bec2-000d3a3b776a"),
["msdyn_actions"] = JsonConvert.SerializeObject(actions)
};
service.Execute(req);
}
Παράδειγμα 2
function invokeCaseManagementAgent() {
var data = JSON.stringify({
"msdyn_incidentId": "020edf2f-7d3f-4a69-bd26-030736604eeb",
"msdyn_actions": "[{\"action\":\"enrich\",\"sourceContextEntity\":\"emails(0e20cf92-f663-f011-bec1-000d3a3622ba)\"},{\"action\":\"resolve\",\"automationMode\":\"Full\"}]"
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", Xrm.Utility.getGlobalContext().getClientUrl()+"/api/data/v9.2/msdyn_invokeCaseProcessingAgent");
xhr.setRequestHeader("Cache-Control", "no-cache");
xhr.setRequestHeader("Accept", "*/*");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(data);
}
invokeCaseManagementAgent();