Get Started
입문 가이드의 튜토리얼은 에이전트리아(Agentria) 입문자를 위한 가장 기본적이면서도 핵심적인 과정을 다룹니다.
본 튜토리얼에서는 지메일(Gmail) 노드를 활성화하고, 구글(Google) 계정을 연동하여 메일을 전송하는 어빌리티(Ability)를 직접 만들고 실행합니다.
사전 준비
시작을 위해, 에이전트리아에서 프로젝트(Project)를 생성한 후, 어빌리티 캔버스(Canvas)로 진입합니다.
캔버스 진입 절차는 3단계 핵심 가이드의 1단계(프로젝트 생성 및 컴포저 선택)를 참고하시기 바랍니다.
본 튜토리얼을 완료하면 다음과 같은 작업을 수행할 수 있습니다.
노드(Node) 추가하기
스타트 노드(Start Node)에서 변수 선언하기
노드 연결하기
지메일 크리덴셜(Credential) 등록하기
구글 계정 연동하기
지메일 노드에서 크리덴셜 설정하기
지메일 노드로 메일 세팅하기
어빌리티 테스트를 통해 워크플로(Workflow) 실행 결과 확인하기
1단계: 구글 OAuth 생성
지메일 노드를 사용하기 위해서는 구글에서 제공하는 인증키를 기반으로 자격증명을 설정해야 합니다.
구글의 액세스 토큰은 OAuth(오픈인증, Open Authorization) 플로우를 거쳐야 발급할 수 있습니다.
구글 OAuth 생성이 처음이라면 구글 크리덴셜 사용 가이드를 참고하시기 바랍니다.
2단계: 지메일 크리덴셜 등록

크리덴셜은 시스템이나 서비스에 접근하기 위해 사용자를 인증하는 데 필요한 자격 증명 정보입니다.
본 튜토리얼 진행을 위해 크리덴셜 등록 시 템플릿을 Google Gmail로 설정합니다.
구글 크리덴셜 사용 가이드를 따라 진행하며 지메일 크리덴셜을 등록했다면 3단계로 넘어갑니다.
3단계: 지메일 노드 추가

캔버스 하단의 +노드 추가(Add Node) 버튼을 클릭하고 사이드바 도구(Tools) 카테고리에서 지메일 노드를 선택해 드래그 앤 드롭(Drag and Drop)으로 배치합니다.
노드 위에 마우스를 올려 편집 아이콘을 눌러 옵션 창을 띄웁니다.
노드의 이름을 Send Gmail Node로 수정합니다.
지메일 노드는 Send, Get, List, Delete 등을 선택할 수 있기 때문에 운영 설정에 따라 노드 명을 수정해서 사용하는 것이 좋습니다.
4단계: 인풋 변수 선언

에이전트리아 캔버스에는 기본적으로 스타트 노드(Start Node)와 엔드 노드(End Node)가 하나씩 배치되어 있습니다.
스타트 노드는 전체 흐름을 시작합니다.
엔드 노드는 전체 흐름을 종료합니다.
스타트 노드를 더블 클릭하면 노드 편집기가 열리며, 여기에서 자료형과 이름, 설명을 설정할 수 있습니다.
본 튜토리얼에서는 메일을 전송해야 하므로, 자료형을 String으로 두고 변수명을 다음과 같이 설정합니다.
ToSubjectMessageBody
변수 선언을 완료했다면 다시 캔버스로 돌아갑니다.
5단계: 엣지로 노드 연결

스타트 노드에서 입력받은 변수를 지메일 노드에서 사용하기 위해서는 엣지를 사용해 두 노드를 연결해야 합니다.
스타트 노드의 오른쪽 아웃 핀(Out-Pin)을 지메일 노드의 왼쪽 인 핀(In-Pin)과 연결합니다.
이렇게 하면 스타트 노드의 입력값이 지메일 노드로 전달됩니다.
6단계: 지메일 노드 설정

지메일 노드를 더블클릭하면 노드 편집기가 열립니다.
노드를 사용하기 위해 등록해 둔 지메일 크리덴셜을 선택해 불러옵니다.
지메일 노드는 Operation 설정을 통해 메일을 어떤 방식으로 사용할지 선택할 수 있습니다.
본 튜토리얼은 메일 전송하기를 목표로 하므로, Send Message를 선택합니다.
메일을 전송하기 위해 스타트 노드에서 받는 이(To), 제목(Subject), 메시지 내용(MessageBody)을 변수로 선언합니다.
입력값을 받아서 사용하기 위해서는 어댑터(Adapter) 변수를 선택해야 합니다.
Show Optional Variables 버튼을 클릭하고 +Add Optional Variables 를 클릭하면 메일에 사용할 수 있는 다양한 옵션 변수를 확인할 수 있습니다.
본 튜토리얼에서 선택할 변수는 다음과 같습니다.
tosubjectmessage_body
지메일 노드는 기본적으로 JSON 형식의 아웃풋을 반환합니다.
7단계: 드래그 앤 드롭으로 변수 바인딩

에이전트리아에서는 코드를 작성하지 않고, 드래그 앤 드롭 방식으로 변수를 손쉽게 불러올 수 있습니다.
입력 변수와 어댑터 변수를 이름에 맞게 연결합니다.
to:
Tosubject:
Subjectmessage_body:
MessageBody
8단계: 노드 테스트 실행

설정을 완료한 후, 편집기 내 인풋 영역의 테스트(TEST) 버튼을 클릭하여 노드를 점검할 수 있습니다.
노드 테스트(Node Test)란 노드 편집기에서 개별적으로 진행할 수 있는 점검 작업입니다.
이를 통해 노드가 올바르게 구성되어 있음을 확인하고 다른 노드와 연결하면 오류를 최소화하고 흐름을 안정적으로 이어 나갈 수 있습니다.
입력창에 받는 이(메일 주소), 제목, 메시지 내용을 입력한 뒤 테스트(Test)를 실행하면, 출력변수인 result 에 전송 정보가 반영됩니다.
브라우저로 지메일에 접속하여 보낸 메일함을 확인하거나 받는 이의 메일함을 확인하면 메일이 정상적으로 전송되었음을 알 수 있습니다.
9단계: 엔드 노드 연결

이제 지메일 전송 결괏값을 엔드 노드로 전달합니다.
다시 캔버스로 돌아와서 지메일 노드와 엔드 노드를 엣지로 연결합니다.
엔드 노드를 더블클릭하여 노드 편집기를 열고, JSON 타입의 Mail 변수를 추가합니다.
지메일 노드에서 아웃풋 값을 담은 result 변수를 선택 또는 드래그 앤 드롭 방식으로 Mail 변수와 연결합니다.
이로써 ‘지메일 전송’ 워크플로가 완성되었습니다.
10단계: 어빌리티 테스트로 워크플로 전체 실행

캔버스 우측 하단에서 테스트 실행(RUN TEST) 버튼을 클릭하여 완성된 전체 워크플로를 실행할 수 있습니다.
입력창에 맞게 받는 이(메일 주소), 제목, 메시지 내용을 입력한 뒤 테스트 실행(Run Test)를 실행하면, Mail 결과에 전송 정보가 표시됩니다.
브라우저로 지메일에 접속하여 보낸 메일함을 확인하거나 받는 이의 메일함을 확인하면 메일이 정상적으로 전송되었음을 알 수 있습니다.
다음 단계

🎉 축하합니다! 에이전트리아를 사용해 ‘지메일 전송’ 워크플로를 완성했습니다.
이제 다양한 운영 설정을 적용해 결과를 확인해 보고, 변수를 추가하며 워크플로를 확장해 보세요.
에이전트리아는 아이디어를 현실로 바꾸는 가능성의 공간입니다.
당신의 상상력으로 워크플로는 무한히 확장될 수 있습니다.