หน้า 1 จากทั้งหมด 1

AGI google TTS

โพสต์โพสต์แล้ว: 14 ก.พ. 2017 14:29
โดย sitt01
ตัวนี้ไม่ต้องทำfile เป็น mp3 แล้วมาเล่นใน asterisk อีกแล้วครับ และสามารถทำงานกับภาษาไทยและภาษาอื่นๆที่ google รองรับ
เครื่องที่จะใช้งานต้องต่อ อินเตอร์ฺเน็ตได้
วิธีการลงโปรแกรม

โปรแกรมที่เกี่ยวข้อง
1.
โค้ด: เลือกทั้งหมด
yum install perl-Crypt-SSLeay.x86_64

2.โปรแกม googletts
โค้ด: เลือกทั้งหมด
cd /var/lib/asterisk/agi-bin/
wget --no-check-certificate https://raw.githubusercontent.com/zaf/a ... gletts.agi
amportal chown

3 format สำหรับการใช้งานใน dailplan เพิ่มคำสั่งใน /etc/asterisk/extensions.conf หรือ vi /etc/asterisk/extensions_custom.conf
โค้ด: เลือกทั้งหมด
exten => 1234,1,agi(googletranslate.agi,"ทดสอบการออกเสียงภาษาไทย",th)

ถ้าจะใช้กับค่าตัวแปร
โค้ด: เลือกทั้งหมด
exten => 1235,n,agi(googletranslate.agi,"${ตัวประที่ต้องการ}",th)

th แทนภาษาไทย ถ้าต้องการ เป็นภาษาอังกฤษให้ใช้ en

หมายเหตุ ถ้าต้องการให้อ่านตัวเลขต้องใช้ตัวอักษรนำก่อนแล้วค่อยใส่ตัวเลข ไม่อย่างนั้นไม่จะไม่อ่าน และ จะอ่านตัวเลขเป็นตัวนะครับ เช่น 1234 มันจะออกเสียง หนึ่งสองสามสี่ ไม่ออกเสียง หนึ่งพันสองร้อยสามสิบสี่
เช่น
exten => 1234,1,agi(googletranslate.agi,"1234 ",th) //จะไม่มีเสียง
exten => 1234,1,agi(googletranslate.agi,"อ่านว่า 1234 ",th)// ..จะออกเสียง อ่านว่าหนึ่งสองสามสี่ ไม่ออกเสียง อ่านว่าหนึ่งพันสองร้อยสามสิบสี่


credit : http://zaf.github.io/asterisk-googletranslate/
http://forums.asterisk.org/viewtopic.php?t=66357
http://www.klaverstyn.com.au/david/wiki ... r_asterisk

ผิดพลาดอย่างไรก็ขออภัยนะครับ ลงไว้กันลืมเช่นเคย

Re: AGI google TTS

โพสต์โพสต์แล้ว: 14 ก.พ. 2017 14:43
โดย sitt01
การ ใช้ google TTS ใน PHP

โค้ด: เลือกทั้งหมด
$agi->exec("AGI","googletts.agi,\"ทดสอบ \",th");


หรือ
โค้ด: เลือกทั้งหมด
$agi->exec("AGI","googletts.agi|\"ทดสอบ \"|th"); //สำหรับversion ใหม่ๆ


ใช้กับตัวแปร
โค้ด: เลือกทั้งหมด
$agi->exec("AGI","googletts.agi,\"คำพูดที่ต้องการ ${ตัวแปรที่กำหนด} \",th");

หรือ
โค้ด: เลือกทั้งหมด
$agi->exec("AGI","googletts.agi|\"คำพูดที่ต้องการ ${ตัวแปรที่กำหนด} \"|th"); //สำหรับversion ใหม่ๆ


ของผม elastix 2.5 ใช้ดำสั่งที่เป็น , ครับ ถ้าไม่ทำงานก็เปลี่ยนจก , เป็น |

Re: AGI google TTS

โพสต์โพสต์แล้ว: 14 ก.พ. 2017 14:50
โดย sitt01
ขออภัย คำสั่งใน หัวข้อแรกผิดนะครับ
ต้องใช googletts.agi แทน googletrasnlate.agi
format สำหรับการใช้งานใน dailplan เพิ่มคำสั่งใน /etc/asterisk/extensions.conf หรือ vi /etc/asterisk/extensions_custom.conf
โค้ด: เลือกทั้งหมด
exten => 1234,1,agi(googletts.agi,"ทดสอบการออกเสียงภาษาไทย",th)

ถ้าจะใช้กับค่าตัวแปร
โค้ด: เลือกทั้งหมด
exten => 1235,n,agi(googletts.agi,"${ตัวประที่ต้องการ}",th)

th แทนภาษาไทย ถ้าต้องการ เป็นภาษาอังกฤษให้ใช้ en

หมายเหตุ ถ้าต้องการให้อ่านตัวเลขต้องใช้ตัวอักษรนำก่อนแล้วค่อยใส่ตัวเลข ไม่อย่างนั้นไม่จะไม่อ่าน และ จะอ่านตัวเลขเป็นตัวนะครับ เช่น 1234 มันจะออกเสียง หนึ่งสองสามสี่ ไม่ออกเสียง หนึ่งพันสองร้อยสามสิบสี่
เช่น
exten => 1234,1,agi(googletts.agi,"1234 ",th) //จะไม่มีเสียง
exten => 1234,1,agi(googletts.agi,"อ่านว่า 1234 ",th)// ..จะออกเสียง อ่านว่าหนึ่งสองสามสี่ ไม่ออกเสียง อ่านว่าหนึ่งพันสองร้อยสามสิบสี่


credit : http://zaf.github.io/asterisk-googletranslate/
http://forums.asterisk.org/viewtopic.php?t=66357
http://www.klaverstyn.com.au/david/wiki ... r_asterisk

ผิดพลาดอย่างไรก็ขออภัยนะครับ ลงไว้กันลืมเช่นเคย

Re: AGI google TTS

โพสต์โพสต์แล้ว: 16 ก.พ. 2017 13:11
โดย sitt01
คำสั่งแปลง code ให้อ่านภาษาไทยได้ เพื่อบางคนดึงข้อมูลมาจากdatabase แล้วไม่เป็นภาษาไทย

โค้ด: เลือกทั้งหมด
str_replace(",","",iconv("tis-620", "utf-8", $ตัวแปรที่ต้องการ));

Re: AGI google TTS

โพสต์โพสต์แล้ว: 23 ต.ค. 2019 13:54
โดย sitt01
โหลดโปรแกรม agi google tts (link ใหม่ ของเก่าเสียแล้ว )
โค้ด: เลือกทั้งหมด
https://github.com/zaf/asterisk-googletts/blob/master/googletts.agi

Re: AGI google TTS

โพสต์โพสต์แล้ว: 28 ต.ค. 2019 10:55
โดย sitt01
ถ้าลงแล้วไม่มีเสียงให้
yum install sox sox-devel sox-devel mpg123 perl-LWP-Protocol-https perl-Crypt-SSLeay perl-LWP-Protocol-https perl-Crypt-SSLeay perl-libwww-perl perl-LWP-Protocol-https perl-HTTP-Message perl-XML-Simple perl-Crypt-SSLeay perl-libwww-perl perl-XML-Simple perl-IO-Socket-SSL.noarch