SharedIT | 묻고 답하기(AMP)

서버에서 텍스트를 지정된 전화번호로 송신하면 전화를 걸어서 음성으로 읽어주는 서비스

안녕하세요

저희는 IoT 시스템을 구축하는 회사인데요.

센서 이상이 발생할 경우 저희 서버에서 관리자 핸드폰으로 해당 내용을 SMS 발송하는 서비스를 제공하고 있습니다.

SMS서비스는 NHN  Cloud Toast SMS 서비스를 이용하고 있어요. 

그런데, 이 문자 내용을 상대에게 전화를 걸어서 음성으로 읽어주는 서비스를 찾고 있습니다.

음성메시지만 받아서 발송이 가능하다면, 그것은 저희가 TTS 로 문자를 wav 포맷으로 바꿔서 전송해도 됩니다. 

혹시 이런 서비스하는 솔루션이나 업체를 아시는 분은 도움 좀 주시면 감사하겠습니다.  

Tags : 태그가 없습니다.

3개의 답변이 있습니다.

deerokgo
  0 추천 | 2년 이상 전

예전에 ARS 프로그램을 Java 프로그램으로 구현했던 경험은 있습니다.

ARS는 전화 수신의 개념이고, 

말씀하신 내용은 전화 발신의 개념이라고 보면 되겠네요.

동일한 내용으로 구현해보진 않았지만,

Java 코드에서 전화를 거는 부분이 가능 하고,

전화 수신 여부 판단 후 wav 파일을 전송하고,

이후에 전화를 종료하면 됩니다.

오래전에 해본 것이라 코드가 없지만, Git 등에서  샘플 소스 찾아보시면 어렵지 않게 찾으실 수 있을 듯 합니다.

Nanna | 2년 이상 전

네. 제안 감사합니다.  검토해보겠습니다

wansoo
  0 추천 | 2년 이상 전

IoT 시스템을 구축하는 회사라면...

라즈베리파이 같은걸 이용해서 전화걸어 음성을 송출하는 IoT를 만드는 것도 간단하게 가능하지 않을까 하는 생각이 드네요.

라즈베리파이나 컴퓨터에서 전화를 거는 건 모뎀을 하나 구매해서 제어하는 걸로 하면 되겠고요.

모뎀은...

US Robotics가 예전부터 유명했지 싶어 보이고...

아래 링크의 제품을 구매해서 라즈베리 파이나, 서버 컴퓨터에 장착해서 사용하면 되지 않을까 싶고...


https://www.lotteon.com/p/product/LO1588769856?sitmNo=LO1588769856_1588769857&ch_no=100173&ch_dtl_no=1000548&entryPoint=pcs&dp_infw_cd=CHT&gclid=CjwKCAiAh_GNBhAHEiwAjOh3ZPE1dOq1OSp7mXfFVNoJWx6axVOYrelSq6ubn6MfkaE4mRL9m_6e9xoCXegQAvD_BwE

파이썬 같은 개발 언어를 이용해서 모뎀을 제어하고, 문자를 WAV 파일로 변환 시켜서 모뎀을 통해서 송출한다면 기본적인 개발 지식만 있어도 충분히 가능할 거라 생각되고요.

US R5637 모뎀 제어 방법은 인터넷 검색하면 많이 찾을 수 있을 것 같고요.

아래 링크 자료를 참고해도 도움이 많이 될 수 있을 거라 생각되네요.

https://support.usr.com/support/5637/5637-ug/ref_cmd_use.html

wansoo | 2년 이상 전

usr5637 모뎀을 통한 음성 송출 명령은 아래 링크를 참조하면 도움될 수 있을 것 같아 보이네요.

https://support.usr.com/support/5637/5637-ug/ref_voice.html

Nanna | 2년 이상 전

자세한 설명 정말 감사합니다.  

저희 담당자한테 전달해서 제안해 주신 방법 검토해 보겠습니다.

wansoo
  0 추천 | 2년 이상 전

컴퓨터에서 전화하게 하려면 모뎀을 장착해서 모뎀 제어를 통해서 전화를 하면 되겠고요.

요즘 모뎀이 흔하지는 않지만 새로운 제품이 꾸준히 나오고 있기 때문에 해외 배송으로 구매해서 사용하면 될 것 같고요.


TTS 기능은 그러지 않아도 최근에 몇가지를 Test해서 업무에 적용하려고 준비하고 있네요.

최근에 기본 기능만을 갖춘 상태로 개발한 시스템을 업무에 적용시켜서 사용하고 있는게 하나 있는데...

최소 기능만 갖춘 상태로 먼저 업무에 적용한 상태이다 보니, 오류도 잡아야 하고, 부수적인 기능들도 추가 개발해서 효율성을 높여야 하는 상태인데...

음성 안내를 요청해서 몇일 전에 구현 가능한지를 자체 검토해 봤었는데...

구현에 특별히 어려운 점은 없다는 결론을 내렸었네요.

특히나... 요즘은 윈도에 자체적으로 TTS 기능이 내장되어 있다보니, 윈도에 내장된 TTS 기능도 기계적인 느낌은 나지만 나쁘지 않다는 느낌이 들고...

구글, 네이버에서 무료로 제공하는 TTS 라이브러리도 사용할 수 있는데...

정말 매끄럽게 잘 변환 시켜 주더군요.

사람이 글을 읽는것 처럼 변환 시켜 줘서 아주 만족 스럽긴 했지만...

처음 적용하는 개념의 시스템인데 너무 깨긋하게 처리된다면 감동이 오히려 적을수도 있겠다는 느낌이 들고, 인터넷을 통해서 음성 합성 서비스를 받아서 처리해야 해서 인터넷 장애 등으로 제대로 작동하지 않는 상황이 발생할 수도 있을 것 같고... 그리고 지금은 무료로 사용할 수 있지만 어느 순간부터 상용으로 변경되어 버린다면 시스템 변경을 해야 하는 번거로움에, 높은 음질에서 낮은 음질로 떨어져 버렸을때 서비스 불만이 나올 수 있을 것 같다는 생각에 단호하게 윈도 자체 TTS 기능으로 서비스를 구현하는 걸로 결정을 내린 상태이네요.


개발 언어에서 직접 음성 합성 라이버러리를 불러와서 실행하는 방식을 사용해도 되겠고...

아래 링크에서 TTS.EXE 실행 파일을 가져와서 실행시키는 형태로 문자를 음성합성해서 WAV file로 변환해서 사용해도 되겠고요.


https://github.com/YeeYoungHan/winutility/raw/master/Publish/TTS.zip



TTS.zip file 안에 있는 TTS.EXE 를 적당한 폴더에 집어 넣어 두고서 실행해서 사용하면 되겠는데...

tts.exe -l 명령을 줘 보면 사용할 수 있는 음성 리스트를 확인해 볼 수 있고요.

윈도 10에서 TTS.EXE -l 명령으로 실행해 보면 


TTS_MS_KO-KR_HEAMI_11.0

TTS_MS_EN-GB_HAZEL_11.0

TTS_MS_EN-US_ZIRA_11.0


등의 기본적으로 사용할 수 있는 음성 리스트들을 볼 수 있고요.

한글을 음성 변환하려면 KO-KR이 들어가 있는 TTS_MS_KO-KR_HEAMI_11.0 을 사용해야 음성 변환이 제대로 될 수 있겠고...


예를 들어 한글 글자를 음성으로 변환 시키려면...


TTS.EXE TTS_MS_KO-KR_HEAMI_11.0 "안녕하세요. " d:\speak.wav

와 같이 명령을 주면 speak.wav 파일에 지정한 문자에 대한 발성음을 담을 수 있습니다.



구글 및 네이버 음성 합성을 이용해 보려면 아래 링크 내용을 참조해서 파이썬으로 사용해 보세요.

정말 깨끗한 음질로 사람과 구분가지 않을 정도로 잘 발성해 주더군요.


https://wikidocs.net/15213


Nanna | 2년 이상 전

네. 자세한 설명 감사합니다.

저희도 구글 TTS 서비스 테스트했는데,  인터넷을 통해야 한다는 것과 언제 유료 상품으로 변환될지 모른다는 단점 때문에 내부적으로 오픈 소스를 이용하여 TTS 시스템을 구축했습니다.