mmx900 / ManalithBot

ManalithBot is an open source IRC bot based on the PircBotX Framework.
http://manalith.org
GNU General Public License v3.0
3 stars 2 forks source link

봇 플러그인 작성 방법 개선 #118

Closed mmx900 closed 10 years ago

mmx900 commented 10 years ago
import org.manalith.ircbot.common.SimplePlugin;
import org.manalith.ircbot.annotation.Desc;
import org.manalith.ircbot.annotation.Command;
import org.springframework.stereotype.Component;
import javax.validation.constraints.NotNull;

// 이름은 getName()을 오버라이드 하거나 SimplePlugin.name 리소스에 기재
@Component
public NewPlugin extends SimplePlugin {

    // <setzer> !hello
    // <bot> "안녕하세요!"
    @Command
    public String hello() {
        return "안녕하세요!";
    }

    // 사용법 호출시 "!(접두사) " + "메서드명|별칭 " + "[인자들]" 로 자동 구성
    // 메서드 별칭은 SimplePlugin.cheer.alias 로도 구성 가능
    // 예 : 
    // <setzer> !환호
    // <bot> 사용법 : !환호|cheer [*대상] [채널]
    @Command("환호")
    public String cheer(
        // Desc는 도움말 표시때 사용
        @Desc("대상") @NotNull String user,

        // Desc 항목이 없으면 도움말 호출시 SimplePlugin.cheer.arg1 리소스를 검색
        // 리소스가 없으면 arg1로 표시
        @Desc("채널") String channel
        ) 
    {
        return String.format("%s 만세~", user);
    }

    // @Override @Deprecated public String getHelp() {}

    // 정의되어 있지 않으면 SimplePlugin.description 리소스를 검색
    @Override
    public String getDescription() {
        return "사용자에게 인사를 합니다.";
    }
}

http://pastebin.com/HCiWqPv6