본문 바로가기

Programming/Tasker 프로필/프로젝트

TTS를 이용한 정보알람 v3.0 - 완전히 새로 구현(멜론순위, 네이버 검색어, 구글캘린더, 날씨) 18.05.19 업데이트

<2018.05.19 업데이트>

  • 멜론 데스크탑 사이트가 https로 변경 되어 대응


<2017.08.19 업데이트>

  • 개편된 멜론 사이트 구조 대응


<2017.04.23 업데이트>

  • 17.04.22일 이후로 개편된 네이버 사이트 구조 대응


<2017.03.27 업데이트>

  • 17.03.27일 이후로 개편된 네이버 사이트 구조 대응


<2017.03.19 업데이트>

  • 17.03.17일 이후 네이버 검색 순위가 null로 표시 되는 문제 수정


<2017.02.05 업데이트>

  • 17.02.02일 이후 네이버 검색 순위가 null로 표시 되는 문제 수정


<2016.12.10 업데이트>

  • 구글 캘린더 정보 파싱에 있던 버그를 수정 했습니다.
  • 정보알람이 실행 될 때마다 현 위치의 날씨 정보를 저장 해 두었다가 지난 일주일간의 현 위치의 온도와 오늘의 온도를 비교 하여 보여 주는 기능을 추가 했습니다.



<2016.06.25 업데이트>

  • 야후 날씨 API지원이 중단 되고 YQL을 이용하도록 변경 되어 거기에 맞게 수정 되었습니다.

  • 네이버 개발자 API에서 검색 순위 API가 제거 되어 네이버 사이트에서 직접 순위를 얻어오도록 수정 했습니다. -> 때문에 네이버 개발자 키는 더이상 불필요 합니다.(설정 씬에서 해당 칸을 그냥 빈칸으로 두셔도 되고 아무거나 입력 하셔도 됩니다. 제거 해 버렸습니다.)

  • 구글 캘린더에서 개인 주소를 이용하여 xml형태로 일정을 받아 볼 수 있었는데 xml형식은 제거 되고 ics 형식만 제공 되도록 변경 되어 이에 맞도록 수정 했습니다.(설정에서 비공개 주소는 여전히 넣어야 합니다.)

  • TTS로 읽어 줄지 말지 여부를 설정창에서 토글 할 수 있도록 추가 했습니다.(디폴트는 TTS로 읽어주는 기능이 꺼진 상태 입니다.)

  • 기존에는 JavaScriptlet으로 태스크에 스크립트 내용을 포함 시켰었는데 특정 기능이 여러 프로젝트에서 쓰이는 경우 이를 중복해서 들고 있어야 해서 유지보수할때 불편함을 느껴 별도의 파일로 분리 하였습니다. 
    파일 시스템에 접근 해야 하기 때문에 기존보다 약간 느릴 수는 있지만 요즘은 폰 성능들이 좋아져서 큰 차이가 없는듯 합니다.
  • 첨부된 Script폴더를 Tasker 하위 폴더에 넣고 해당 프로젝트를 import 해주세요.
    (Tasker/Script/...)

 



<13.03.05 변경사항>


 

- 멜론 순위정보 상세 보기 시 정규표현식의 오타로 인해 표시되지 않는 앨범명이 생기던것 수정

- 위치정보를 받아올때 이상한 지역의 위치정보가 받아지던 문제 수정

- 씬의 날씨부분에 날씨정보를 받아온 위치명 표시 되도록 수정

- 수신 된 날씨 정보의 위치명을 한글로 표시되도록 수정

- 메모를 지정한 후 지웠을때에도 메모창이 뜨는 버그 수정

 




<13.03.03 변경사항>

 

- 기존에 올렸었던 정보알람을 JavaScript로 완전히 새로 구현 하였습니다.

- 구글 캘린더에서 오늘의 일정을 받아오는 갯수에 제한이 없습니다.

- 구글캘린더주소와 네이버 개발자 키 입력을 UI로 처리하여 쉽게 만들었습니다.

- 밤사이 부재중 문자, 전화 프로필을 제거 했습니다.(부정확하고 프로젝트를 복잡하게만 만드는듯 하여 제거 했습니다.)

- 메모기능을 추가하여 메모를 입력하면 알람이 울릴때 메모 씬도 따로 뜨고 tts 가 마지막에 메모 내용을 읽어 주도록 했습니다.

- 날씨 정보 수신을 yahoo 날씨 api를 이용 하였습니다.

- 멜론 top100 순위 정보를 추가 했습니다.

- 날씨 창 클릭 시 웹뷰로 네이버 날씨 화면을 보여주도록 했습니다.

- 정보 수신 속도가 빨라졌으므로 알람이 울리는 순간 정보를 수집하고 알람이 종료되면 씬을 띄우도록 수정 했습니다.

- 정보 수신 실패시 수신 실패한 내역을 뜨도록 했습니다.

- 메인 화면에서 정보알람 프로젝트를 켜고 끌 수 있도록 구현 했습니다.

 

 

 

<프로젝트 설명>

 

시스템의 기본 알람이 울리는 순간 네이버 검색어, 멜론 순위, 구글 캘린더, 오늘/내일의 날씨 를 수신하여

알람이 종료 될때 씬을 띄워 정보를 보여주고, TTS 로 읽어 줍니다.

미리 지정한 메모가 있으면 이 메모를 함께 보여주며 읽어 줍니다.

 

 

(tts는 이런식으로 말 합니다.

'주인님 2월2일 목요일 하루를 시작합니다. 오늘 날씨는 맑음이며 현재온도는 x도 이고 오늘 최저/최고 온도는 -12도에서 -1도 이며 습도는 x퍼센트 입니다.

오늘의 일정은 tasker 카페 방문하기, tasker카페 댓글 남기기 등이 있습니다.

입력하신 메모는 XXXXX 입니다. (추가로 메모 내용을 설정 했을 경우)

즐거운 하루 되세요.')




<정보알람 메인화면 - 켜기/끄기/설정 등을 할 수 있음>


 

 

 

 

<정보알람 설정 화면 - 구글캘린더 비공개 주소, 메모 등을 작성 할 수 있음>



 

 

 

 

 

<정보 출력 화면>

 


 

 

 

 

 

<정보 수신 실패 출력 화면>

 

 

 

 

 

 

 

<멜론 순위를 클릭 했을 때 화면>

 

 

 

 

 

 

<메모 내용을 지정 했을 경우 알람이 울릴때 함께 뜨는 화면>

 

 

 

 

 

 

 

<날씨를 클릭 했을 때 뜨는 화면>

 

 

 

 

 

 

****설치 법*****


1. 기존 버전 사용자 분은 기존의 '정보알람' project를 삭제 해 주세요.(새로 사용 하시는 분들은 2번부터 진행 하시면 됩니다.)


2. 첨부 파일의 압축을 풀어 정보알람v3.0 project를 tasker에서 import하고 Script폴더를 Tasker하위 폴더(Tasker/Script/...)에 넣어 둡니다.


3. '정보알람' task를 바탕화면에 바로가기로 만듭니다.


4. '정보알람' 바로가기를 실행하여 '설정'을 클릭합니다.


5. '설정' 창의 네이버 개발자 키(네이버에 '네이버 개발자 센터' 를 치신 후 들어가셔서 개인 key를 발급 받으신 후 입력)와 본인의 구글 캘린더 비공개 주소를 입력합니다.


6. '설정' 창의 메모는 내용을 입력하시면 알람이 울릴때 메모 씬도 같이 뜨고, 입력하시지 않거나 입력했다가 지우면 뜨지 않습니다.


7. Tasker에 들어가서 task 탭으로 간 뒤 '정보알람_정보 말하기', '정보알람_실패 말하기' 의 say를 클릭하여 tts 엔진을 본인의 폰에 있는 tts 엔진으로 수정 합니다.(삼성폰이면 수정 할 필요 없을듯 합니다.)


8. 설정이 끝나면 기본 알람 어플에서 지정 한 알람이 울리게 되면 모든 활동이 이루어 집니다.


9. '정보알람' 화면에서 '현재 정보 보기'를 클릭하시면 멜론순위, 네이버 검색어, 현위치의 날씨, 오늘의 일정을 보여주는 씬이 뜨고 tts는 작동하지 않습니다.(지금 바로 현재의 날씨 등을 보고 싶을 때를 위해 만들었습니다. 알람과는 상관 없이 작동 합니다.)

 

 

<Task 화면>

 

 

 

 

<구글 캘린더의 본인 xml 파일 경로 얻기>

 



 

 

 

 


<네이버 개발자 key 받기>











* 기기에따라 Alarm Clock프로필과 Alarm Done 프로필이 동작 하지 않는 경우가 있습니다.(서드파티 알람 어플리케이션을 써도 그렇습니다.) 이런 경우 Profile탭에서 "정보알람_알람" , "정보알람_정보출력" 두 프로필을 수동으로 off시키시고 그 위의 "정보알람_아침1", "정보알람_아침2" 프로필을 수동으로 켠 후 시간을 직접 지정 하셔서 시간이 되면 정보를 수신하고 출력 하도록 하는 방법이 있습니다.





*기존에 사용 하셨던 분들도 "정보알람" 태스크를 한번 실행해 주세요.


정보알람.zip