egirlskey/src/docs/ko-KR/create-plugin.md

3.7 KiB

플러그인 제작

Misskey 웹 클라이언트의 플러그인 기능을 사용하면, 클라이언트를 확장하고 다양한 기능을 추가할 수 있습니다. 여기에서는 플러그인의 제작에 있어서 메타데이터 정의, AiScript API 레퍼런스를 소개합니다.

메타데이터

플러그인은 AiScript의 메타데이터 내장 기능을 사용하며, 기본적으로 플러그인의 메타데이터를 정의해야 합니다.

name

플러그인 이름

author

플러그인 제작자

version

플러그인 버전. 값을 지정해 주세요.

description

플러그인에 대한 설명

permissions

플러그인이 요구하는 권한. Misskey API에 요청할 때 사용됩니다.

config

플러그인의 설정 정보를 나타내는 객체. 키 값에 설정명을, 값에는 다음 속성을 포함할 수 있습니다.

type

설정값의 종류를 나타내는 문자열. 아래 항목들을 사용할 수 있습니다. string number boolean

label

사용자에게 표시할 설정 이름

description

설정의 설명

default

설정의 기본값

API 레퍼런스

AiScript 표준으로 내장되어 있는 API는 소개하지 않습니다.

Mk:dialog(title text type)

대화 상자를 표시합니다. type에는 아래 항목들을 사용할 수 있습니다. info success warn error question 생략하면 info로 설정됩니다.

Mk:confirm(title text type)

확인 대화 상자를 표시합니다. type에는 아래 항목들을 사용할 수 있습니다. info success warn error question 생략하면 question으로 설정됩니다. 사용자가 "OK"를 선택한 경우 true를, "취소"를 선택한 경우 false가 반환됩니다.

Mk:api(endpoint params)

Misskey API에 요청합니다. 첫 번째 인수에 엔드포인트 이름, 두 번째 인수에 매개변수 객체를 전달합니다.

Mk:save(key value)

임의의 값에 임의의 이름을 붙여 영속화합니다. 영속화한 값은 AiScript 컨텍스트가 종료되어도 남아서 Mk:load 작업을 수행합니다.

Mk:load(key)

Mk:save에서 영속화된 지정값을 읽습니다.

Plugin:register_post_form_action(title fn)

게시 양식에 작업을 추가합니다. 첫 번째 인수로 작업 이름, 두 번째 인수로 작업이 선택되었을 때의 콜백 함수를 전달합니다. 콜백 함수에는 첫 번째 인수로 게시 양식 객체가 전달됩니다.

Plugin:register_note_action(title fn)

노트 메뉴에 항목을 추가합니다. 첫 번째 인수로 항목명, 두 번째 인수로 항목이 선택되었을 때의 콜백 함수를 전달합니다. 콜백 함수에는 첫 번째 인수로 대상 노트 객체가 전달됩니다.

Plugin:register_user_action(title fn)

유저 메뉴에 항목을 추가합니다. 첫 번째 인수로 항목명, 두 번째 인수로 항목이 선택되었을 때의 콜백 함수를 전달합니다. 콜백 함수에는 첫 번째 인수로 대상 유저 객체가 전달됩니다.

Plugin:register_note_view_interruptor(fn)

UI에 표시되는 노트 정보를 변경합니다. 콜백 함수는 첫 번째 인수로 해당되는 노트 객체를 전달합니다. 콜백 함수의 반환값으로 노트가 변경됩니다.

Plugin:register_note_post_interruptor(fn)

노트를 게시할 때의 노트 정보를 변경합니다. 콜백 함수는 첫 번째 인수로 해당되는 노트 객체를 전달합니다. 콜백 함수의 반환값으로 노트가 변경됩니다.

Plugin:open_url(url)

첫 번째 인수로 전달된 URL을 브라우저의 새 탭에서 엽니다.

Plugin:config

플러그인의 설정이 저장되는 객체. 플러그인 정의 config에서 설정한 키로 값이 저장됩니다.