메인 콘텐츠로 건너뛰기

EKB 챗봇을 MS Teams에 통합

EKB를 Microsoft Teams와 통합하면 지능적이고 컨텍스트를 인식하는 채팅이 팀의 협업 환경에 직접 제공됩니다. 이 가이드는 Microsoft Teams에서 EKB 챗봇을 설정하는 단계를 안내하여 Teams 인터페이스를 떠나지 않고 AI 에이전트와 원활한 통신이 가능하도록 합니다.

전제 조건​

  • 봇을 만들기 위한 Azure 관리자 접근 권한
  • Teams 개발자 포털에 대한 관리자 접근 권한

설정 단계​

1. Azure 봇 만들기​

  1. Azure 대시보드로 이동합니다.
  2. 리소스 만들기를 클릭합니다.
  3. 검색창에 Bot을 입력하고 Azure Bot을 선택합니다.
  4. 새 Azure 봇을 만들고 원하는 표시 이름을 설정합니다.

2. 봇 구성​

  1. 구성 탭으로 이동하여 메시징 엔드포인트를 서버 URL을 가리키도록 업데이트합니다.
    정보
    클라우드 고객은 https://api.getodin.ai/teams/events를 입력하세요
    온프레미스 고객은 <your backend root URL>/teams/events를 입력하세요

    메시징 엔드포인트 구성
  2. 구성 탭에서 App ID와 Tenant ID를 복사한 다음 비밀번호 관리로 이동합니다.
  3. 봇에 대한 새 비밀번호를 만들고 나중에 사용할 수 있도록 저장합니다.
  4. Azure에서 봇의 스트리밍 엔드포인트를 활성화하고 해당 엔드포인트의 URL을 가리키도록 설정합니다.

3. Teams 채널 활성화​

  1. Azure 포털 왼쪽에서 채널을 클릭하고 봇에 대한 Teams 상호작용 채널을 활성화합니다.

4. EKB에 봇 등록​

정보
클라우드 고객은 App ID, Tenant ID 및 App Password를 AA 지원팀에 제공하여 봇이 등록되도록 지원 티켓을 열어주세요.
  1. EKB에서 슈퍼 관리자 페이지로 이동하고 왼쪽에서 Teams 봇을 선택합니다.
  2. 봇 등록을 클릭합니다.
  3. 6~7단계에서 수집한 App ID, Tenant ID, 비밀번호를 입력합니다. 봇 등록을 클릭합니다.

5. Teams 개발자 포털에서 앱 만들기​

  1. Teams 개발자 포털로 이동합니다.
  2. 새 앱을 클릭합니다.
  3. 앱 정보를 입력합니다:
    • 짧은 설명 — 필수, 비워둘 수 없음.
    • 긴 설명 — 필수, 비워둘 수 없음.
  4. Azure의 봇 App ID로 App ID 필드를 채웁니다.

6. 봇 기능 구성​

  1. 앱 기능으로 이동하여 봇을 추가하고 Azure의 App ID를 제공합니다.
  2. 봇 기능을 다음과 같이 구성합니다:
    Teams 봇 기능

7. 배포​

  1. 새로운 Teams 앱을 배포하는 조직의 표준 정책에 따라 패키지를 배포합니다.
  2. 봇을 프로젝트에 연결하려면 첫 메시지로 !setupme(본인 전용) 또는 !setup(대화의 모든 사용자용)을 보냅니다. 봇을 프로젝트에 연결하기를 참조하세요.

권장 배포 방법​

  1. 조직에 게시

    Microsoft Teams 개발자 대시보드의 앱 페이지에서 왼쪽 사이드바 하단까지 스크롤합니다. 게시 아래에서 조직에 게시를 선택합니다.
    조직에 게시

  2. 관리자 동의 부여

    앱이 Teams 인스턴스에 게시되며 관리자 동의가 필요할 수 있습니다. 동의는 Microsoft Teams 관리 센터에서 부여할 수 있습니다.

  3. 전파 대기

    동의가 부여된 후 봇이 사용 가능해질 때까지 권한이 전파되는 데 몇 시간이 걸립니다. 이 지연은 단일 조직으로 제한되더라도 Microsoft의 사용자 지정 애플리케이션 내부 검토 프로세스로 인해 발생합니다.


봇을 프로젝트에 연결하기​

봇은 Odin 프로젝트에서 답변하며, 프로젝트에서 작업하기 위해 API 키와 시크릿을 사용합니다. 연결 방법은 두 가지이며, 둘 다 Teams에서 짧은 양식을 엽니다. 채널과 그룹 채팅에서 명령을 보낼 때는 @Odin !setup처럼 봇을 @멘션하세요.

공유 연결 (!setup)​

!setup은 프로젝트 ID와 해당 프로젝트에 액세스할 수 있는 API 키 및 시크릿을 사용하여 대화의 모든 사용자를 위해 프로젝트를 연결합니다.

기본적으로 공유 연결의 세분성은 봇별, Teams 인스턴스별입니다. 모든 채널, 그룹, 다이렉트 메시지를 포함한 Teams 인스턴스 전체에 적용됩니다.

개인 연결 (!setupme)​

!setupme는 본인의 Odin 계정을 연결합니다. 본인 계정 설정의 API 키와 시크릿(프로젝트 수준 키는 사용할 수 없음)과, 필요한 경우 액세스 권한이 있는 프로젝트 ID를 입력합니다. 개인 Autopilot 프로젝트를 사용하려면 프로젝트 ID를 비워 두세요.

개인 연결은 본인에게만 답변하며 항상 공유 연결보다 우선합니다. !resetme로 개인 연결을 제거하면 봇은 다시 공유 연결로 답변합니다.

채널별 설정 (온프레미스 전용)​

채널, 그룹 또는 사용자에 따라 하나의 봇을 여러 프로젝트와 함께 사용하는 등 더 세분화하려면 다음 백엔드 환경 변수를 설정하세요.

TEAMS_USE_PER_CHANNEL_SETTINGS=TRUE

이 변수를 설정하면 !setup은 채널별로(다이렉트 메시지에서는 사용자별로) 프로젝트를 연결하고, 채널에서 !setupme로 만든 개인 연결은 해당 채널에만 적용됩니다. 다이렉트 메시지에서 만든 개인 연결은 봇과의 다이렉트 메시지에 적용됩니다.

정보

이 설정은 온프레미스 고객만 사용할 수 있습니다. 클라우드 호스팅 배포에서는 지원되지 않습니다.

에이전트 선택​

봇은 프로젝트에 현재 설정된 기본 에이전트로 답변합니다. Project ID 없이 만든 개인 연결은 본인의 Autopilot 프로젝트를 사용하며, Odin의 Autopilot 에이전트로 답변합니다.

프로젝트가 Teams App 설정에서 에이전트 선택 허용을 켜면, 개인 연결(!setupme)이 있는 사용자는 본인에게 답변할 다른 에이전트를 고를 수 있습니다. !agent를 입력하거나 홈 카드에서 Change agent를 누른 다음, Odin 웹 채팅에서 본인 역할이 사용할 수 있는 에이전트(Autopilot 포함) 중에서 선택하세요. Project default는 나중에 바뀌더라도 항상 프로젝트에 설정된 에이전트를 따릅니다.

선택은 본인의 연결에만 적용됩니다. 같은 프로젝트로 !setupme를 다시 실행해도 유지되고, 다른 프로젝트를 연결하면 지워지며, 에이전트를 바꿔도 대화 기록은 그대로 남습니다. 공유 연결(!setup)은 항상 프로젝트의 기본 에이전트로 답변합니다. 선택한 에이전트가 삭제되거나 역할이 해당 에이전트에 접근할 수 없게 되면, 봇이 한 번 알려 주고 프로젝트 기본 에이전트로 돌아갑니다. 설정을 끄면 모두 기본 에이전트로 돌아갑니다.


봇 사용하기​

홈 카드​

!home을 입력하면 봇이 연결된 프로젝트, 봇이 할 수 있는 일, 시도해 볼 만한 추천 질문이 표시됩니다. 카드에는 프로젝트 변경 및 프로젝트 통합 목록 보기 버튼이 있습니다. 개인 채팅에 처음 설치될 때도 표시됩니다. 연결에서 에이전트를 고를 수 있으면, 카드에 현재 답변하는 에이전트와 Change agent 버튼도 표시됩니다.

실시간 상태​

에이전트가 작업하는 동안 봇은 답변이 도착하기 전에 무엇을 하고 있는지(Thinking... 또는 사용 중인 도구) 표시합니다. 개인 채팅에서는 실시간 상태 줄로 표시되고, 채널과 그룹 채팅에서는 봇의 메시지가 그 자리에서 업데이트됩니다. 대화에는 최종 답변만 남습니다. Teams 앱 설정의 실시간 상태 토글로 끌 수 있습니다.

통합 연결​

에이전트가 아직 연결되지 않은 통합을 필요로 하면 봇이 카드를 게시합니다.

  • OAuth로 로그인하는 서비스(예: Gmail 또는 Notion)는 Connect를 선택하고 브라우저에서 로그인을 마친 다음 Continue를 선택합니다.
  • API 키 또는 토큰을 사용하는 서비스는 Connect를 선택하고 열리는 양식에 자격 증명을 입력합니다.

!integrations는 프로젝트에 연결된 통합과 연결할 수 있는 통합을 나열합니다. 통합의 연결과 연결 해제는 Odin에서 합니다.

승인과 질문​

에이전트가 승인이 필요한 작업을 실행하려고 하면 봇은 Allow 및 Deny 버튼과 함께 작업 세부 정보를 표시합니다. 추가 정보가 필요하면 Teams에서 바로 답할 수 있는 짧은 양식으로 질문합니다.

봇이 받는 모든 명령은 사용 가능한 명령을 참조하세요.