애플 스크립트 이란?


image: https://lifetrg.files.wordpress.com/2012/11/1_users_jbkim_dropbox_blog_applescriptalarm_applescript_editor_logo9.png

애플 스크립트 (AppleScript) 는 애플에서 만든 컴퓨터 언어이다. 이 언어를 통해 맥에서 여러가지 어플들을 조정할 수 있다. 이를 통해 물론 제한적이긴 하지만 많은 경우에 반복적인 작업들을 맥한테 시킬 수 있다.


애플 스크립트 편집기


명령들을 컴퓨터한테 시키기 위해서는 명령들을 쓸 수 있는 곳이 필요하다. 바로 AppleScript Editor이 이 장소이다.

image: https://lifetrg.files.wordpress.com/2012/11/0_users_jbkim_dropbox_blog_applescriptalarm_applescripteditor9.png

이렇게 생겼으며 창에 명령어들을 입력한 다음에 Run을 누르면 명령어들이 실행이 된다.


알람을 만든 계기


아침에 음악을 들으면 깨고 싶은 마음이 들었다. 물론 어플을 구입해서 할 수도 있었지만 애플 스크립트를 통해서 꽁자로 할 수 있다고 생각이 들었다. 그리고 음악을 들으면서 깨고 싶으면 또한 음악을 들으며 자고 싶기도 했다.


알람이 작동하는 방법 ( 알고리즘 )


알람이 작동하는 방법은 쉽다.

1. 알람 시간을 입력한다.

2. 음악을 켜다. ( 볼륨을 30으로 맞춘다 )

3. 음악을 30분후에 끄다.

4. 알람 시간에 맞게끔 음악을 켜다. ( 볼륨을 70으로 맞춘다)

다음에 적힌 “알람 명령어들”을 애플 스크립트 편집기에 복사해서 붙이면 된다. 그럼 아래 그림처럼 보인다.

image: https://lifetrg.files.wordpress.com/2012/11/6_users_jbkim_dropbox_blog_applescriptalarm_applescriptalarmeditor2.png


알람 명령어들

on run 

	# 사용자로부터 알람 시간을 얻는다.
	set targetTime to text returned of (display dialog "일어날 시간을 입력하세요:" default answer "" & (current date)) 
	## Corrects the date 
	if (current date) > (date targetTime) then 
		set subTargetTime to (date targetTime) + (24 * hours) 
	else 
		set subTargetTime to (date targetTime) 
	end if 
	display dialog (subTargetTime as string) & "에 깨우겠습니다." 
	# display dialog "Delay " & (subTargetTime - (current date) ) & " seconds." 

	# 음악을 켜다.
	tell application "iTunes" 
		set sound volume to 30	
		play
	end tell

	# 30분 후에 음악을 끄다.
	delay 60 * 30 
	tell application "iTunes" 	
		pause 
	end tell

	# 음악을 알람 시간에 켜다.
	delay subTargetTime - (current date) 
	tell application "iTunes" 
		set sound volume to 70	
		play
	end tell

	# display dialog "Finished" 
end run


알람 실행 모습


애플 스크립트 에디터의 Run을 눌러서 실행하면 이런 창이 나온다.

image: https://lifetrg.files.wordpress.com/2012/11/2_users_jbkim_dropbox_blog_applescriptalarm_applescriptdialog4.png

그 후에 아침에 일어날 시간을 입력하고

image: https://lifetrg.files.wordpress.com/2012/11/3_users_jbkim_dropbox_blog_applescriptalarm_applescriptdialog-24.png

그러면 언제 음악을 틀지가 나온다.

image: https://lifetrg.files.wordpress.com/2012/11/4_users_jbkim_dropbox_blog_applescriptalarm_applescriptdialog-34.png

그리고 나서 30분 기다리면 음악이 꺼지고 알람 시간까지 기다리면 음악이 다시 켜진다.

중간에 멈추고 싶으면 애플 스크립트 에디터의 Stop을 누르면 된다.


알람 프로그램 만드는 방법


여기까지 왔으면 애플 스크립트으로 알람 만드는 방법을 다 익힌 것이다.

하지만 항상 스크립트 파일을 열어서 Run을 누르는것이 귀찮을 수 있다. 만약 그렇다면 Script을 어플 ( 프로그램) 으로 만들어서 실행하면 된다.

프로그램으로 만드는 방법은 쉽다. 애플 스크립트 편집기에서 File->Save as… 을 눌러서 아래에 있는 File Format 에 Application을 골라서 저장하면 된다.

image: https://lifetrg.files.wordpress.com/2012/11/5_users_jbkim_dropbox_blog_applescriptalarm_applescriptsave5.png

그러면 프로그램으로 저장이 된다. 그 후에 저장한 어플을 실행하면 알람 시간을 입력하라는 창이 곧 바로 나온다.

어플을 실행하면 독 ( Dock ) 에 어플이 생긴다. 따라서 끄고 싶다면 자신이 만든 어플을 골라서 끄면 된다.


후기


만약 잘때 음악을 듣고 싶지 않다면 (음악을 켜다.) 부분하고 (30분 후 음악을 끄다.) 부분을 삭제하거나 각 줄 마다 # 을 추가하면 된다.

위에 씌여진 스크립트를 약간만 수정하면 잘때 듣는 음악과 일어날 때 듣는 음악을 들을 수 있다. iTunes에서 일어날때 듣는 playlist과 잘때 듣는 playlist을 만들고 나서 애플 스크립트에는 그 playlist들을 틀어 놓게 하면 된다. 구글에 “iTunes applescript” 으로 검색하면 playlist을 재생하는 방법이 나온다.

iTunes을 사용 안하고 벅스 뮤직 처럼 인터넷을 통해서 음악을 듣는 사람도 있을 것이다. 그 사람들의 경우는 약간 더 어렵다. 방법은 여러가지가 있겠지만 가장 쉬운 방법은 애플 스크립트가 인터넷 창에 재생 버튼을 누르게끔 하는 방법이다. 이에 대한 이야기는 다음에 적겠다.
Advertisements