알짜게시판

irc용 대화방 입장 시 소리 넣기

팁이라긴 뭣할 만큼 간단하지만, 질문/답변 란에 어느 분이 물어보기도 하셨고, 우연히 알아낸 거라 한 번 올려봅니다.

irc채팅폴더/스킨/사용중인스킨폴더/kchat.js 파일을 수정합니다.

kchat.js에서 이 부분을 찾아서

// 입장,퇴장 체크
// 1 : 접속종료
// 2 : 접속
// 3 : 강퇴
// 4 : 영구
// 5 : 비정상
function userinout(nick, fnick, mode)
{ var str;
  switch(mode)
  {
    case '1' : str='퇴장하셨습니다.'; break;
    case '2' : str='입장하셨습니다.'; break;
    case &#039;3&#039; : str=&#039;<font color=RED>&#039; + sw_imgnick(fnick) + &#039;</font> 님에게 강제 퇴장당하셨습니다.&#039;; break;
    case &#039;4&#039; : str=&#039;<font color=RED>&#039; + sw_imgnick(fnick) + &#039;</font> 님에게 영구 퇴장당하셨습니다.&#039;; break;
    case &#039;5&#039; : str=&#039;비정상적으로 종료되었습니다.&#039;; break;
  }
  printf(&#039;<br><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color=RED>&#039;+sw_imgnick(nick)+&#039;</font> 님께서 &#039;+str+&#039;</b><br><br>&#039;);
}

요렇게 바꾸어줍니다.

// 입장,퇴장 체크
// 1 : 접속종료
// 2 : 접속
// 3 : 강퇴
// 4 : 영구
// 5 : 비정상
function userinout(nick, fnick, mode)
{ var str;
  switch(mode)
  {
    case &#039;1&#039; : str=&#039;퇴장하셨습니다.&#039;; break;
    case &#039;2&#039; : str=&#039;<bgsound src="경로/파일명.wav" volume="100" loop=0">&#039; + &#039;입장하셨습니다.&#039;; break;
    case &#039;3&#039; : str=&#039;<font color=RED>&#039; + sw_imgnick(fnick) + &#039;</font> 님에게 강제 퇴장당하셨습니다.&#039;; break;
    case &#039;4&#039; : str=&#039;<font color=RED>&#039; + sw_imgnick(fnick) + &#039;</font> 님에게 영구 퇴장당하셨습니다.&#039;; break;
    case &#039;5&#039; : str=&#039;비정상적으로 종료되었습니다.&#039;; break;
  }
  printf(&#039;<br><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color=RED>&#039;+sw_imgnick(nick)+&#039;</font> 님께서 &#039;+str+&#039;</b><br><br>&#039;);
}

입장 시에만 소리납니다. loop 부분에서 반복 횟수 설정하시면 됩니다.
한데, 경로를 길게 해두면 소리가 안 나오는 것 같더라고요;
대화방 창을 최소화 해두면, 다시 대화방 창을 활성화 했을 때 소리가 나옵니다.


응용해서 새로운 대화가 올라올 때도 소리를 집어넣어 봤습니다.

// 채팅 출력부분
function chattext(nick,str,secret)
{
  str=sw_emoticon(str);
str=sw_autolink(str);
str=sw_text(str);
nick=sw_imgnick(nick);

if(secret)
{
secret=sw_imgnick(secret);
str = &#039;[To : &#039; + secret + &#039; ]&#039; + str;
}

printf( nick + &#039; : &#039; + str +&#039;<br>&#039;);
}

마찬가지로 kchat.js 파일에서 이 부분을 찾아서

// 채팅 출력부분
function chattext(nick,str,secret)
{
  str=sw_emoticon(str);
str=sw_autolink(str);
str=sw_text(str);
nick=sw_imgnick(nick);

if(secret)
{
secret=sw_imgnick(secret);
str = &#039;[To : &#039; + secret + &#039; ]&#039; + str + &#039;<bgsound src="경로/파일명.wav" volume="100" loop=0">&#039;;
}

printf( nick + &#039; : &#039; + str +&#039;<br>&#039; + &#039;<bgsound src="경로/파일명.wav" volume="100" loop=0">&#039;);
}

으로 바꾸어 줍니다.

제 부족한 머리로는 여기까지입니다; 이걸 MSN 메신저 처럼 창이 비활성화 일때만 소리가 나오게 하고 싶은데-_-; 누가 방법 좀 알려주세요!
    • 04-11-18
번호 제목 글쓴이 조회 날짜
191 [FTP] 500 Illegal PORT command. 46,588 09-03
190 [리눅스] .htaccess 를 이용해서 https 이동하기 44,780 08-31
189 [PHP] Imagek 를 이용한 썸네일 생성 45,232 08-26
188 [PHP] 파일 포맷 알아내기 45,006 08-23
187 [그누보드] 1364 : Field 'xxxxx' doesn't have a default value 44,691 08-20
186 [그누보드] 웹폰트 적용하기 45,360 08-13
185 [그누보드] CKEditor 5 플러그인 89,101 08-11
184 [리눅스] 윈도우 프로그램 실행 (centos7, wine 7.0) 44,041 08-09
183 [시크릿DNS] 프록시 혼합 사용 예제 1 234,279 08-07
182 [윈도우] IPv6 켜기, 끄기 43,286 08-03
181 [그누보드] 회원 가입일 기준으로 이용기간 정하기 40,655 07-28
180 [그누보드] sql_fetch, sql_query 안쓰고 직접 mysql 사용하기 40,265 07-24
179 [리눅스] 웹서버 상태 확인 후 자동 재시작 쉘 스크립트 40,465 02-28
178 WinDivert 1753 에러 발생시 40,123 12-20
177 [PHP] PHP 수정시 적용이 안되는 경우 해결 (opcache 중지) 34,766 03-31
176 [맥OS] 마우스 휠 스크롤 방향 윈도우와 일치시키는 방법 25,624 02-28
175 [Ruby] 윈도우에서 pod install 실행시 UTF-8 오류 26,408 02-28
174 [Ruby] Could not open library 'libcurl' 24,778 02-28
173 WinDivert 서비스 종료 38,707 02-08
172 [Android] Error type 3: Activity class {com.?.MainActivity} … 16,144 02-02
171 [윈도우] 윈도우 서버 2016 IIS 중지 8,262 01-29
170 [그누보드] 새 글 정리하기 3,188 01-28
169 WinDivert 오류코드 3,673 01-24
168 [PHP] Curl 을 이용하여 파일 다운로드 4,963 01-19
167 [PHP] Curl 을 이용하여 json 을 post 보내기 5,664 01-19
166 [그누보드] CKEditor 5 플러그인 10 5,148 01-14
165 칼무리 자동실행이 안 되는 원인를 찾았습니다 1 2,161 12-31
164 [PHP] 워드프레스와 그누보드 연동 모듈 2,662 12-27
163 설치하려고 하는 앱이 Microsoft에서 확인된 앱이 아닙니다. 14,152 10-11
162 [Delphi] 권한상승 1,702 09-04
161 [Delphi] Glyph 에 사용할 이미지 생성하기 1,352 09-02