1 // *************************************************************************
3 // * xCALLY Motion - The Omnichannel Contact Center *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved *
6 // *************************************************************************
8 // * Email: info@xcally.com *
9 // * Website: https://www.xcally.com *
11 // *************************************************************************
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. *
17 // *************************************************************************
18 var _0xa66e=['mp3','path','randomstring','aws-sdk','AudioStream','writeFile','Invalid\x20data\x20response\x20from\x20aws\x20Polly!','Polly'];(function(_0x4893b1,_0x1ad5f0){var _0x1981a9=function(_0x2d19fa){while(--_0x2d19fa){_0x4893b1['push'](_0x4893b1['shift']());}};_0x1981a9(++_0x1ad5f0);}(_0xa66e,0xc1));var _0xea66=function(_0x368920,_0x321966){_0x368920=_0x368920-0x0;var _0x3ac9cc=_0xa66e[_0x368920];return _0x3ac9cc;};'use strict';var fs=require('fs');var path=require(_0xea66('0x0'));var BPromise=require('bluebird');var rs=require(_0xea66('0x1'));var AWS=require(_0xea66('0x2'));function pollyResult(_0x1289d3,_0x59b1f2,_0x34ed55){return new BPromise(function(_0x4c4fa8,_0x55fd1d){_0x1289d3['synthesizeSpeech'](_0x59b1f2,function(_0x21a2ac,_0x99eaf4){if(_0x21a2ac){_0x55fd1d(_0x21a2ac);}else if(_0x99eaf4){if(_0x99eaf4[_0xea66('0x3')]instanceof Buffer){fs[_0xea66('0x4')](_0x34ed55,_0x99eaf4['AudioStream'],function(_0x5e7e54){if(_0x5e7e54){_0x55fd1d(_0x5e7e54);}else{_0x4c4fa8();}});}else{_0x55fd1d(new Error(_0xea66('0x5')));}}else{_0x55fd1d(new Error('No\x20data\x20response\x20from\x20aws\x20Polly!'));}});});}module['exports']=function(_0xba373b,_0x128466,_0xd40dc6,_0x37a641,_0x4aed5b,_0x2cc045,_0x123b5d){var _0x291635=new AWS[(_0xea66('0x6'))]({'accessKeyId':_0xba373b,'secretAccessKey':_0x128466,'region':_0xd40dc6});var _0x43a25f={'Text':_0x4aed5b,'TextType':_0x2cc045||'text','OutputFormat':_0xea66('0x7'),'VoiceId':_0x37a641};return pollyResult(_0x291635,_0x43a25f,_0x123b5d);};