November 2016

Band 31, Nummer 11

Dieser Artikel wurde maschinell übersetzt.

Bot Framework: Lösen von Geschäftsproblemen mit dem Microsoft Bot Framework

Durch Srikantan Sankaran

Menschen heute tun alles online oder auf ihre Telefone – Einkauf, Verkauf, banking, untersucht, und um wettbewerbsfähig zu bleiben, ständig müssen Unternehmen entwickeln ihre Anwendungen für Kunden die bestmögliche Umgebung bereitstellen, die ihre Dienste zu verwenden. Somit müssen Sie verschiedene Self-service-Funktionen mit jederzeit und überall Zugriff auf ihre Daten häufig über soziale Kanäle, Voicemail und messaging. Das ist ein Problem, aufgrund der Vielzahl von Clientanwendungen, die berücksichtigt werden müssen, und da die meisten dieser Anwendung nie entwickelt wurden, um die Szenarien behandeln, die heutzutage konfrontiert werden. Zu diesen Anforderungen wahrscheinlich erfordern mehrere parallele Entwicklungsprojekte, die erhebliche Ressourcen. Microsoft Bot Framework können jedoch die Probleme erleichtern.

Microsoft Bot Framework bietet eine Plattform für Unternehmen Anwendungen erstellen – Bots –, dass Consumer problemlos, conversationally, über Sprach- oder Text, wenn einfache interagieren können,. Ohne jeglichen zusätzlichen Entwicklungsaufwand kann diese Bots nahtlos über mehrere soziale Kanäle, z. B. Skype, Slack, Facebook Messenger usw. zugegriffen werden. Sie können Benutzern Zugriff auf ihre Daten, die von unterschiedlichen Line-of-Business (LOB)-Anwendung, mit Technologien wie Azure-Logik-Apps oder Microsoft-Flow konsolidiert gewähren. Diese Technologien werden heute mit Connectors für alle Schlüssel Geschäftsanwendungen auf dem Markt bereitgestellt werden. Azure Search-Dienst bietet leistungsfähige Lucene-Engine, die verwendet werden kann, um die Daten durchsuchen strukturiertem und unstrukturiertem, auf flexible Weise. Kunden können die Bots über natürlicher Sprache Konversationen interagieren, und die Azure Sprache Verständnis Intelligent Service (LUIS) kann diese Gespräche für Verwendungen zur Beantwortung interpretieren.

In diesem Artikel und der nächsten bespreche ich ein Szenario, das veranschaulicht, die Probleme, die Unternehmen heute gegenüberstehen, und wie können sie eine Projektmappe erstellen, durch die Nutzung von Microsoft Bot Framework. Finden Sie die folgenden Verweise nützlich, wie Sie die Implementierung der Lösung, die in diesem Szenario behandelt:

  • Indizierung von Dokumenten in Azure Blob-Speicher mit Azure Search (bit.ly/2d4yr8s)
  • Aktivieren und Deaktivieren der Änderungsnachverfolgung (SQLServer) (bit.ly/2d226wt)

Erstellen einer Projektmappe

Business-Szenario, das forms-Hintergrund für diesen Artikel umfasst ein Versicherungsagentur, die verschiedenen Arten von Versicherungspolicen Fahrzeuge, Home, Reisen und Integrität für Consumer. Consumer können registrieren sich mit einer Webanwendung, die mit ihren Microsoft-Anmeldeinformationen und einreichen der Anforderung einer Versicherung. Workflow für einen Geschäftsprozess übernimmt den Benutzer in Dynamics CRM Online, in denen Profilinformationen erfasst und speichert dann die Anwendung Versicherungspolice in Office 365 SharePoint registrieren. Eine interne Workflowprozess innerhalb der Organisation ändert den Status der Richtlinie im Laufe der Zeit zum Schluss in der Genehmigung resultierenden und Generieren eines Policy-Dokuments, das in Office 365 gespeichert ist. Diese Schritte sind nicht Bestandteil dieses Artikels stattdessen konzentriert sich auf die downstream Integrationsszenarien, die aktiviert wird, wenn die Informationen im System erfasst wird, und die nachfolgenden Updates und den Status für den Consumer freigeben. Abbildung 1 zeigt die Architektur der Lösung für dieses Szenario.

Architektur der Lösung
Abbildung 1: Architektur der Lösung

Erstellen ein Kontaktprofil für den Consumer in Dynamics CRM Online, erstellen oder aktualisieren die Anforderung einer Richtlinie in Office 365 oder Hochladen Richtliniendokumente in Office 365 löst Ereignisse in Geschäftsprozessabläufe mithilfe von Microsoft-Flow implementiert. Über diese Prozesse strukturierte Daten in Tabellen der Azure SQL-Datenbank synchronisiert ist, und unstrukturierte Daten, z. B. Dokumentationen, in Azure Blob-Speicher repliziert werden. Azure Search durchsucht die Daten in regelmäßigen Abständen und hält sie für Abfragen. Eine Bot-Anwendung wird als Azure-Web-app, über den Connector für Microsoft Bot-Framework-Dienst veröffentlicht bereitgestellt. Eine Verbindung über den Connector-Dienst die Bot-Anwendung an einen Skype-Kanal, der der Verbraucher-Zugriff auf den Status von ihren Anforderungen Versicherungspolice Abrufen die Richtlinie für ausgestellte Dokumente heruntergeladen, Planen Besuche Überprüfung und so weiter. Consumer melden Sie sich mit dem Microsoft-Konto, bei dem sie sich beim Anwenden einer Versicherung registriert. Sie können entweder messaging auf die Skype-Client oder Voice-Befehle für die Interaktion mit den Bot. Die Bot-Anwendung integriert das LUIS Dienst mehrere Dienste in Microsoft kognitive Dienste, um die Kommunikation vom Consumer interpretieren und Ausführen von Abfragen zu Azure Search verfügbar.

Mit diesem Kontext ist hier Was muss durchgeführt werden, um die Projektmappe zu erstellen:

  1. Autor Geschäftsprozess fließen Microsoft Flow synchronisieren und Konsolidieren von Daten aus verschiedenen branchenanwendungen verwenden.
  2. Konfigurieren von Azure Search, um die konsolidierten Daten indizieren, damit es von Bots abgefragt werden kann.
  3. Konfigurieren Sie den Dienst LUIS erstellen Sie und Trainieren Sie des Modells für das Interpretieren von Benutzer Gespräche aus den Bot.
  4. Erstellen einer Bot-Anwendung mithilfe des Microsoft-Bot-Frameworks und von Skype verwenden.

Die ersten beiden Schritte in diesem Artikel und die verbleibenden beiden beschrieben nächsten.

Versicherung Anforderung Synchronisierungsfluss

In diesem Beispiel werden die richtlinienanforderungen in einer benutzerdefinierten Liste in Office 365 gespeichert. Ein Microsoft-Flow-Prozess gebunden zu dieser Liste wird ausgelöst, wenn eine Anforderung der Computerrichtlinie eingefügt oder aktualisiert werden, während des Genehmigungsprozesses, das Aufrufen einer gespeicherten Prozedur in Azure SQL-Datenbank. Separate Microsoft Flow-Prozesse werden für INSERT- und Update-Szenarien erstellt.

Abbildung 2 zeigt, wie Microsoft-Datenfluss-Designer ein auslösendes Ereignis auf der SharePoint-Liste in Office 365 beim Erstellen oder Aktualisieren eines Elements oder einer Datei auswählen können.

Microsoft Ablaufereignisse Trigger
Abbildung 2 Microsoft Trigger Ablaufereignisse

Abbildung 3 zeigt den Datenfluss, der ausgelöst wird, wenn eine Anforderung der Computerrichtlinie in dieser Liste eingefügt wird. Der Datenfluss-Designer von Microsoft liest die Metadaten der gespeicherten Prozedur und zeigt automatisch ein Formular basierend auf seine Eingabeparameter an. Platzieren den Cursor auf die Eingabefelder des Formulars startet die Karte auf der rechten Seite angezeigten Abbildung 3, Anzeigen der Attribute aus den vorangehenden Aktivitäten, Sie auch können von der gespeicherten Prozedur zuordnen, Eingabeparameter.

Versicherung Anforderung Sync-Datenfluss
Abbildung 3 Versicherungspolice Anforderung Sync-Datenfluss

Ich erstelle einen weiteren Ablauf für die Synchronisierung von Updates, um sicherzustellen, dass der Status der Genehmigung richtlinienanforderung von Office 365 mit der Azure SQL-Datenbank regelmäßig aktualisiert wird.

Beachten Sie, dass jede der in diesem Szenario verwendeten Anschlüsse erfordert eine Verbindung, die zuerst konfiguriert werden muss und ein Benutzerkonto mit ausreichenden Rechten zum Lesen von Daten aus einer benutzerdefinierten Liste in der SharePoint-Website für Office 365. Ebenso benötigt der Azure SQL-Datenbank-Connector Benutzeranmeldeinformationen für die Authentifizierung mit der Datenbank.

Ich können den Fluss testen, den ich über das Einfügen eines Datensatzes in der benutzerdefinierten Liste erstellt. Die Daten sollten in Azure SQL-Datenbank repliziert werden.

Richtlinie Dokumente Synchronisierungsfluss

Nach der Genehmigung der Anforderung Versicherungspolice (bei Abschluss eines Back-Office-Prozesses, die nicht Gegenstand dieses Artikels ist) wird eine Richtliniendokument generiert und in einer Dokumentbibliothek in Office 365 SharePoint hochgeladen. Eine Microsoft-Flow repliziert dann Richtliniendokument in Azure Blob-Speicher. Fügen Sie ein neues Dokument im Azure-Speicher und das ursprüngliche Dokument ersetzen, wenn es in Office 365 aktualisiert wird, werden separate Microsoft Flow-Prozesse erstellt. Das Dokument enthält bestimmte Schlüsselwörter, wie die Registrierung des Fahrzeugs versichert, z. B.. Später in diesem Artikel verwende ich Azure Search eine Volltextsuche innerhalb der Dokumente basierend auf bestimmten Schlüsselwörtern ausgeführt. Abbildung 4 zeigt die Microsoft-Flow implementiert, um Dokumente zu synchronisieren, die zum ersten Mal in Office 365 hochgeladen werden.

Richtlinie Dokumente Synchronisierungsfluss
Abbildung 4 Richtlinie Dokumente Synchronisierungsfluss

Ich kann den Fluss testen, indem Sie alle Dokumente in der SharePoint-Dokumentbibliothek hochladen. Die Dokumente sollten in den Azure-Speichercontainer repliziert werden, die im Datenfluss konfiguriert wurde.

Kunden Profil Datensynchronisation

Wenn ein Kunde zuerst bei den Versicherungsanbieter registriert wird, wird ein Kontakt in Dynamics CRM Online erstellt. Dann wird eine Microsoft-Flow ausgelöst, die den Dynamics CRM Online-Connector verwendet, wählen Sie den Kontakt, und fügen Sie es in einer Azure SQL-Datenbank. Abbildung 5 zeigt, wie dieser Prozess implementiert werden kann.

Wenden Sie sich an den Datenfluss
Abbildung 5 Kontakt-Datenfluss

Beachten Sie, dass Sie eine Verbindung mit Dynamics CRM Online mit Benutzeranmeldeinformationen konfigurieren Sie zuerst mit der Berechtigung für die Verbindung mit der Organisation und eine Sicherheitsrolle, die auf die Daten zugreifen kann müssen. Darüber hinaus sollten Sie für die Tabelle in Dynamics CRM Online, in denen aufgezeichnet werden, sind "einlegen Ereignisse", die die Contacts-Tabelle in diesem Fall wird die änderungsnachverfolgung aktivieren.

 Microsoft-Flow können Sie die Ergebnisse der prozessausführung einer mit Informationen zur Anforderung und Antwort für jede Aktivität darin anzeigen.

Abbildung 6 ist das Ergebnis eine Synchronisierung der Daten. Auswählen einer Aktivität auf der linken Seite wird eine Karte mit den Details der Nutzlast Eingabe- und Ausgabeparameter geöffnet, auf der rechten Seite angezeigt.

Datenfluss-Ausführungsplan
Abbildung 6 Datenfluss-Ausführungsplan

Um diesen Datenfluss zu testen, kann ich einen Kontakt aus dem CRM Online-Portal erstellen. Die Kontaktdaten sollte mit der Azure SQL-Datenbank repliziert.

Später, verwende ich die Kontaktdaten zum Identifizieren eines Benutzers angemeldet, um einen Bot Skype und Abrufen von den Genehmigungsstatus des Benutzers Versicherungspolice anfordert. Die Kontaktinformationen verwende ich um Besuch einer Website aus der Bot zu planen.

Vorbereiten von Datenquellen für die Suche

Ich habe den Prozess zum Konsolidieren von Daten aus verschiedenen LOB-Anwendungen implementiert, aber ich muss auf bestimmte Schritte ausführen, bevor ich die Daten in Azure Search nutzen.

Aktivieren der Änderungsnachverfolgung in Azure SQL-Datenbank: Azure Search verwendet die integrierten Indexer für Azure SQL-Datenbank zum Durchsuchen von Daten und erstellen Sie den Index. Change Tracking muss für die Datenbank und für alle Tabellen aktiviert werden, sodass Azure Search eine neuplanung Index ausführen nicht erstellen jedes Mal auf:

ALTER DATABASE PolicyInfoDB SET CHANGE_TRACKING = ON
(CHANGE_RETENTION = 2 DAYS, AUTO_CLEANUP = ON);
ALTER TABLE CrmCustomerData ENABLE CHANGE_TRACKING
WITH (TRACK_COLUMNS_UPDATED = OFF);
ALTER TABLE PolicyRequests ENABLE CHANGE_TRACKING
WITH (TRACK_COLUMNS_UPDATED = OFF);

Sie können auch das Löschen der Datensätze in Datenbanktabellen und der Dokumente in Azure-Speicher während der Indizierung, über die Konfiguration nachverfolgen.

Konfigurieren von Azure Search zum Indizieren der PolicyRequests und CrmCustomerData-Tabellen: Verwenden der Azure-Verwaltungsportal zum Erstellen einer Entität für die Suche, und wählen Sie die Option zum Importieren von Daten aus einer Azure SQL-Datenbank. Der Assistent führt Sie schrittweise durch das Herstellen einer Verbindung mit der Datenbank, erstellen eine Datenquelle für die Suche von Stichproben der Daten zum Lesen der Metadaten und Auswählen der erforderlichen Attribute verwenden, und endet mit dem Index Aktualisierungszeitplan. Konfigurieren Sie separate Indizes für jede Tabelle. Abbildung 7 zeigt die Suchseite für die Konfiguration von Index für die Datenbank.

Konfigurieren von Azure Search Index-Datenbanktabelle
Abbildung 7 Konfigurieren von Azure Search Index-Datenbanktabelle

Die Azure Search-Konfigurationsseite erkennt, dass Versionsvergleich für die Datenbanktabelle indiziert aktiviert ist. Ich haben die Indizierung Häufigkeit auf stündlich festgelegt. Weitere Optionen sind einmal täglich und Benutzerdefiniert.

Sobald die Indizes konfiguriert sind, löst Azure Search sofort ein Indizierungsvorgang in der Datenquelle. Sie können überprüfen, dass den Status der einzelnen Indizes, um die Anzahl der Datensätze anzuzeigen, die in der Index aufgefüllt wurden.

Blatt Einstellungen Azure Search bietet einen Search-Explorer, der eine einfache Möglichkeit zum Festlegen von Suchparameter, zeigen Sie die Ergebnisse aus, und überprüfen die Konfiguration enthält.

Konfigurieren von Azure Search-Index für Dokumente: Konfigurieren von Azure Search zum Suchen und Indizieren von Azure Storage-Blobs ist ähnlich wie die Konfiguration der gerade beschriebenen allerdings, dass dieses Feature in noch in der Vorschau zu diesem Zeitpunkt ist.

Weiter unten in diesem Artikel werde ich mit Azure Search Abfragen für Dokumente, die basierend auf den Richtliniendokument Erstellungsdatum und Schlüsselwörtern wie die Registrierungsnummer Fahrzeug ist, der die Dokumente gespeichert. Azure Search unterstützt die Apache Lucene-Abfragesprache, die erweiterte Abfragefunktionen bietet.

Beachten Sie, dass Blob-Speicher verfügt über eine Eigenschaft, Metadata_storage_last_modified, Datum-/ Uhrzeit-Feld. Der Datentyp der Entsprechung in Azure Search Indexer damit übereinstimmt, ist Edm.DateTimeOffset, was nicht durchsucht werden. Da abrufen Richtliniendokumente basierend auf dem Jahr, das sie ausgegeben werden soll, muss dies ein abfragbares Feld sein.

Um dieses Problem zu beheben, konnte ich ändern den Datentyp im Index in Edm.String, die durchsucht werden. Aber da der Indexer wird dieses Feld als Flag verwendet, um festzustellen, ob eine Datei geändert wurde, seit der letzten Indizierungsvorgang und ob es erneut indiziert werden soll, würde ich das Risiko, Funktionsstörungen durch Ändern des Datentyps.

Stattdessen kann der Index für einen Datentyp Edm.String mit denselben Wert speichern zusätzliche Feld hinzugefügt. Dies bedeutet jedoch, dass ich der UX des Azure-Portal verwenden können, so konfigurieren Sie den Index, weil es zulässt, die Logik zum Zuordnen von Feldern aus dem Azure-Speicher auf den Index anpassen.

Um dies zu umgehen, verwende ich die Postman-Client (getpostman.com/apps), ein kostenlos herunterladbares Tool, die Azure Search REST-APIs aufrufen und die folgenden Aufgaben ausführen:

  • Erstellen der Datenquelle: Dies kann entweder aus dem Azure-Portal oder mithilfe der REST-API vom Client Postman erfolgen.
  • Konfigurieren den Index: Da ich die Felder im Index manuell definiere, kann ich Namen angeben, die Benutzerfreundlicher als die Standardkonfiguration für Suche diejenigen sind. Das Feld "Filepath" wird als Schlüsselfeld im Index festgelegt. Beachten Sie, dass zwei Platzhalter für das letzte Änderungsdatum, eine auf Grundlage der Edm.DateTimeOffset und der andere in Edm.String vorhanden sind:
{
  "name" : "policydocuments-index",
    "fields": [
      { "name": "filepath", "type": "Edm.String", "key": true,
        "searchable": true },
      { "name": "content", "type": "Edm.String", "searchable": true },
      { "name": "filesize", "type": "Edm.String", "searchable": true },
      { "name": "author", "type": "Edm.String", "searchable": true },
      { "name": "filename", "type": "Edm.String", "searchable": true },
      { "name": "lastmoddate", "type": "Edm.String", "searchable": true },
      { "name": "contenttype", "type": "Edm.String", "searchable": true },
      { "name": "modifieddate", "type": "Edm.DateTimeOffset",
        "searchable": false }
      ]
}
  • Der Indexer erstellen und Zuordnen von Feldern:  Dieser Schritt erstellt den Indexer, definiert den Index-Zeitplan und ordnet die Felder in Azure-Speicher in der im vorherigen Schritt definierten Index:
{
  "name" : "policydocuments-indexer",
  "dataSourceName" : "policiesrepodatasource",
  "targetIndexName" : "policydocuments-index",
  "schedule" : { "interval" : "PT2H" },
    "fieldMappings" : [
           { "sourceFieldName" : "metadata_storage_name",
             "targetFieldName" : "filename" },
     { "sourceFieldName" : "metadata_storage_size",
       "targetFieldName" : "filesize" },
     { "sourceFieldName" : "metadata_author", "targetFieldName" : "author" },
     { "sourceFieldNambe" : "metadata_storage_last_modified",
       "targetFieldName" :
       "modifieddate" },
     { "sourceFieldName" : "metadata_storage_last_modified",
       "targetFieldName" :
       "lastmoddate" },
     { "sourceFieldName" : "metadata_content_type",
       "targetFieldName" : "contenttype" },
     { "sourceFieldName" : "metadata_storage_path",
       "targetFieldName" : "filepath" }
  ],
  "parameters" : { "base64EncodeKeys": true }
}

Jetzt kann ich den Azure Search-Explorer im Portal verwenden, um sicherzustellen, dass die Dokumente in der Tat indiziert wurden, und die Attributwerte zugeordnet werden, wie erwartet.

Zum Implementieren dieses Szenarios der erforderlichen Software

Abgesehen von ein Azure-Abonnement, das erforderlich ist beschriebene Szenario zu implementieren benötigen, Sie auch die folgenden Entwicklungstools sowie zusätzliche Software:

  • SQL Management Studio für SQL Server 2014 oder höher erstellen und mit der Azure SQL-Datenbank herstellen.
  • Eine Dynamics CRM Online-Abonnement, mit einem Benutzerkonto, das für die Organisation verbinden kann, in dem die Kontakte erstellt werden, und verfügt über die erforderlichen Sicherheitsrollen zum Lesen der Contacts-Tabelle. Änderungsprotokoll sollte in dieser Tabelle für die Trigger auf"erstellen"-Funktion aktiviert werden.
  • Zugriff auf eine Office 365 SharePoint-Website und ein Benutzerkonto mit mitwirken-Berechtigungen für diesen Standort.
  • Ein Geschäftskonto anmelden und die Geschäftsprozesse für die Datensynchronisation über Microsoft-Flow erstellen. Erste Schritte mit unter flow.microsoft.com.
  • Um den Dienst LUIS verwenden, melden Sie sich mit Ihrem Geschäftskonto (oder Microsoft-Konto) bei luis.ai. In Teil 2 dieses Artikels verwende ich diesen Dienst die Gespräche, die in diesem Artikel erwähnten zu modellieren.

Hinweis: Microsoft-Flow kann nicht ist in der Vorschau der Veröffentlichung dieses Artikels und an diesem Punkt Behandeln von Ausnahmen, Wiederholungslogik implementieren, oder ändern den Code hinter den Prozessfluss. Alle Prozesse, die in diesem Szenario dargestellt, können mithilfe von Azure Logik-Apps, auch die, abgesehen von der Bereitstellung alle Funktionen von Microsoft-Flow zusätzliche Funktionen wie die Ausnahme behandeln unterstützt, die Code-Editor zum Bearbeiten von Datenfluss und mehr über erstellt werden.

Ausführen des Szenarios

Mit diesem End-to-End-Szenario erfordert eine Anwendung, die Consumern registrieren, mit ihren Microsoft-Anmeldeinformationen, und fordern Sie eine Versicherung kann. Diese Anwendung würde dann erstellen Sie einen Kontakt in Dynamics CRM Online, generieren Sie einen Kontakt-ID und dieser Wert in der Anforderung Versicherungspolice, in der Liste in Office 365 erstellt verwenden. Da eine solche Anwendung nicht Gegenstand dieses Artikels ist, müssen Sie diese Schritte manuell und separat ausführen.

Melden Sie sich bei dem Dynamics CRM Online-Portal, und erstellen Sie einen Kontakt. Stellen Sie sicher, dass Sie Details wie die Mobiltelefonnummer und die Microsoft Account für den Kunden erfassen, wie diese benötigt wird später werden bei der Arbeit mit den Bot. Die Contacts-Tabelle, die an Microsoft Flow erhalten ausgelöst wird, rufen Sie eine gespeicherte Prozedur in Azure SQL-Datenbank, und legen Sie einen Kundendatensatz in der Tabelle CrmCustomerdata. Notieren Sie den Wert der Kunden-ID in der Tabelle für den nächsten Schritt gespeichert.

Erstellen Sie manuell eine Versicherungspolice-Anforderung in der benutzerdefinierten SharePoint-Liste in Office 365. Stellen Sie sicher Customer-ID generiert, die für den Kunden in Dynamics CRM Online in der Anforderung erfasst wird. Abbildung 8 zeigt eine Liste in SharePoint, in denen die Anforderung erfasst wird. Ein Microsoft-Flow-Prozess gebunden zu dieser Liste wird ausgelöst, wird der Datensatz gespeichert wird, oder wenn sie später während des Genehmigungsprozesses aktualisiert wird. Stellen Sie sicher, dass die Anforderung der Computerrichtlinie der Azure SQL-Datenbanktabelle PolicyRequests repliziert wird.

Versicherung-Anforderung in Office 365-Liste
Abbildung 8 Versicherungspolice Anforderung in Office 365-Liste

Anschließend erstellen Sie PDF-Dokument Beispiele, und sicherzustellen Sie, dass die enthaltenen Fahrzeug Registrierung oder Identifizierung Zahlen während Dokumentsuche verwendet werden soll. Hochladen Sie diese Dokumente, um die SharePoint-Bibliothek, die an den Microsoft-Flow-Prozess für die dokumentsynchronisierung gebunden ist. Stellen Sie sicher, dass diese Dokumente in Azure-Speicherkontos im Datenfluss konfiguriert repliziert werden.

Den Indexer, um sicherzustellen, dass die Daten synchronisiert, die in den vorherigen Schritten indiziert und durchsucht werden zur ausführen manuell. Starten Sie den Azure-Explorer durchsuchen und die Abfrage für die Datensätze in den einzelnen Tabellen und die Richtliniendokumente, die Sie hochgeladen haben, und stellen Sie sicher, dass sie in den Suchergebnissen zurückgegeben werden.

Natural Language-Utterances in der Bot-App

Benutzer des Bot Skype oder andere Kanäle eingeben können in ihren Abfragen in natürlicher Sprache Stil von Bots dann interpretiert werden soll, Absicht und Entitäten, die Benutzer zu identifizieren und Abfragen von Azure Search und die Ergebnisse abzurufen. Für das aktuelle Szenario sollte der Bot behandelt alle Möglichkeiten, die Benutzer mit ihm interagieren und Fragen den Status seiner Versicherungspolice Anforderungen oder Herunterladen von ihre Genehmigung Richtlinie oder Abfrage Richtliniendokumente, aus den vergangenen Jahren konnte. Hier sind einige Beispiele für Utterances, die Bots interpretiert werden soll:

  • Was ist der Status der Anforderung Versicherungspolice?
  • Genehmigt Meine Richtlinie Anforderung # VehPol0101?
  • Gibt es ein Update für meine Versicherungspolice Anforderung # VehPol0101?
  • Meine Richtliniendokument anzeigen.
  • Verstehen Sie mich bitte das Richtliniendokument.
  • Verstehen Sie mich bitte des letzten Jahres Richtliniendokument Fahrzeug # KA 02A 8534.
  • Anzeigen der Richtliniendokument Fahrzeug # KA 02A 8534 2014 ausgegeben.
  • Können Sie planen, einen Website Besuch am Dienstag nächste Woche Fahrzeug # KA 02A 8534?

In meinem nächsten Artikel werde ich einen Bot erstellen Anwendung mit natürlicher Sprache unterstützt. Zu diesem Zweck hier ein LUIS-Modell erstellt werden, die diese natürlicher Sprache Utterances registrieren, Schulen Sie es zur Identifizierung zu Absicht darin, und bestimmen Sie die unterstützenden Parameter oder Entitäten, mit denen der Azure Search-Dienst abgefragt.

Elemente, die zum Download zur Verfügung

Die folgenden Artefakte, die zum Implementieren dieses Szenarios stehen zum Download aus dem GitHub-Repository auf bit.ly/2cOfANh:

  • Azure SQL-Datenbank Tabelle Erstellungsskripts für die Tabellen CrmCustomer und PolicyRequests.
  • Gespeicherte Prozeduren, die in den vorherigen Tabellen verwendet werden.
  • Screenshots des Schemas der Office 365-Liste, die die richtlinienanforderungen speichert und von der Dokumentbibliothek, in dem die Richtliniendokumente hochgeladen werden.

Ich werden andere Artefakte bezieht sich auf den nächsten Artikel am gleichen Speicherort hochladen.

Zusammenfassung

Unternehmen werden heute mit einer Vielzahl von Clientanwendungen, die zusammenarbeiten, um die Lösung ihrer Geschäftsprobleme behandeln. Dies ist oft eine Herausforderung, Informationen über des Unternehmens, wodurch es schwierig zu konsolidieren und zu bringen, ist der Consumer verteilt wird. Microsoft-Flow können Informationen aus dem Unternehmen konsolidieren und Azure Search bietet eine flexible und umfassende Abfragen Engine für den Zugriff auf die Daten. Es gibt nur eine Schnittstelle für die Integration aller Informationen, wodurch die Zeit zum Erstellen und Bereitstellen der clientseitigen Anwendung sichtbar. 

In Teil 2 dieser Artikelreihe werde ich die Nutzung der Informationen, die von Azure Search aus einer kundenorientierten Anwendung, z. B. einen Bot für Skype verfügbar gemacht werden. Dazu erstelle ich ein Modell LUIS interpretieren Benutzernachrichten von Bots und für Azure Search in strukturierten Anforderungen zu übersetzen.


Srikantan Sankaran ist leitender Technologieexperte aus dem DX-Team in Indien, basierend auf Bangaluru.  Er arbeitet mit zahlreichen ISVs in Indien und unterstützen sie bei der Planung und ihre Lösungen auf Microsoft Azure bereitstellen. Sie erreichen ihn unter sansri@microsoft.com.

Unser Dank gilt den folgenden technischen Experten von Microsoft für die Durchsicht dieses Artikels: Sandeep Alur und Paul Bouwer
Sandeep Alur ist die führen Evangelist für DX-Indien und in Bangalore basiert.

Paul Bouwer ist ein leitender SDE aus dem Technical Evangelism and Development Team und lebt in Brisbane.