API 레퍼런스
개발 환경에 맞는 문서를 선택하세요.
JavaScript 기반
RhinoJS, GraalJS 기반의 카카오톡봇 개발
Iris
HTTP/WebSocket 기반의 카카오톡봇 개발
단계별 자습서
관심 있는 개발 환경에서 학습을 시작하세요.
JavaScript
JavaScript 기반 카카오톡봇의 학습을 위한 자습서
다양한 언어 기반의 Iris 카카오톡봇 개발을 위한 자습서
Project 객체는 프로젝트에 관한 기능들을 제공하는 객체입니다.
Project
Project 객체의 인스턴스 프로퍼티
MutableConfig
config 프로젝트의 로컬 디렉터리에 저장되는 프로젝트 전용 구성 데이터입니다.
config
java.io.File
directory 프로젝트의 루트 디렉터리에 대한 java.io.File입니다.
directory
ProjectInfo
info 프로젝트에 대한 정보입니다.
info
Boolean
isCompiled 프로젝트의 컴파일 여부입니다.
isCompiled
ProjectLogger
logger 프로젝트의 이벤트 로깅에 사용되는 logger입니다.
logger
Project 객체의 인스턴스 메소드
Number
activeJobs() 프로젝트의 스레드 풀에서 작동 중인 job의 수를 반환합니다.
activeJobs
()
job
void
callFunction(name: String, args: Any[], onException: (throwable: java.lang.Throwable) => Any) 특정 함수의 이름과 인자를 전달받아 호출합니다.
callFunction
(name: String, args: Any[], onException: (throwable: java.lang.Throwable) => Any)
compile(throwException?: Boolean = false) 프로젝트를 컴파일하고 컴파일 성공 여부를 반환합니다. throwException의 값이 true일 경우 컴파일 에러 시 에러를 throw합니다.
compile
(throwException?: Boolean = false)
throwException
true
destroy() 작동 중인 모든 job을 중지합니다. 프로젝트가 컴파일된 상태일 경우, langScope를 해제합니다.
destroy
langScope
getDataDirectory() 프로젝트의 데이터(데이터베이스 파일, 유저 데이터 등)가 저장된 디렉터리에 대한 java.io.File을 반환합니다.
getDataDirectory
Language
getLanguage() 프로젝트에서 사용하는 언어에 대한 Language 객체를 반환합니다.
getLanguage
Any?
getScope() scope 인스턴스를 반환합니다. 프로젝트가 컴파일되지 않은 경우 null을 반환합니다.
getScope
null
isEventCallAllowed(eventId: String) 특정 ProjectEvent의 호출 허용 여부를 반환합니다.
isEventCallAllowed
(eventId: String)
ProjectEvent
loadInfo() 메모리 내 프로젝트 정보 데이터를 무효화하고 로컬 파일에서 다시 로드합니다.
loadInfo
rename(name: String) 프로젝트의 이름을 변경합니다.
rename
(name: String)
requestUpdate() 앱에 프로젝트 UI 업데이트를 요청합니다. 앱이 백그라운드에서 실행 중일 경우 요청은 무시됩니다.
requestUpdate
saveInfo() Project.info 값을 파일에 저장합니다.
saveInfo
Project.info
setEnabled(enabled: Boolean) 프로젝트의 활성화 상태를 설정하고 활성화 상태 변경의 성공 여부를 반환합니다.
setEnabled
(enabled: Boolean)
stopAllJobs() 작동 중인 모든 job을 중지합니다.
stopAllJobs