Salesforce 통합

Salesforce Lightning 웹 구성요소 (LWC)를 사용하여 채팅 대화를 위한 Agent Assist UI 모듈과 통합합니다.

시작하기 전에

상담사 지원 UI 모듈을 Salesforce와 통합하려면 다음 리소스에 액세스할 수 있어야 합니다.

  • Node.js

    운영체제에 권장되는 설치 안내를 따릅니다.

  • Salesforce CLI

    npm을 사용하여 Salesforce CLI를 설치하면 호환성 문제가 발생하는 것으로 알려져 있습니다. 이러한 문제를 방지하려면 pkg (macOS), exe (Windows) 또는 TAR (Linux) 설치 옵션 중 하나를 사용하세요.

  • gcloud CLI

    안내에 따라 gcloud 명령어를 설치하고 gcloud auth login을 사용하여 인증합니다.

  • Salesforce UI

    • 인스턴스 URL 또는 Salesforce 로그인 페이지에서 로그인하고 다음을 기록합니다.
      • Salesforce 내 도메인 URL입니다. 다음 단계에 따라 내 도메인 URL을 찾으세요.
        1. 메뉴 바 > 설정 메뉴로 이동합니다.
        2. 설정을 클릭합니다.
        3. 빠른 찾기내 도메인을 입력합니다. 도메인 이름은 MY-DOMAIN-NAME.develop.my.salesforce.com 형식입니다.
      • Salesforce 조직 ID입니다. 조직 ID를 찾으려면 다음 단계를 따르세요.
        1. 메뉴 바 > 설정 메뉴로 이동합니다.
        2. 설정을 클릭합니다.
        3. 빠른 찾기에 '회사 정보'를 검색합니다. 참고: 이러한 통합 단계는 Salesforce Developer Edition에서만 테스트되었습니다. 다른 버전을 사용하는 경우 기능 라이선스와 Salesforce 인터페이스에 차이가 있을 수 있습니다.
  • Agent Assist 통합 백엔드

    1. 안내에 따라 통합을 설정합니다.
    2. 배포 스크립트를 실행하기 전에 deploy.sh를 사용하여 다음 환경 변수를 구성하거나 프로젝트 루트의 .env 파일에서 구성합니다.
      • AUTH_OPTION: SalesforceLWC로 설정합니다.
      • SALESFORCE_DOMAIN: YOUR_SUBDOMAIN.develop.lightning.force.com과 유사한 도메인 이름입니다. Salesforce UI 필수 구성요소에서 이 값을 기록했습니다. https://는 포함하지 않습니다.
      • SALESFORCE_ORGANIZATION_ID: Salesforce UI 필수사항에서 이 값을 기록했습니다.

1단계: 프로젝트 설정

Agent Assist UI 모듈 통합을 시작하려면 다음 단계를 따르세요.

  1. 다음 코드를 실행하여 Agent Assist 통합 저장소를 클론하고 프로젝트를 엽니다.

    git clone https://github.com/GoogleCloudPlatform/agent-assist-integrations
    cd salesforce/aa-lwc
    
  2. 다음 명령어를 실행하여 나중에 정적 리소스로 배포되는 JS 파일을 다운로드합니다.

    npm run generate-static-resources
    npm install
    

2단계: 환경 설정

프로덕션 또는 개발과 같은 특정 환경에 Agent Assist UI 모듈을 통합할 수 있습니다. Salesforce에서는 이러한 환경을 조직이라고 합니다.

Salesforce 콘솔에서 조직 구성하기

Salesforce 콘솔에서 다음 단계에 따라 상담사 지원 통합을 위해 조직을 구성합니다.

  1. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '옴니채널 설정'을 입력한 다음 옴니채널 설정을 클릭합니다.
    1. 옴니채널 사용 설정을 선택합니다.
    2. 새 창 또는 탭에서 상담사를 옴니채널에 자동으로 로그인을 선택합니다.
    3. 저장을 클릭합니다.
  2. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '커뮤니티'를 입력한 다음 디지털 환경 > 설정을 클릭합니다.
    1. Enable Experience Workspaces(환경 작업공간 사용 설정)을 선택합니다.
    2. 저장을 클릭합니다.

Salesforce CLI로 조직 구성

Salesforce CLI를 사용하여 상담사 지원 통합을 위해 조직을 구성하려면 다음 단계를 따르세요.

  1. 다음 코드를 실행하고 평소에 사용하는 Salesforce 로그인 세부정보를 사용하여 CLI를 인증합니다.

    npm run login
    
  2. 다음 코드를 실행하여 LWC를 조직에 배포합니다.

    npm run deploy
    

3단계: 외부 클라이언트 앱 만들기

Salesforce LWC는 클라이언트 사용자 인증 정보 OAuth 2.0 흐름을 사용하여 사용자를 인증합니다. 외부 클라이언트 앱이 클라이언트 사용자 인증 정보 흐름을 사용 설정합니다. 앱의 고객 키와 고객 비밀을 사용하여 Salesforce LWC를 구성하여 Salesforce로 사용자를 인증합니다.

  1. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '외부 클라이언트 앱 관리자'를 입력합니다.
    1. 외부 클라이언트 앱 관리자 > 새 외부 클라이언트 앱 > 만들기를 클릭한 후 다음 정보를 입력합니다.
      • 연결된 앱 이름: lwc auth
      • API 이름: lwc_auth
      • Contact Email(연락처 이메일): your_email@example.com
      • API (OAuth 설정 사용 설정) > OAuth 사용 설정: 선택됨
      • API (OAuth 설정 사용) > 콜백 URL: https://login.salesforce.com/services/oauth2/callback
      • API (OAuth 설정 사용 설정) > 선택한 OAuth 범위: ID URL 서비스에 액세스
      • API (OAuth 설정 사용 설정) > 클라이언트 사용자 인증 정보 흐름 사용 설정: 선택됨
    2. 만들기를 클릭합니다.
  2. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '외부 클라이언트 앱 관리자'를 입력합니다.
    1. 연결된 앱의 이름 > 수정을 클릭합니다.
    2. OAuth 정책 > OAuth 흐름 및 외부 클라이언트 앱 개선사항으로 이동합니다.
    3. 클라이언트 사용자 인증 정보 흐름 사용 설정이 선택되어 있는지 확인합니다.
    4. Run As에 로그인 사용자 이름을 입력합니다.
    5. 저장을 클릭합니다.
  3. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '외부 클라이언트 앱 관리자'를 입력합니다.
    1. 연결된 앱의 이름 > 수정을 클릭합니다.
    2. OAuth 설정 > 앱 설정 > 컨슈머 키 및 비밀번호로 이동합니다.
    3. 이메일로 전송된 인증 코드를 입력합니다.
    4. 고객 키와 고객 보안 비밀을 안전한 곳에 복사합니다. 이 값은 이후 단계에서 필요합니다.
  4. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 'CORS'를 입력한 다음 수정을 클릭합니다.
    1. OAuth 엔드포인트에 CORS 사용 설정을 확인합니다.
    2. 저장을 클릭합니다.

연결된 앱에 관한 자세한 내용은 다음 Salesforce 리소스를 참고하세요.

4단계: 채팅 클라이언트 구성

Salesforce에서 Agent Assist UI 모듈을 사용하려면 상담사 데스크톱에 채팅 클라이언트가 있어야 합니다.

인앱 및 웹용 메시지 구성

다음 단계에 따라 메신저를 구성하세요.

  1. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '신뢰할 수 있는 URL'을 입력한 다음 새 신뢰할 수 있는 URL을 클릭합니다.
    1. API 이름ui_connector을 입력합니다.
    2. Agent Assist 통합 백엔드로 배포한 UI 커넥터 Cloud Run 서비스 엔드포인트의 URL을 입력합니다. 이 URL은 Cloud Run 콘솔에서 확인할 수 있습니다. 예를 들면 https://UI_CONNECTOR_SUBDOMAIN.us-central1.run.app입니다.
    3. CSP 지시어에서 모든 옵션을 선택합니다.
    4. Save & New(저장 및 새로 만들기)을 클릭합니다.
    5. API 이름twilio_flex을 입력합니다.
    6. URL https://flex.twilio.com을 입력합니다.
    7. CSP 지시어에서 모든 옵션을 선택합니다.
    8. Save & New(저장 및 새로 만들기)을 클릭합니다.
    9. API 이름salesforce_domain을 입력합니다.
    10. Salesforce 도메인의 URL을 https://YOUR_SUBDOMAIN.my.salesforce.com 형식으로 입력합니다.
    11. CSP 지시어에서 모든 옵션을 선택합니다.
    12. 저장을 클릭합니다.
  2. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 'Queues'를 입력한 다음 New를 클릭합니다.
    1. 다음 정보를 입력합니다.
      • 라벨: 메시지 대기열
      • 대기열 이름: Messaging_Queue
      • 라우팅 구성: Messaging_Routing_Configuration
    2. 지원되는 객체를 클릭한 다음 '메시지 사용자, 메시지 세션'을 추가합니다.
    3. 대기열 구성원을 클릭한 다음 '사용자: 로그인 사용자'를 추가합니다.
    4. 저장을 클릭합니다.
  3. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기 검색에 '권한 세트'를 입력합니다.
    1. 메시지 에이전트 권한 세트를 클릭합니다.
    2. 서비스 상태 액세스 > 수정을 클릭합니다.
    3. 바쁨온라인 - 메시지 상태를 선택합니다.
    4. 추가 > 저장을 클릭합니다.
  4. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '사용자'를 입력한 다음 사용자를 클릭합니다.
    1. 사용자 이름을 클릭하고 Service Cloud 사용자가 사용 설정되어 있는지 확인합니다.
    2. 페이지에서 권한 세트 라이선스 할당을 찾습니다.
    3. 과제 수정을 클릭한 다음 인앱 및 웹 사용자 메시지를 선택합니다.
    4. 저장을 클릭합니다.
    5. 페이지에서 권한 세트 할당을 찾습니다.
    6. 할당 수정을 클릭한 다음 메시지 에이전트 권한 집합을 선택합니다.
    7. 추가 > 저장을 클릭합니다.
  5. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 '메시지 설정'을 입력한 다음 새 채널을 클릭합니다.
    1. 인앱 및 웹용 메시지를 선택합니다.
    2. 이름에 '메시지 채널'을 입력합니다.
    3. 저장을 클릭합니다.
    4. 라우팅 유형을 '옴니 채널 대기열'로, 대기열을 '메시지 대기열'로 설정합니다.
    5. 저장을 클릭하고 메시지 설정으로 이동합니다.
    6. 메시지 채널의 이름을 클릭한 다음 활성화를 클릭합니다.
    7. 읽은 후 이용약관에 동의합니다.
  6. 메뉴 표시줄 > 설정 메뉴로 이동한 다음 설정을 클릭합니다. 빠른 찾기에 'Embedded Service Deployments'(임베디드 서비스 배포)를 입력한 다음 New Deployment(새 배포)를 클릭합니다.
    1. 인앱 및 웹 메시지 > 다음 > > 다음을 클릭합니다.
    2. 다음 세부정보를 입력합니다.
      • 이름: 메시지 포함 서비스 배포
      • 개발자 이름: Messaging_Embedded_Service_Deployment
      • 도메인: example.com
      • 채널: 메시지 채널
    3. 저장을 클릭합니다. 배포가 완료될 때까지 기다립니다.
    4. Embedded Service Deployment 설정에서 Publish를 클릭합니다.
    5. 새로고침을 클릭한 다음 테스트 메시지를 클릭합니다.

인앱 및 웹용 메시지 테스트

메신저를 테스트하려면 다음 단계를 따르세요.

  1. 메시지 테스트를 클릭합니다.
  2. 새 탭이 로드되면 말풍선을 클릭하여 새 테스트 대화를 시작합니다.
  3. "Test"과 같은 메시지를 보냅니다.
  4. Salesforce 브라우저 탭으로 이동합니다.
  5. 설정 툴바에서 앱 런처 메뉴를 클릭한 후 서비스 콘솔을 선택합니다.
  6. 유틸리티 툴바에서 옴니채널을 클릭합니다.
  7. 상태를 온라인 - 메시지로 설정합니다.
  8. 수신 메시지를 수락합니다. 그러면 대화에 대한 서비스 콘솔의 새 탭이 열립니다. 채팅 스크립트를 볼 수 없습니다.
  9. 메뉴 바 > 설정 메뉴로 이동합니다.
  10. 페이지 수정을 클릭합니다.
  11. 구성요소 메뉴에서 향상된 대화대화 창으로 드래그합니다.
  12. 저장 > 활성화 > 조직 기본값으로 할당 > 데스크톱 > 뒤로 를 클릭합니다.
  13. 페이지를 새로고침합니다.
  14. 유틸리티 툴바에서 옴니채널을 클릭합니다.
  15. 상태를 온라인 - 메시지로 설정합니다.
  16. '테스트' 메시지에 답장하여 메시지가 작동하는지 확인합니다.

진행이 막혀 추가 정보가 필요한 경우 인앱 및 웹용 Salesforce 메시지 설정 가이드를 참고하세요.

5단계: Salesforce LWC 설치

Lightning Experience 편집기를 사용하여 메시지 세션 페이지에 Salesforce LWC를 추가하려면 다음 단계를 따르세요. 4단계의 테스트 대화를 계속 진행합니다.

  1. 메뉴 바 > 설정 메뉴로 이동한 다음 페이지 수정을 클릭합니다.
  2. 구성요소 사이드바에서 agentAssistContainerModule를 사이드바로 이동합니다.

  3. 이전 단계에서 배치한 구성요소를 클릭합니다.

  4. 다음과 같이 양식 필드를 작성하여 구성 세부정보를 추가합니다.

    • 엔드포인트: 에이전트 통합 백엔드 UI 커넥터의 URL입니다(예: Cloud Run 콘솔의 URL). 예: https://UI-CONNECTOR-ENDPOINT.GCP-REGION.run.app
    • 기능: 대화 프로필에서 사용 설정된 Agent Assist 기능(예: CONVERSATION_SUMMARIZATION, KNOWLEDGE_ASSIST_V2, SMART_REPLY, AGENT_COACHING)
    • conversationProfile: Agent Assist 대화 프로필 리소스 이름 (예: projects/GCP-PROJECT-ID/locations/GCP-REGION/conversationProfiles/CONVERSATION-PROFILE-ID)
    • consumerKey: 3단계의 연결된 앱 고객 키
    • consumerSecret: 3단계의 연결된 앱 고객 보안 비밀