REST Resource: projects.chatAppConfig

리소스: ChatAppConfig

Google Workspace 부가기능으로 빌드된 Google Chat 앱의 구성을 나타냅니다.

JSON 표현
{
  "name": string,
  "displayName": string,
  "description": string,
  "interactiveFeatureConfig": {
    object (InteractiveFeatureConfig)
  },
  "avatarUri": string,
  "state": enum (AppState),
  "errorLoggingEnabled": boolean,
  "markupSyntax": enum (MarkupSyntax)
}
필드
name

string

필수 항목입니다. 식별자. Chat 앱 구성의 리소스 이름입니다.

형식: projects/{project}/chatAppConfig, 여기서 {project}는 Google Cloud 프로젝트 번호입니다.

displayName

string

필수 항목입니다. Chat 앱의 표시 이름입니다. 길이는 3~25자(영문 기준)여야 합니다.

description

string

필수 항목입니다. Chat 앱에 대한 간단한 설명입니다. 1~40자(영문 기준)여야 합니다.

interactiveFeatureConfig

object (InteractiveFeatureConfig)

선택사항입니다. 앱의 대화형 기능 설정입니다. 이 설정이 제공되지 않으면 앱은 대화형이 아니므로 Chat API를 사용할 수 있지만 사용자는 앱과 상호작용할 수 없습니다.

avatarUri

string

선택사항입니다. 앱의 아바타 이미지 URL입니다. 정사각형 (가로세로 비율 1:1) PNG 이미지를 호스팅하는 HTTPS URL이어야 합니다. 권장 최소 크기: 256x256픽셀 지정하지 않으면 기본 앱 아바타가 사용됩니다.

state

enum (AppState)

선택사항입니다. 앱의 상태입니다. 지정하지 않으면 기본값은 ACTIVE입니다.

errorLoggingEnabled

boolean

선택사항입니다. Cloud Logging에 오류를 로깅할지 여부입니다. 지정하지 않을 경우 기본값은 false입니다.

markupSyntax

enum (MarkupSyntax)

선택사항입니다. 이 Chat 앱에서 전송하거나 읽는 메시지의 기본 마크업 문법입니다. 지정하지 않을 경우 기본값은 MARKUP_SYNTAX_MARKDOWN입니다.

AppState

채팅 앱의 현재 상태입니다.

열거형
APP_STATE_UNSPECIFIED 기본값 지정되지 않음.
ACTIVE Chat API 구성 페이지의 LIVE에 매핑됩니다. 앱이 활성 상태이며 공개 상태인 사용자가 앱을 찾고 사용할 수 있습니다.
DISABLED 앱이 사용 중지되어 더 이상 누구도 앱을 찾을 수 없으며 앱과 대화할 수 없습니다.

InteractiveFeatureConfig

앱의 양방향 기능 설정

JSON 표현
{
  "connectionConfig": {
    object (ConnectionConfig)
  },
  "appCommands": [
    {
      object (AppCommand)
    }
  ],
  "urlPatterns": [
    {
      object (UrlPattern)
    }
  ],
  "allowlistedTestingPrincipals": [
    string
  ],
  "supportsMultiuserSpaces": boolean
}
필드
connectionConfig

object (ConnectionConfig)

필수 항목입니다. 앱이 Google Chat에서 이벤트를 수신하는 방법

appCommands[]

object (AppCommand)

선택사항입니다. 앱 명령어 구성입니다.

urlPatterns[]

object (UrlPattern)

선택사항입니다. 링크 미리보기 구성입니다.

allowlistedTestingPrincipals[]

string

선택사항입니다. 앱을 찾고 사용할 수 있는 Google Workspace 도메인의 사용자 및 그룹의 이메일 주소입니다.

supportsMultiuserSpaces

boolean

선택사항입니다. 앱을 1:1 사용자 채팅 메시지, 그룹 채팅, 스페이스에 추가할 수 있는지 여부 지정하지 않을 경우 기본값은 false입니다.

ConnectionConfig

앱이 이벤트를 수신하는 방법

JSON 표현
{

  "httpEndpointConfig": {
    object (HttpEndpointConfig)
  },
  "appsScriptEndpointConfig": {
    object (AppsScriptEndpointConfig)
  },
  "cloudPubSubEndpointConfig": {
    object (CloudPubSubEndpointConfig)
  },
  "dialogflowEndpointConfig": {
    object (DialogflowEndpointConfig)
  }
}
필드
연결 유형입니다. 다음은 상호 배타적인 필드 목록입니다. 응답에서 최대 하나의 필드가 설정됩니다.
httpEndpointConfig

object (HttpEndpointConfig)

HTTP 엔드포인트 구성입니다.

appsScriptEndpointConfig

object (AppsScriptEndpointConfig)

Apps Script 배포 구성입니다.

cloudPubSubEndpointConfig

object (CloudPubSubEndpointConfig)

Pub/Sub 주제 구성

dialogflowEndpointConfig

object (DialogflowEndpointConfig)

Dialogflow 구성입니다.

상호 배타적인 필드의 끝입니다.

HttpEndpointConfig

HTTP 엔드포인트 구성입니다.

JSON 표현
{

  "commonUrl": string,
  "perEventEndpointConfig": {
    object (HttpPerEventEndpointConfig)
  }
}
필드
HTTP 엔드포인트 URL 구성입니다. 다음은 상호 배타적인 필드 목록입니다. 응답에서 최대 하나의 필드가 설정됩니다.
commonUrl

string

선택사항입니다. Google Chat에서 모든 상호작용 이벤트를 전송하는 HTTPS URL입니다.

perEventEndpointConfig

object (HttpPerEventEndpointConfig)

선택사항입니다. Google Chat에서 각 유형의 상호작용 이벤트를 전송하는 별도의 HTTPS URL입니다.

상호 배타적인 필드의 끝입니다.

HttpPerEventEndpointConfig

특정 이벤트 유형의 HTTP 엔드포인트 구성입니다.

JSON 표현
{
  "appCommandEndpoint": string,
  "addedToSpaceEndpoint": string,
  "messageEndpoint": string,
  "removedFromSpaceEndpoint": string
}
필드
appCommandEndpoint

string

필수 항목입니다. 앱 명령어 이벤트의 HTTPS URL 엔드포인트입니다.

addedToSpaceEndpoint

string

필수 항목입니다. 스페이스에 추가됨 이벤트의 HTTPS URL 엔드포인트입니다.

messageEndpoint

string

필수 항목입니다. 메시지 이벤트의 HTTPS URL 엔드포인트입니다.

removedFromSpaceEndpoint

string

필수 항목입니다. 스페이스에서 삭제됨 이벤트의 HTTPS URL 엔드포인트입니다.

AppsScriptEndpointConfig

Apps Script 엔드포인트 구성입니다.

JSON 표현
{
  "deploymentId": string,
  "perEventEndpointConfig": {
    object (AppsScriptPerEventEndpointConfig)
  }
}
필드
deploymentId

string

필수 항목입니다. Apps Script 배포 ID입니다.

perEventEndpointConfig

object (AppsScriptPerEventEndpointConfig)

선택사항입니다. Google Chat에서 각 유형의 상호작용 이벤트에 대해 호출하는 Apps Script 함수의 이름입니다. 지정하지 않으면 Chat은 각 이벤트 유형의 기본 함수를 호출합니다.

AppsScriptPerEventEndpointConfig

특정 이벤트 유형의 Apps Script 엔드포인트 구성입니다.

JSON 표현
{
  "appCommandEndpoint": string,
  "addedToSpaceEndpoint": string,
  "messageEndpoint": string,
  "removedFromSpaceEndpoint": string
}
필드
appCommandEndpoint

string

선택사항입니다. 앱 명령어 이벤트의 함수 이름입니다. 지정하지 않으면 기본 onAppCommand 함수 이름이 사용됩니다.

addedToSpaceEndpoint

string

선택사항입니다. 스페이스에 추가됨 이벤트의 함수 이름입니다. 지정하지 않으면 기본 onAddedToSpace 함수 이름이 사용됩니다.

messageEndpoint

string

선택사항입니다. 메시지 이벤트의 함수 이름입니다. 지정하지 않으면 기본 onMessage 함수 이름이 사용됩니다.

removedFromSpaceEndpoint

string

선택사항입니다. 스페이스에서 삭제된 이벤트의 함수 이름입니다. 지정하지 않으면 기본 onRemovedFromSpace 함수 이름이 사용됩니다.

CloudPubSubEndpointConfig

Pub/Sub 엔드포인트 구성입니다.

JSON 표현
{
  "topic": string
}
필드
topic

string

필수 항목입니다. Google Chat에서 모든 상호작용 이벤트를 게시하는 Pub/Sub 주제입니다. 주제는 앱과 동일한 Google Cloud 프로젝트에 있어야 하며 Chat에 주제에 메시지를 게시할 권한이 있어야 합니다. 자세한 내용은 Pub/Sub로 Google Chat 앱 빌드하기를 참고하세요.

형식: projects/{project}/topics/{topic}

DialogflowEndpointConfig

Dialogflow 엔드포인트 구성입니다.

JSON 표현
{
  "dialogflowEdition": enum (DialogflowEdition),
  "agent": string
}
필드
dialogflowEdition

enum (DialogflowEdition)

필수 항목입니다. Dialogflow 버전입니다.

agent

string

선택사항입니다. Dialogflow CX 에이전트 또는 환경 이름입니다. Dialogflow CX에 필요합니다. Dialogflow ES에는 설정하지 마세요.

형식: projects/{project}/locations/{location}/agents/{agent} 또는 projects/{project}/locations/{location}/agents/{agent}/environments/{environment}

DialogflowEdition

Dialogflow 버전 유형입니다.

열거형
DIALOGFLOW_EDITION_UNSPECIFIED 기본값 지정되지 않음.
ES Dialogflow ES 버전 이 버전을 사용하려면 앱과 동일한 Google Cloud 프로젝트에 Dialogflow ES 에이전트가 있어야 합니다. Google Chat은 모든 상호작용 이벤트를 해당 에이전트로 전송합니다.
CX Dialogflow CX 버전 이 버전을 사용하려면 Dialogflow CX 에이전트가 앱과 동일한 Google Cloud 프로젝트에 있어야 하며 agent 필드에 지정되어야 합니다. Google Chat은 모든 상호작용 이벤트를 해당 에이전트로 전송합니다.

AppCommand

앱 명령어 구성입니다.

JSON 표현
{
  "commandType": enum (CommandType),
  "commandId": integer,
  "command": string,
  "displayName": string,
  "description": string,
  "dialogEnabled": boolean,
  "loadingNotificationMessage": string
}
필드
commandType

enum (CommandType)

필수 항목입니다. 이 명령어의 유형입니다.

commandId

integer

필수 항목입니다. 명령어의 ID (1~1000)입니다. 앱 내에서 고유해야 합니다.

command

string

선택사항입니다. 명령어의 이름입니다. SLASH_COMMAND에 필요하며 다른 명령어 유형에는 설정하지 마세요. '/'로 시작해야 합니다(예: '/command').

displayName

string

선택사항입니다. 명령어의 사용자 친화적인 표시 이름입니다. MESSAGE_ACTION 및 QUICK_COMMAND의 경우 필수이며 SLASH_COMMAND의 경우 설정하지 마세요.

description

string

필수 항목입니다. 명령어에 대한 간단한 설명입니다.

dialogEnabled

boolean

선택사항입니다. 이 명령어가 대화상자를 트리거해야 하는지 여부입니다. 지정하지 않을 경우 기본값은 false입니다.

loadingNotificationMessage

string

선택사항입니다. 사용자가 메시지 작업을 트리거할 때 사용자에게 전송되는 알림입니다. MESSAGE_ACTION 명령어에만 지원됩니다.

CommandType

앱 명령어의 유형입니다.

열거형
COMMAND_TYPE_UNSPECIFIED 기본값 지정되지 않음.
SLASH_COMMAND '/' 다음에 명령어 이름을 입력하여 호출하는 명령어입니다. 메시지 텍스트에 추가 인수를 허용할 수 있습니다.
QUICK_COMMAND 메일 작성 컨텍스트 메뉴에서 호출되는 빠른 명령어입니다. 빠른 명령어는 추가 인수를 허용하지 않습니다.
MESSAGE_ACTION 메시지 컨텍스트 메뉴에서 호출되는 명령어입니다.

UrlPattern

링크 미리보기 구성입니다.

JSON 표현
{
  "hostPattern": string,
  "pathPrefix": string
}
필드
hostPattern

string

필수 항목입니다. 일치시킬 도메인입니다. 'subdomain.example.com'과 같은 특정 하위 도메인 또는 전체 도메인을 일치시키려면 별표 (*)를 선행 와일드 카드 문자로 포함합니다. 예를 들어 '*.example.com'은 'https://subdomain.example.com' 및 'https://any.number.of.subdomains.example.com'과 일치합니다.

pathPrefix

string

선택사항입니다. 호스트 패턴에 추가되는 경로 프리픽스입니다. 비워 두면 호스트 패턴의 모든 URL과 일치합니다. 예를 들어 'subdomain.example.com' 호스트 패턴과 페어링하는 경우 'https://subdomain.example.com/path/'로 시작하는 페이지 URL과 일치하도록 'path/'를 지정합니다.

MarkupSyntax

이 Chat 앱의 메시지 텍스트 형식을 지정하는 데 사용되는 마크업 문법입니다.

열거형
MARKUP_SYNTAX_UNSPECIFIED 기본값 지정되지 않음. markup_syntax가 도입되기 전에 생성된 기존 Chat 앱에는 이 값이 있으며 명시적으로 업데이트될 때까지 MARKUP_SYNTAX_CHAT를 사용합니다.
MARKUP_SYNTAX_CHAT Google Chat의 마크업 문법을 사용합니다. 자세한 내용은 https://developers.google.com/workspace/chat/format-messages#format-texts를 참고하세요.
MARKUP_SYNTAX_MARKDOWN 마크다운 문법을 사용합니다. 이 문법은 CommonMark 사양을 기반으로 하며 추가 확장 프로그램이 있습니다. 자세한 내용은 https://developers.google.com/workspace/chat/format-messages#format-texts를 참고하세요.

메서드

get

프로젝트의 Chat 앱 구성을 가져옵니다.

patch

프로젝트의 Chat 앱 구성을 업데이트합니다.