다음을 통해 공유


Copilot 대화록 및 상호 작용 데이터 다운로드

고객 서비스 담당자(서비스 담당자 또는 담당자)는 요약 복사, 제안된 응답, 피드백 및 채팅 사용과 같은 Copilot 기능을 사용합니다. 부조종사 상호 작용은 Dataverse의 부조종사 상호 작용(msdyn_copilotinteraction),부조종사 상호 작용 데이터(msdyn_copilotinteractiondata),부조종사 기록(msdyn_copilottranscript)부조종사 기록 데이터(msdyn_copilottranscriptdata) 테이블에 저장됩니다. Dataverse 웹 API 또는 .NET용 SDK를 사용하여 대본 및 상호 작용 데이터를 다운로드할 수 있습니다.

필수 조건

  • 트랜잭션 및 상호 작용 데이터가 Dataverse의 시스템에 의해 저장되도록 질문 및 이메일에 대한 Copilot에서 지원 경험 데이터 확인란이 선택되어 있는지 확인합니다.
  • 옴니채널 관리자 또는 옴니채널 감독자 역할로 로그인되어 있는지 확인합니다.

대화 요약 검색

서비스 담당자가 Copilot을 사용하여 대화 요약을 생성하면 요약이 Dataverse의 테이블에 저장됩니다 msdyn_conversationinsight . 필드에 저장된 고유한 대화 ID msdyn_ConversationId 와 함께 테이블에 레코드가 생성됩니다. 요약 텍스트는 필드에 저장됩니다 msdyn_copilotsummary .

예를 들어 고객과의 대화를 마무리한 후 서비스 담당자는 Copilot을 사용하여 대화 요약을 생성합니다. 대화 요약은 다음 값으로 테이블에 저장됩니다 msdyn_conversationinsight .

특성 샘플 값
대화 식별자 70b76ab52-120b-49e6-9dce-53f235125a01
대화 요약 "문제: 커피 머신의 추출 밸브에 문제가 있습니다. 문제 해결 단계: 고객이 문제를 보고했습니다. 결과: 추가 지원을 위해 문제가 보고되었습니다."

다음과 같이 대화 요약을 검색할 수 있습니다.

  1. 테이블에 있는 레코드의 기본 식별자인 대화 ID를 msdyn_ocliveworkitem 식별합니다. 이 예제에서 이 값은 70b76ab52-120b-49e6-9dce-53f235125a01입니다.

  2. 다음 웹 API 요청을 사용하여 테이블 레코드를 필터링합니다 msdyn_conversationinsight .

    
     [Organization URI]/api/data/v9.2/msdyn_conversationinsights?$filter=_msdyn_conversationid_value eq '<conversation-ID>'
    
    

    이 예제에서 Web API 요청은 다음과 같습니다.

     https://<yourorg>.crm.dynamics.com/api/data/v9.2/msdyn_conversationinsights?$filter=_msdyn_conversationid_value eq '70b76ab52-120b-496e-9dce-53f235125a01'
    

    이 예제에 대한 샘플 응답은 다음과 같습니다.

    {
    "status": { "code": 20000, "message": "Successfully fetched summary from insights" },
    "summary": "Issue: Trouble with the brew valve on the coffee machine.\nTroubleshooting steps: \n- Customer reported the issue.\nOutcome: Issue reported for further assistance."
    }
    

내 부조종사 상호 작용은 어디에 저장됩니까?

Copilot과의 각 서비스 담당자 상호 작용은 고유한 상호 작용 ID와 함께 테이블에 저장됩니다 msdyn_copilotinteraction . 다음 표에는 각 상호 작용 유형에 대한 해당 상호 작용 데이터가 저장되는 위치가 나열되어 있습니다.

특징 테이블 / 표
질문하기 msdyn_copilottranscriptdata
피드백, 사례 요약, 이메일 작성, 답변 제안 msdyn_copilotinteractiondata

부조종사 상호 작용 기록에서 msdyn_copilotinteractionid 및 msdyn_interactiondataid 가져오기

대본을 다운로드하거나 축어적 피드백을 확인하는 작업을 수행하기 전에, msdyn_copilotinteractionid의 값과 해당 msdyn_copilotinteraction의 msdyn_copilotinteractiondata 레코드 ID 값을 검색해야 합니다. 다음 웹 API 호출을 사용하여, msdyn_copilotinteractionid 필드에서 상호 작용 ID와 msdyn_interactiondataid_value 필드에서 interactiondataid를 얻을 수 있습니다.

[Organization URI]/api/data/v9.1/msdyn_copilotinteractions
Accept: application/json  
OData-MaxVersion: 4.0  
OData-Version: 4.0  

레코드의 키 특성은 다음과 같습니다.

특성 정의
msdyn_copilotinteractionid Entity 인스턴스의 고유 식별자Unique identifier for entity instances
msdyn_scenariorequestid 여러 관련 Copilot 상호 작용을 그룹화합니다.
예를 들어, 담당자가 Copilot에게 질문을 한 다음 받은 답변을 엄지손가락을 치켜세웁니다. 두 개의 상호 작용으로 간주되지만 동일한 시나리오의 일부입니다.
msdyn_scenariotype 담당자가 사용하는 기능을 나타냅니다.
msdyn_interactiontype Copilot과의 특정 대표 상호 작용을 나타냅니다.
msdyn_interactionforid 담당자가 Copilot과 상호 작용한 참조된 레코드의 엔터티 ID입니다.
msdyn_interactionforlogicalname 담당자가 Copilot과 상호 작용한 참조된 레코드의 엔터티 논리 이름입니다.
msdyn_interactioncontext 대본에 대한 참조와 같은 추가 컨텍스트.
msdyn_interactiondataid 상호 작용 데이터를 포함하는 msdyn_copilotinteractiondata 개체를 나타냅니다.

샘플 응답

다음 응답은 담당자가 Copilot에게 질문을 한 다음 엄지 손가락 아래로 단추를 선택하여 피드백을 제공하는 시나리오를 나타냅니다. 는 msdyn_scenariorequestidmsdyn_scenariotype 두 상호 작용에 대해 동일합니다. 상호 작용의 msdyn_interactiontype 값은 100230305 및 100230302로 설정되며, 이는 생성됨 및 엄지 손가락 아래에 해당합니다.


{
          "@odata.etag": "W/\"17413914\"",
          "msdyn_interactiontype": 100230305,
          "msdyn_clienttimestamp": "2025-03-19T08:00:34Z",
          "modifiedon": "2025-03-19T08:00:34Z",
          "msdyn_interactionforlogicalname": "msdyn_ocliveworkitem",
          "overriddencreatedon": null,
          "msdyn_scenariotype": 100230201,
          "importsequencenumber": null,
          "_modifiedonbehalfby_value": null,
          "msdyn_interactionforid": "2cc5ea06-a4fd-4f83-8e75-0324383b953f",
          "statecode": 0,
          "msdyn_scenariorequestid": "cbdc1bef-6099-7f9a-f1fe-dab02e36315b",
          "_organizationid_value": "7eede269-bbb1-ef11-8a64-000d3a350e1a",
          "versionnumber": 17413914,
          "utcconversiontimezonecode": 190,
          "_msdyn_interactiondataid_value": null,
          "_createdonbehalfby_value": null,
          "_modifiedby_value": "864a96d6-6bb0-ef11-a730-000d3a59065a",
          "createdon": "2025-03-19T08:00:34Z",
          "msdyn_interactioncontext": "{\"OcSessionId\":\"28dea393-c175-4788-9494-07fd42ee0884\",\"ResponseStatusCode\":20000,\"Plugins\":{\"IsContentRedacted\":false},\"Transcript\":{\"Id\":\"8d1d70e6-3297-644a-4e86-00d8973223a0\",\"DataId\":\"a1584aaf-d5bd-357d-54a8-84dbdba547f9\"},\"Filters\":{\"AgentContextFilters\":[],\"AutomatedFilters\":[]},\"Streaming\":{\"State\":\"GENERATED\"},\"ResponseSource\":{\"category\":\"KnowledgeSearch\",\"subCategory\":\"KnowledgeSearch\"},\"IsAutoPrompt\":true,\"AutoPromptTrigger\":\"follow-up-prompt\",\"IsAutoExpanded\":false,\"IsSuggestedPrompt\":false,\"IsEmbed\":false,\"IsStandalone\":false}",
          "msdyn_name": null,
          "statuscode": 1,
          "msdyn_copilotinteractionid": "c49dc43b-9804-f011-bae2-6045bd014292",
          "_createdby_value": "864a96d6-6bb0-ef11-a730-000d3a59065a",
          "timezoneruleversionnumber": 0
      },
      {
          "@odata.etag": "W/\"17413983\"",
          "msdyn_interactiontype": 100230302,
          "msdyn_clienttimestamp": "2025-03-19T08:00:37Z",
          "modifiedon": "2025-03-19T08:00:41Z",
          "msdyn_interactionforlogicalname": "msdyn_ocliveworkitem",
          "overriddencreatedon": null,
          "msdyn_scenariotype": 100230201,
          "importsequencenumber": null,
          "_modifiedonbehalfby_value": null,
          "msdyn_interactionforid": "2cc5ea06-a4fd-4f83-8e75-0324383b953f",
          "statecode": 0,
          "msdyn_scenariorequestid": "cbdc1bef-6099-7f9a-f1fe-dab02e36315b",
          "_organizationid_value": "7eede269-bbb1-ef11-8a64-000d3a350e1a",
          "versionnumber": 17413983,
          "utcconversiontimezonecode": 190,
          "_msdyn_interactiondataid_value": null,
          "_createdonbehalfby_value": null,
          "_modifiedby_value": "864a96d6-6bb0-ef11-a730-000d3a59065a",
          "createdon": "2025-03-19T08:00:41Z",
          "msdyn_interactioncontext": "{\"OcSessionId\":\"28dea393-c175-4788-9494-07fd42ee0884\",\"IsEmbed\":false,\"IsStandalone\":false}",
          "msdyn_name": null,
          "statuscode": 1,
          "msdyn_copilotinteractionid": "cb9dc43b-9804-f011-bae2-6045bd014292",
          "_createdby_value": "864a96d6-6bb0-ef11-a730-000d3a59065a",
          "timezoneruleversionnumber": 0
      },

채팅 기록 다운로드

서비스 담당자가 Copilot에게 질문을 하면 채팅은 Dataverse의 표에 있는 UTF-16LE 문자 집합을 msdyn_copilottranscriptdata 사용하여 base64로 인코딩된 형식으로 인코딩된 스크립트로 저장됩니다. 대본을 다운로드하여 Copilot에서 제공하는 대화 및 응답을 검토할 수 있습니다.

예를 들어, 케이스를 처리하는 동안 서비스 담당자는 Copilot에게 "여행을 예약하려면 어떻게 해야 합니까?"라고 묻습니다. Copilot은 기술 자료 문서를 기반으로 응답을 생성합니다. 채팅 기록을 다운로드하려면 다음 단계를 수행하십시오.

  1. 웹 API 호출을 사용하여 상호 작용 ID를 가져옵니다.

  2. 필요한 상호작용 ID로 msdyn_copilotinteraction 테이블을 필터링하여 msdyn_interactioncontext 속성에서 Transcript.DataID을(를) 가져옵니다. 다음 웹 API 요청을 사용하여 상호 작용 ID별로 데이터를 필터링합니다.

    
       [Organization URI]/api/data/v9.1/msdyn_copilotinteractions(<msdyn_copilotinteractionid>)
       Accept: application/json  
       OData-MaxVersion: 4.0  
       OData-Version: 4.0  
    
    특성 이 시나리오의 가치
    msdyn_copilotinteractionid F0970641-C1E7-EE11-904C-000D3A3BB867
    msdyn_scenariorequestid 93893746-E203-E9B6-18B9-887D68D18DAF
    msdyn_scenariotype 질문하기
    msdyn_상호작용유형명 생성된 계획
    msdyn_interactionforid 1CD6023D-D326-EE11-9966-000D3A3411CF(상호 작용이 시작된 사례)
    msdyn_interactioncontext {\"OcSessionId\":\"28dea393-c175-4788-9494-07fd42ee0884\",\"ResponseStatusCode\":20000,\"Plugins\":{\"IsContentRedacted\":false},\"Transcript\":{\"Id\":\"8d1d70e6-3297-644a-4e86-00d8973223a0\",\"DataId\":\"a1584aaf-d5bd-357d-54a8-84dbdba547f9\"},\"Filters\":{\"AgentContextFilters\":[],\"AutomatedFilters\":[]},\"Streaming\":{\"State\":\"GENERATED\"},\"ResponseSource\":{\"category\":\"KnowledgeSearch\",\"subCategory\":\"KnowledgeSearch\"},\"IsAutoPrompt\":true,\"AutoPromptTrigger\":\"follow-up-prompt\",\"IsAutoExpanded\":false,\"IsSuggestedPrompt\":false,\"IsEmbed\":false,\"IsStandalone\":false}
  3. msdyn_interactioncontext에서 Trasncript.DataId 값을 복사합니다. 이 예제에서 이 값은 a1584aaf-d5bd-357d-54a8-84dbdba547f9입니다.

  4. 다음 웹 API 요청은 base64/UTF-16LE 형식으로 인코딩된 대본을 검색합니다.

      [Organization URI]/api/data/v9.1/msdyn_copilottranscriptdatas(<Transcript:DataID>)/msdyn_transcriptdata
      Accept: application/json  
      OData-MaxVersion: 4.0  
      OData-Version: 4.0  
    

    이 예제에서 Web API 요청은 다음과 같습니다.

     [Organization URI]/api/data/v9.1/msdyn_copilottranscriptdatas(a1584aaf-d5bd-357d-54a8-84dbdba547f9)/msdyn_transcriptdata
    
  5. UTF-16LE 문자 집합 옵션과 함께 base64 디코더를 사용하여 인코딩된 데이터를 디코딩하여 대본을 가져옵니다. 온라인 디코더 도구를 사용하여 데이터를 디코딩할 수 있습니다. 이 예에서는 디코딩된 대본이 다음과 같이 표시됩니다.

    
    {
      "messages": [
        {
          "id": "283c2269-b131-dac2-3aed-847bd99402e7",
          "requestId": "93893746-e203-e9b6-18b9-887d68d18daf",
          "message": "How can I book a trip?",
          "sequence": 0,
          "user": "user",
          "timestamp": 1711052758750,
          "isActivityError": false,
          "context": {}
        },
        {
          "id": "eba9e9d5-71e2-9502-0bca-9387246fb094",
          "requestId": "93893746-e203-e9b6-18b9-887d68d18daf",
          "message": "To book a trip, follow these steps:\n\n1. Go to the travel portal.\n2. Click on \"Travel\" and then select \"Book a Trip\".\n3. Fill in your name, contact information, and the dates of your trip.\n4. Choose your destination from the drop-down menu. Here's the data you'll be working with:\n\n```json\n{\n    \"id\": \"11bb11bb-cc22-dd33-ee44-55ff55ff55ff\",\n    \"title\": \"Booking Travel\",\n    \"source\": \"internal_kb\"\n}\n```\n\n5. Select a hotel from the drop-down menu and specify the check-in and check-out dates. If you don't want to book a hotel, you can check the \"I do not want to book a hotel\" box.\n6. Choose the type of rental car you want. If you don't want to rent a car, you can check the \"I do not want to rent a car\" box.\n7. Click \"Submit\".\n\nOnce you've submitted your booking request, you will receive a follow-up communication from a representative with a quote. You can also add any notes or additional information by clicking on the case from the My Bookings screen.",
          "sequence": 1,
          "user": "bot",
          "timestamp": 1711052776968,
          "isActivityError": false,
          "sources": [
            {
              "id": "11bb11bb-cc22-dd33-ee44-55ff55ff55ff",
              "title": "Booking Travel",
              "source": "internal_kb"
            }
          ],
          "context": {
            "customerIntent": "How to book a trip?"
          }
        }
      ],
      "context": {
        "chatId": "21b27e83-299d-a639-3e4a-8dcd6332e184",
        "sessionId": "session-id-2",
        "entityId": "11bb11bb-cc22-dd33-ee44-55ff55ff55ff",
        "entityName": "knowledgearticle"
      }
    } 
    
    

원본 그대로의 피드백 가져오기

담당자는 Copilot과 상호 작용할 때 Copilot이 제공하는 응답에 대한 피드백을 제공할 수 있습니다. 피드백은 Dataverse의 msdyn_copilotinteractiondata 테이블에 있는 msdyn_verbatim 열에 저장됩니다.

예를 들어, Copilot의 응답이 정확하지 않아 담당자가 엄지손가락 아래를 가리키는 아이콘을 선택하여 피드백을 제공합니다. 담당자는 또한 축어적 피드백을 제공합니다. 응용 프로그램은 msdyn_copilotinteraction 테이블에 msdyn_interactiontypename 값을 ThumbsDown으로 설정하여 레코드를 생성합니다.

레코드의 키 속성은 다음과 같습니다.

특성 예제에 대한 샘플 데이터
msdyn_copilotinteractionid 817ff9e4-cbe7-ee11-904c-000d3a3bb867
msdyn_scenariorequestid 93893746-E203-E9B6-18B9-887D68D18DAF
msdyn_scenariotype 질문하기
msdyn_interactiontype 100230302
msdyn_interactiontypename ThumbsDown
msdyn_interactionforid 1cd6023d-d326-ee11-9966-000d3a3411cf
msdyn_interactiondataid 807ff9e4-cbe7-ee11-904c-000d3a3bb867

담당자가 제공하는 직접적인 피드백을 다음과 같이 받을 수 있습니다.

  1. 테이블에서 필요한 msdyn_copilotinteractiondata 레코드 ID 값을msdyn_copilotinteraction 가져옵니다.

  2. 다음 Web API 요청을 실행하여 원문 그대로의 피드백을 가져옵니다.

    
       [Organization URI]/api/data/v9.1/msdyn_copilotinteractiondatas(<msdyn_copilotinteractiondataid>)
       Accept: application/json  
       OData-MaxVersion: 4.0  
       OData-Version: 4.0  
    

    이 예제에서 Web API 요청은 다음과 같습니다.

    [Organization URI]/api/data/v9.1/msdyn_copilotinteractiondatas(807ff9e4-cbe7-ee11-904c-000d3a3bb867)
    
  3. msdyn_verbatim 열에서 볼 수 있는 원문 그대로의 피드백을 확인하십시오. 이 예에서 검색된 피드백은 다음과 같습니다.

    
      {
      "@odata.etag": "W/\"29538313\"",
      "_owningbusinessunit_value": "0e9ec0a2-eb6a-ed11-9561-000d3a336228",
      "statecode": 0,
      "statuscode": 1,
      "_createdby_value": "586cb7a8-eb6a-ed11-9561-000d3a336228",
      "msdyn_copilotinteractiondataid": "807ff9e4-cbe7-ee11-904c-000d3a3bb867",
      "_ownerid_value": "586cb7a8-eb6a-ed11-9561-000d3a336228",
      "modifiedon": "2024-03-21T21:42:21Z",
      "msdyn_verbatim": "Article is outdated",
      "_owninguser_value": "586cb7a8-eb6a-ed11-9561-000d3a336228",
      "_modifiedby_value": "586cb7a8-eb6a-ed11-9561-000d3a336228",
      "versionnumber": 29538313,
      "createdon": "2024-03-21T21:42:21Z",
      "msdyn_interactiondata_name": null,
      "overriddencreatedon": null,
       "importsequencenumber": null,
      "_modifiedonbehalfby_value": null,
      "msdyn_interactiondata": null,
      "utcconversiontimezonecode": null,
      "_createdonbehalfby_value": null,
      "msdyn_name": null,
      "_owningteam_value": null,
      "timezoneruleversionnumber": null
    }
    
    

상호 작용 데이터 다운로드

질문하기 대화 내용 기록을 제외하고, 담당자와 Copilot 간의 다른 모든 상호 작용의 경우 데이터는 Dataverse의 msdyn_copilotinteractiondata 테이블에 저장됩니다.

예를 들어, 상호 작용은 Copilot을 사용하여 이메일 또는 사례 요약을 생성하는 담당자일 수 있습니다. 이 예제의 주요 특성은 다음과 같습니다.

특성 이 시나리오의 가치
msdyn_copilotinteractionid 0dd941e5-34e7-ee11-904c-000d3a3bb867
msdyn_scenariorequestid 42AE7F8E-736F-1CEA-035B-6BF970B48E9C
msdyn_scenariotype 케이스 요약
msdyn_interactiontype 100230305
msdyn_interactiontypename 생성된 계획
msdyn_interactionforid 1cd6023d-d326-ee11-9966-000d3a3411cf
msdyn_interactioncontext {"Filters":{"AgentContextFilters":[],"DynamicFilters":{"IsApplied":false}}}
msdyn_interactiondataid f9d841e5-34e7-ee11-904c-000d3a3bb867

다음과 같이 상호 작용 데이터를 다운로드할 수 있습니다.

  1. 테이블에서 필요한 msdyn_copilotinteractiondata 레코드 ID 값을msdyn_copilotinteraction 가져옵니다.

  2. 다음 웹 API 요청을 실행하여 msdyn_copilotinteractiondata 테이블에서 Base64로 인코딩된 형식으로 상호 작용 데이터를 검색합니다.

     [Organization URI]/api/data/v9.1/msdyn_copilotinteractiondatas(<msdyn_copilotinteractiondataid>)/msdyn_interactiondata
     Accept: application/json  
     OData-MaxVersion: 4.0  
     OData-Version: 4.0  
    
    

    이 예제에서 Web API 요청은 다음과 같습니다.

      [Organization URI]/api/data/v9.1/msdyn_copilotinteractiondatas(f9d841e5-34e7-ee11-904c-000d3a3bb867)/msdyn_interactiondata
    
    
  3. base64로 인코딩된 데이터를 디코딩하여 대본을 가져옵니다. 온라인 base64 디코더 도구를 사용하여 데이터를 디코딩할 수 있습니다. 이메일 예제의 경우 디코딩된 상호 작용 데이터가 다음과 같이 표시됩니다.

비고

질문하고, 답변을 제안하고, 이메일 초안 기능을 사용하려면 UTF-16LE 문자 집합과 함께 base64 인코더를 사용합니다. 서비스 케이스 및 대화 요약은 UTF-8 문자 집합을 사용합니다. 데이터를 인코딩하는 데 사용된 것과 동일한 문자 집합을 사용하여 디코딩하는 것이 좋습니다.

디코딩된 상호 작용 데이터의 스크린샷입니다.

Copilot을 사용하여 고객 문제 해결
Copilot 분석 보고서 보기