맞춤형 작업 환경을 위해 Planner 앱 기반 작업 관리
참고
이 기능은 현재 공개 미리 보기로 제공됩니다.
개요
앱 기반 작업 기능은 사용자가 Microsoft Teams 내의 Planner 앱에서 작업을 열 때 표시되는 내용을 organization 더 자세히 제어할 수 있도록 합니다. 표준 작업 필드 집합만 표시하는 대신 사용자에게 현재 작업에 맞게 조정된 환경을 제공할 수 있습니다. 이러한 환경은 워크플로별 필드 집합 또는 워크플로를 처음부터 끝까지 안내하는 단계별 지침일 수 있습니다. 이를 위해 Teams 앱을 작업과 통합하고 프로그래밍 방식으로 이러한 작업을 만듭니다.
예를 들어 organization 사용자는 Teams 앱을 사용하여 검사를 추적하고 완료합니다. 시스템에서 추적되는 각 검사에 대해 Planner 작업이 생성되도록 이 검사 앱을 작업과 통합할 수 있습니다.
- 사용자가 Teams의 Planner 앱에서 이러한 작업 중 하나를 열면 검사 앱에서 제공하는 검사 환경으로 직접 이동하는 단추가 있는 간소화된 화면이 표시됩니다.
- 작업을 완료하고 검사 환경을 닫으면 시작된 Planner 바로 돌아갑니다.
사용자는 Teams 앱이 할당된 작업 내에서 바로 제공하는 맞춤형 환경을 얻을 수 있습니다. 작업을 완료하거나 작업을 수행할 때의 컨텍스트를 잃기 위해 다른 앱으로 이동할 필요가 없습니다.
사용자가 작업을 완료할 때 이러한 이점 외에도 앱 기반 작업 기능을 사용하면 조직에서 필요한 기간 업무 프로세스 및 워크플로를 작업으로 반영할 수 있으므로 직원은 한 곳에서 책임지고 있는 모든 작업을 볼 수 있습니다.
이 환경은 Teams 웹, 데스크톱 및 모바일의 Planner 앱에서 지원됩니다. 다음 요구 사항을 충족하는 Teams 앱을 통해 사용자에게 맞춤형 작업 환경을 제공할 수 있습니다.
요구 사항
앱 기반 작업은 프로그래밍 방식으로 작업 만들기 및 관리에 의존하는 확장성 기능입니다. 이 기능을 사용하기 위한 요구 사항은 다음과 같습니다.
각 앱 기반 작업은 대상 Teams 앱의 환경을 가리키며, 해당 환경에 대한 참조 URL을 제공해야 합니다. 이 참조 URL은 사용자가 작업해야 하는 특정 항목 또는 화면을 가리키는 것이 좋습니다. 이 참조 URL은 특정 방식으로 작업에 추가해야 합니다. 자세한 내용은 이 문서의 1단계: 참조 URL 구성 섹션을 참조하세요.
Microsoft Graph의 비즈니스 시나리오 API를 사용하여 작업을 만들고 업데이트해야 합니다.
작업을 수행해야 하는 사용자는 Teams 관리 센터에서 설정한 앱 정책에 따라 Teams의 대상 앱에 액세스할 수 있어야 합니다. 자세한 내용은 Teams 관리 센터의 앱 관리 및 거버넌스 개요를 참조하세요.
대상 Teams 앱은 다음 작업을 포함하는 작업 수명 주기를 관리합니다.
- 작업을 만듭니다. 비즈니스 만들기세나리오태스크를 참조하세요.
- 작업을 할당합니다. BusinessScenarioTask 업데이트를 참조하세요.
- 속성이 변경되면 작업을 업데이트합니다. BusinessScenarioTask 업데이트를 참조하세요.
- 모든 단계가 완료되면 작업을 완료됨으로 표시합니다. BusinessScenarioTask 업데이트를 참조하세요.
- 작업을 삭제합니다. BusinessScenarioTask 삭제를 참조하세요.
이 기능을 사용하면 일부 워크플로에 결정적 흐름이 없을 수 있으므로 대상 Teams 앱에서 작업 수명 주기를 제어할 수 있습니다. 따라서 Planner 앱은 필요한 모든 단계가 완료되었는지 여부를 알 수 없습니다. 예를 들어 검사 중에 발견되면 검사에 여러 단계가 더 포함될 수 있습니다. 마찬가지로 사용자는 작업 필드를 업데이트하거나 작업을 완료됨으로 표시할 수 없습니다. 이러한 작업을 수행하면 사용자가 대상 Teams 앱에 반영된 내용과 충돌하는 변경을 수행할 수 있습니다.
앱 기반 작업 만들기
이 섹션에서는 비즈니스 만들기ScenarioTask API를 사용하여 앱 기반 작업을 만드는 방법을 설명합니다.
다음 HTTP POST 요청을 사용합니다. 지정한 속성에 대한 자리 표시자와 함께 요청의 모양은 다음과 같습니다.
요청
POST https://graph.microsoft.com/beta/solutions/businessScenarios/{your-business-scenario-ID}/planner/tasks
{
"title": "{Task title}",
"target": {
"@odata.type": "#microsoft.graph.businessScenarioGroupTarget",
"taskTargetKind": "group",
"groupId": "{group ID of the team where you want to create the task}"
},
"businessScenarioProperties": {
"externalObjectId": "{any unique ID, for example, the ID of the object in your destination app}",
"externalBucketId": "{any bucket ID from planConfiguration of your business scenario}"
},
"assignments": {
"{user ID of user you want to assign the task to}": {
"@odata.type": "#microsoft.graph.plannerAssignment",
"orderHint": " !"
}
},
"details": {
"references": {
"{reference URL}": {
"@odata.type": "microsoft.graph.plannerExternalReference",
"alias": "{destination app name}",
"previewPriority": " !",
"type": "TeamsHostedApp"
}
}
}
}
다음 섹션에서는 요청을 보다 자세히 구성하는 방법을 안내합니다.
요청에서 속성을 정의하는 방법
특정 유형의 첨부 파일은 앱 기반 작업을 표준 작업과 구분합니다. 첨부 파일은 형식 TeamsHostedApp
이어야 하며 Teams 앱의 대상 환경에 대한 특별히 형식이 지정된 링크(참조 URL)를 포함해야 합니다. 이는 작업이 앱 기반 작업임을 Planner 의미합니다.
API는 이러한 첨부 파일을 참조로 참조 합니다.
먼저 대상 환경을 가리키도록 참조 URL을 구성합니다. 그런 다음, 요청 본문의 첨부 파일에 대한 다른 필수 속성과 함께 참조 URL을 지정합니다.
1단계: 참조 URL 구성
참조 URL은 특정 형식을 사용합니다. 다음 단계에 따라 URL을 생성한 다음 인코딩합니다.
1a단계: URL 생성
대상 환경에 대한 참조 URL은 다음 형식 으로 Stageview 모달 링크 구문을 사용해야 합니다.
https://teams.microsoft.com/l/stage/{Teams-app-Id}/0?context={"contentUrl":"URL-to-destination-experience"},"name":"{page-title}","openMode":"modal"}
참조 URL을 생성하려면 다음 매개 변수를 지정합니다.
매개 변수 | 설명 |
---|---|
Teams-app-Id |
작업과 통합하는 Teams 앱의 앱 ID입니다. |
URL-to-destination-experience |
사용자가 작업을 열 때 볼 대상 Teams 앱의 대상 환경을 가리키는 URL입니다. 보안상의 이유로 URL은 사용자가 제공한 앱 ID로 표시되는 Teams 앱과 연결된 유효한 도메인을 가리킵니다. |
page-title |
사용자에게 대상 환경의 URL이 표시되면 화면 맨 위에 표시되어야 하는 제목입니다. |
인코딩하기 전에 참조 URL의 예는 다음과 같습니다.
https://teams.microsoft.com/l/stage/com.microsoft.teamspace.tab.youtube/0?context={"contentUrl":"https://tabs.teams.microsoft.com/youtubeContentStage?videoId=HBGmSy1iVmY","name":"Security%20talk","openMode":"modal"}
이 예제에서는 다음을 수행합니다.
-
Teams-app-Id
은 Teamscom.microsoft.teamspace.tab.youtube
()에서 YouTube 앱의 앱 ID입니다. 대부분의 Teams 앱 ID는 영숫자이며 다르게 보일 수 있습니다. -
URL-to-destination-experience
는 대상 Teams 앱(https://tabs.teams.microsoft.com/youtubeContentStage?videoId=HBGmSy1iVmY
) 내의 환경을 가리킵니다. -
page-title
는 URL을 로드할 때 화면 제목(Security talk
)의 이름입니다.
Teams의 YouTube 앱을 사용할 수 있는 경우 이 URL을 자신에게 보내고 열기를 확인할 수 있습니다.
1b단계: URL 인코딩
첨부 파일에서 사용하려면 참조 URL을 인코딩해야 합니다. 백분율 인코딩은 링크가 프로그래밍 방식으로 사용할 수 있도록 호환되는 형식으로 유지됩니다.
다음 단계에 따라 참조 URL을 인코딩합니다. 앞에서 설명한 예제 참조 URL을 사용하여 URL을 인코딩하는 방법을 보여 줍니다.
백분율은 다음에
0?context=
오는 URL 부분을 인코딩합니다. 또는=
(등호) 또는 그 사이에 있는 문자를 인코딩https://
하지 마세요.https://teams.microsoft.com/l/stage/com.microsoft.teamspace.tab.youtube/0?context=%7B%22contentUrl%22%3A%22https%3A%2F%2Ftabs.teams.microsoft.com%2FyoutubeContentStage%3FvideoId%3DHBGmSy1iVmY%22%2C%22name%22%3A%22Security%2520talk%22%2C%22openMode%22%3A%22modal%22%7D
팁
Teams 채팅에서 링크의 유효성을 쉽게 검사할 수 있는 마지막 단계입니다. 이 단계를 완료한 후 Teams 채팅에서 URL을 자신에게 전송하여 테스트할 수 있습니다. Teams에서 대상 앱에 액세스할 수 있는 모든 사용자의 경우 Teams 데스크톱, 웹 또는 모바일에서 링크가 열립니다.
참조 URL의 모든
.
문자를 로 바%2E
꿉니다. 참조 URL의 모든 문자에서 처음부터 끝까지 이 작업을 수행해야 합니다. 이 단계를 건너뛰면 참조 URL이 작동하지 않을 수 있습니다.다음 URL은 프로그래밍 방식으로 사용할 준비가 된 것입니다.
https://teams%2Emicrosoft%2Ecom/l/stage/com%2Emicrosoft%2Eteamspace%2Etab%2Eyoutube/0?context=%7B%22contentUrl%22%3A%22https%3A%2F%2Ftabs%2Eteams%2Emicrosoft%2Ecom%2FyoutubeContentStage%3FvideoId%3DHBGmSy1iVmY%22%2C%22name%22%3A%22Security%2520talk%22%2C%22openMode%22%3A%22modal%22%7D
참고
URL이 Power App을 가리키는 경우 Power Apps에 대해 SSO(Single Sign-On)가 작동하도록 하는 매개 변수와
&skipMobileRedirect=1
사용자에게 독립 실행형 Power App 플레이어를 열라는 메시지를 표시하는 화면을 건너뛰는 매개 변수가 포함되어&source=teamstab
있는지 확인합니다.
2단계: 첨부 파일 정의
첨부 파일을 정의하려면 요청 본문에서 "references"
다음 속성을 지정합니다.
"references": {
"{reference-URL}": {
"@odata.type": "microsoft.graph.plannerExternalReference",
"alias": "{destination app name}",
"previewPriority": " !",
"type": "TeamsHostedApp"
}
}
속성 | 설명 |
---|---|
reference-URL |
Stageview 모달 링크 구문의 대상 환경에 대한 URL입니다. URL을 생성하고 인코딩하는 방법에 대한 자세한 내용은 이 문서의 1단계: 참조 URL 구성 섹션을 참조하세요. |
alias |
Teams 앱의 이름입니다. 사용자가 작업을 열면 "별칭>으로 이 작업을 완료하고 시작 작업<단추를 사용하여 대상 환경으로 이동하라는 메시지가 표시됩니다. |
previewPriority |
로 둡 ! 니다. |
type |
를 로 TeamsHostedApp 설정합니다. 이는 작업이 앱 기반 작업임을 Planner 의미합니다. |
예제
이 예제에서는 "보안 사례 프레젠테이션 검토"라는 앱 기반 작업을 만들고 Adele Vance(사용자 ID 44ee44ee-ff55-aa66-bb77-88cc88cc88cc)라는 사용자에게 할당하는 방법을 보여 줍니다. 이 요청은 이 문서의 1단계: 참조 URL 구성 섹션의 예제 참조 URL 을 사용합니다.
요청
POST https://graph.microsoft.com/beta/solutions/businessScenarios/ccd5aa8aebd048bd839a4fa5b7420631/planner/tasks
{
"title": "Review security practices presentation",
"target": {
"@odata.type": "#microsoft.graph.businessScenarioGroupTarget",
"taskTargetKind": "group",
"groupId": "769bbf41-70b7-4ea6-a044-a7037358883e"
},
"businessScenarioProperties": {
"externalObjectId": "SP-202418",
"externalBucketId": "Security practices"
},
"assignments": {
"44ee44ee-ff55-aa66-bb77-88cc88cc88cc": {
"@odata.type": "#microsoft.graph.plannerAssignment",
"orderHint": " !"
}
},
"details": {
"references": {
"https://teams%2Emicrosoft%2Ecom/l/stage/com%2Emicrosoft%2Eteamspace%2Etab%2Eyoutube/0?context=%7B%22contentUrl%22%3A%22https%3A%2F%2Ftabs%2Eteams%2Emicrosoft%2Ecom%2FyoutubeContentStage%3FvideoId%3DHBGmSy1iVmY%22%2C%22name%22%3A%22Security%2520talk%22%2C%22openMode%22%3A%22modal%22%7D": {
"@odata.type": "microsoft.graph.plannerExternalReference",
"alias": "Security practices presentation",
"previewPriority": " !",
"type": "TeamsHostedApp"
}
}
}
}
참고
이 예제 참조 URL은 많은 조직의 환경에서 사용할 수 있는 앱을 사용하여 앱 기반 작업 환경을 쉽게 테스트하는 방법으로 선택되었습니다. 이 예제 참조 URL을 사용하면 사용자가 작업을 완료할 수 없습니다. YouTube 앱이 앱 기반 작업과 통합되지 않고 비디오가 재생된 후 작업을 완료하도록 표시하는 API 호출을 수행하지 않기 때문입니다.
Planner 앱의 모양
사용자가 Teams의 Planner 앱에서 작업을 열 때 표시되는 내용은 다음과 같습니다. 작업 시작 단추를 선택하면 사용자가 Teams 앱의 대상 환경으로 이동합니다. 이 예제에서 대상 환경은 Teams의 YouTube 앱에 있는 보안 사례 비디오입니다.
사용자 환경에 대한 자세한 내용은 Teams의 Planner 앱에서 앱 기반 작업 작업을 참조하세요.