2011-07-30 4 views
0

이것은 한동안 나를 괴롭 히고 있습니다. 나는 내가 실행하는이 ircbot을 가지고 있으며, 나 자신 (그리고 다른 컴퓨터/사용자 몇 명)을 제외한 다른 모든 사용자들로부터 잠글 필요가있는 몇 가지 명령을 가지고있다.Ruby에서 IRCbot에 대한 로그인/관리 시스템을 구현하는 방법은 무엇입니까?

이전에는, 관리자 전용 함수에 액세스 할 수있는 데이터베이스의 닉 목록입니다. 그러나 연결이 끊어지면이 함수에 액세스하여 모든 사용자가 내 별명을 따를 수 있기 때문에 안전하지 않은 것으로 판명되었습니다.

내가 생각한 한 가지 방법은 '로그인'및 '로그 아웃'기능 (로그인 한 닉을 저장하는 방법)을 처리하는 방법이있는 모듈을 사용하는 것이었지만 너무 까다로운 문제였습니다. (별명 변경 문제를 참조하십시오.)

'admin-only'기능을 갖는 강력하고 안전한 방법은 무엇입니까? 현재 DCC를 사용할 방법이 없다고 가정합니다.

답변

1

PRIVMSG의 사용자 호스트 부분을 사용하십시오. 특정 사용자와 일치하는 사용자 호스트 목록 인 userhosts 특성을 가진 User 클래스를 사용합니다. 내 코드는 파이썬이지만 동일한 원칙이 적용되어야합니다.]

내 버전을 보려면 http://code.google.com/p/jsonbot/source/browse/jsb/lib/users.py을 참조하십시오.

+0

나는 그것이 의미가 있으며 물론 닉 변경 사항을 추적하고 종료하는 것도 가치가 있다는 것을 알았습니다. 내가 여전히 주위에 내 머리를 wracking 유일한 것은 (및 기본 '플러그인'클래스를 포함) 필요한 여러 클래스에서 같은 관리 클래스를 사용하는 것입니다? – Mark