Built motion from commit a679711e.|2.6.15
[motion2.git] / server / api / voiceRecording / voiceRecording.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
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.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x7605=['merge','VIRTUAL','options','VoiceRecording','includeAll','include','findAll','rows','show','params','keys','catch','create','body','update','find','describe','download','uniqueid','value','%s.cypher','secrets','recording','existsSync','Sequelize','VoiceRecording\x20not\x20found','filename','extname','unlink','message','../../components/encryptor','sequelize','MD5','push','$and','info','isNil','File:\x20\x22','unlinkSync','.cypher','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','listBuckets','upload','TranscribeService','startTranscriptionJob','basename','readFileSync','[RUNTRANSCRIPT][%d]\x20Voice\x20recording\x20uploaded\x20in\x20bucket\x20%s\x20(%s)','Location','bucket','Bucket','location','[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created','TranscriptionJob','TranscriptionJobName','transcribeName','transcribeStatus','TranscriptionJobStatus','runTranscribe','findOne','ValidationError','Setting','transcribe','transcribeAccountId','language','Transcribe\x20not\x20configured','runSentiment','sentiment','sentimentAccountId','sentimentRegion','Sentiment\x20Analysis\x20not\x20configured','CloudProvider','data1','data2','Cloud\x20Provider\x20not\x20configured','Buckets','Name','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available','transcribeRegion','[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested','IN_PROGRESS','tempSentiment','updateAttributes','fileText','root','/server/files/transcribes/transcribe_','.txt','Transcript\x20not\x20available','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','path','ejs','fs-extra','lodash','squel','crypto','desk.js','papaparse','aws-sdk','uuid/v4','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json','offset','undefined','limit','count','set','Content-Range','reject','then','destroy','end','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','differenceBy','format','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','pick','filter','where'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0x7605,0x185));var _0x5760=function(_0x29a3a8,_0x2cf79a){_0x29a3a8=_0x29a3a8-0x0;var _0x35410c=_0x7605[_0x29a3a8];return _0x35410c;};'use strict';var emlformat=require(_0x5760('0x0'));var rimraf=require(_0x5760('0x1'));var zipdir=require(_0x5760('0x2'));var jsonpatch=require(_0x5760('0x3'));var rp=require(_0x5760('0x4'));var moment=require(_0x5760('0x5'));var BPromise=require(_0x5760('0x6'));var Mustache=require('mustache');var util=require('util');var path=require(_0x5760('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x5760('0x8'));var fs=require('fs');var fs_extra=require(_0x5760('0x9'));var _=require(_0x5760('0xa'));var squel=require(_0x5760('0xb'));var crypto=require(_0x5760('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x5760('0xd'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x5760('0xe'));var AWS=require(_0x5760('0xf'));var uuidv4=require(_0x5760('0x10'));var Redis=require(_0x5760('0x11'));var authService=require(_0x5760('0x12'));var qs=require(_0x5760('0x13'));var as=require(_0x5760('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x5760('0x15'));var utils=require(_0x5760('0x16'));var config=require(_0x5760('0x17'));var licenseUtil=require(_0x5760('0x18'));var db=require(_0x5760('0x19'))['db'];function respondWithStatusCode(_0x2087a9,_0x49bed7){_0x49bed7=_0x49bed7||0xcc;return function(_0x42d4e2){if(_0x42d4e2){return _0x2087a9['sendStatus'](_0x49bed7);}return _0x2087a9[_0x5760('0x1a')](_0x49bed7)['end']();};}function respondWithResult(_0x26857f,_0x498902){_0x498902=_0x498902||0xc8;return function(_0x55fd3c){if(_0x55fd3c){return _0x26857f[_0x5760('0x1a')](_0x498902)[_0x5760('0x1b')](_0x55fd3c);}};}function respondWithFilteredResult(_0x33c445,_0x2b4838){return function(_0x2f8793){if(_0x2f8793){var _0x4c1e66=typeof _0x2b4838[_0x5760('0x1c')]===_0x5760('0x1d')&&typeof _0x2b4838[_0x5760('0x1e')]===_0x5760('0x1d');var _0x57b724=_0x2f8793[_0x5760('0x1f')];var _0x1f9745=_0x4c1e66?0x0:_0x2b4838[_0x5760('0x1c')];var _0x168f2a=_0x4c1e66?_0x2f8793[_0x5760('0x1f')]:_0x2b4838[_0x5760('0x1c')]+_0x2b4838[_0x5760('0x1e')];var _0x141ebc;if(_0x168f2a>=_0x57b724){_0x168f2a=_0x57b724;_0x141ebc=0xc8;}else{_0x141ebc=0xce;}_0x33c445[_0x5760('0x1a')](_0x141ebc);return _0x33c445[_0x5760('0x20')](_0x5760('0x21'),_0x1f9745+'-'+_0x168f2a+'/'+_0x57b724)['json'](_0x2f8793);}return null;};}function patchUpdates(_0x62366f){return function(_0x28ac25){try{jsonpatch['apply'](_0x28ac25,_0x62366f,!![]);}catch(_0x484e38){return BPromise[_0x5760('0x22')](_0x484e38);}return _0x28ac25['save']();};}function saveUpdates(_0x4e2367,_0x5ad304){return function(_0x23d58c){if(_0x23d58c){return _0x23d58c['update'](_0x4e2367)[_0x5760('0x23')](function(_0xc13be){return _0xc13be;});}return null;};}function removeEntity(_0x3f37aa,_0x3be85a){return function(_0x462e95){if(_0x462e95){return _0x462e95[_0x5760('0x24')]()['then'](function(){_0x3f37aa[_0x5760('0x1a')](0xcc)[_0x5760('0x25')]();});}};}function handleEntityNotFound(_0x3a9c8c,_0x53b5d9){return function(_0xeef10c){if(!_0xeef10c){_0x3a9c8c['sendStatus'](0x194);}return _0xeef10c;};}function handleError(_0x4a68e1,_0x3229fb){_0x3229fb=_0x3229fb||0x1f4;return function(_0x2ef888){logger['error'](_0x2ef888[_0x5760('0x26')]);if(_0x2ef888[_0x5760('0x27')]){delete _0x2ef888[_0x5760('0x27')];}_0x4a68e1[_0x5760('0x1a')](_0x3229fb)[_0x5760('0x28')](_0x2ef888);};}exports[_0x5760('0x29')]=function(_0x2efd34,_0x268f26){var _0x27d2ff={},_0x2533e7={},_0x5c5c5e={'count':0x0,'rows':[]};var _0x56d97f=_[_0x5760('0x2a')](db['VoiceRecording'][_0x5760('0x2b')],function(_0x1d62a8){return{'name':_0x1d62a8[_0x5760('0x2c')],'type':_0x1d62a8[_0x5760('0x2d')][_0x5760('0x2e')]};});_0x2533e7[_0x5760('0x2f')]=_[_0x5760('0x30')](_[_0x5760('0x2a')](_0x56d97f,_0x5760('0x27')),[_0x5760('0x31')]);_0x2533e7[_0x5760('0x32')]=_['keys'](_0x2efd34[_0x5760('0x32')]);_0x2533e7[_0x5760('0x33')]=_['intersection'](_0x2533e7[_0x5760('0x2f')],_0x2533e7['query']);_0x27d2ff[_0x5760('0x34')]=_[_0x5760('0x35')](_0x2533e7[_0x5760('0x2f')],qs[_0x5760('0x36')](_0x2efd34[_0x5760('0x32')][_0x5760('0x36')]));_0x27d2ff[_0x5760('0x34')]=_0x27d2ff[_0x5760('0x34')][_0x5760('0x37')]?_0x27d2ff[_0x5760('0x34')]:_0x2533e7[_0x5760('0x2f')];if(!_0x2efd34[_0x5760('0x32')][_0x5760('0x38')](_0x5760('0x39'))){_0x27d2ff[_0x5760('0x1e')]=qs[_0x5760('0x1e')](_0x2efd34[_0x5760('0x32')][_0x5760('0x1e')]);_0x27d2ff[_0x5760('0x1c')]=qs[_0x5760('0x1c')](_0x2efd34['query'][_0x5760('0x1c')]);}_0x27d2ff['order']=qs['sort'](_0x2efd34['query']['sort']);_0x27d2ff['where']=qs[_0x5760('0x33')](_[_0x5760('0x3a')](_0x2efd34[_0x5760('0x32')],_0x2533e7[_0x5760('0x33')]),_0x56d97f);if(_0x2efd34[_0x5760('0x32')][_0x5760('0x3b')]){_0x27d2ff[_0x5760('0x3c')]=_[_0x5760('0x3d')](_0x27d2ff[_0x5760('0x3c')],{'$or':_[_0x5760('0x2a')](_0x56d97f,function(_0x203955){if(_0x203955[_0x5760('0x2d')]!==_0x5760('0x3e')){var _0x3537bb={};_0x3537bb[_0x203955['name']]={'$like':'%'+_0x2efd34['query'][_0x5760('0x3b')]+'%'};return _0x3537bb;}})});}_0x27d2ff=_[_0x5760('0x3d')]({},_0x27d2ff,_0x2efd34[_0x5760('0x3f')]);var _0xd047af={'where':_0x27d2ff['where']};return db[_0x5760('0x40')][_0x5760('0x1f')](_0xd047af)[_0x5760('0x23')](function(_0x263014){_0x5c5c5e['count']=_0x263014;if(_0x2efd34['query'][_0x5760('0x41')]){_0x27d2ff[_0x5760('0x42')]=[{'all':!![]}];}return db['VoiceRecording'][_0x5760('0x43')](_0x27d2ff);})[_0x5760('0x23')](function(_0x3c4b28){_0x5c5c5e[_0x5760('0x44')]=_0x3c4b28;return _0x5c5c5e;})[_0x5760('0x23')](respondWithFilteredResult(_0x268f26,_0x27d2ff))['catch'](handleError(_0x268f26,null));};exports[_0x5760('0x45')]=function(_0x1ecabd,_0x32c584){var _0x15df76={'raw':![],'where':{'id':_0x1ecabd[_0x5760('0x46')]['id']}},_0x72b20d={};_0x72b20d[_0x5760('0x2f')]=_[_0x5760('0x47')](db[_0x5760('0x40')][_0x5760('0x2b')]);_0x72b20d['query']=_[_0x5760('0x47')](_0x1ecabd[_0x5760('0x32')]);_0x72b20d['filters']=_['intersection'](_0x72b20d['model'],_0x72b20d[_0x5760('0x32')]);_0x15df76[_0x5760('0x34')]=_['intersection'](_0x72b20d[_0x5760('0x2f')],qs[_0x5760('0x36')](_0x1ecabd[_0x5760('0x32')][_0x5760('0x36')]));_0x15df76['attributes']=_0x15df76[_0x5760('0x34')][_0x5760('0x37')]?_0x15df76[_0x5760('0x34')]:_0x72b20d[_0x5760('0x2f')];if(_0x1ecabd[_0x5760('0x32')][_0x5760('0x41')]){_0x15df76[_0x5760('0x42')]=[{'all':!![]}];}_0x15df76=_[_0x5760('0x3d')]({},_0x15df76,_0x1ecabd[_0x5760('0x3f')]);return db[_0x5760('0x40')]['find'](_0x15df76)['then'](handleEntityNotFound(_0x32c584,null))[_0x5760('0x23')](respondWithResult(_0x32c584,null))[_0x5760('0x48')](handleError(_0x32c584,null));};exports[_0x5760('0x49')]=function(_0x11ac76,_0x168ea9){return db[_0x5760('0x40')][_0x5760('0x49')](_0x11ac76[_0x5760('0x4a')],{})[_0x5760('0x23')](respondWithResult(_0x168ea9,0xc9))['catch'](handleError(_0x168ea9,null));};exports[_0x5760('0x4b')]=function(_0x4ef0cf,_0x3effca){if(_0x4ef0cf[_0x5760('0x4a')]['id']){delete _0x4ef0cf[_0x5760('0x4a')]['id'];}return db[_0x5760('0x40')][_0x5760('0x4c')]({'where':{'id':_0x4ef0cf['params']['id']}})[_0x5760('0x23')](handleEntityNotFound(_0x3effca,null))[_0x5760('0x23')](saveUpdates(_0x4ef0cf[_0x5760('0x4a')],null))[_0x5760('0x23')](respondWithResult(_0x3effca,null))[_0x5760('0x48')](handleError(_0x3effca,null));};exports[_0x5760('0x4d')]=function(_0x987ba1,_0xe2e1e2){return db['VoiceRecording'][_0x5760('0x4d')]()['then'](respondWithResult(_0xe2e1e2,null))['catch'](handleError(_0xe2e1e2,null));};exports[_0x5760('0x4e')]=function(_0x106f38,_0x430adf,_0x4255ab){var _0x2df708=require('../../components/encryptor');var _0x2e3b8d=![];var _0x2ebc5a={};if(_0x106f38[_0x5760('0x32')][_0x5760('0x2d')]&&_0x106f38['query'][_0x5760('0x2d')]===_0x5760('0x4f')){_0x2ebc5a[_0x5760('0x4f')]=_0x106f38['params']['id'];}else{_0x2ebc5a['id']=_0x106f38[_0x5760('0x46')]['id'];}return db[_0x5760('0x40')][_0x5760('0x4c')]({'where':_0x2ebc5a,'attributes':['id',_0x5760('0x50')],'raw':!![]})['then'](handleEntityNotFound(_0x430adf,null))['then'](function(_0x56bba9){if(_0x56bba9){var _0x3b279a=_0x56bba9[_0x5760('0x50')];var _0x2d4112=util[_0x5760('0x31')](_0x5760('0x51'),_0x3b279a);if(fs['existsSync'](_0x2d4112)){_0x2e3b8d=!![];return _0x2df708['decryptFile'](_0x2d4112,_0x3b279a,config[_0x5760('0x52')][_0x5760('0x53')])[_0x5760('0x23')](function(){return _0x56bba9;});}return _0x56bba9;}})['then'](function(_0x3e2d78){if(_0x3e2d78){var _0x777fae=_0x3e2d78[_0x5760('0x50')];if(!fs[_0x5760('0x54')](_0x777fae)){throw new db[(_0x5760('0x55'))]['ValidationError'](_0x5760('0x56'));}if(_0x3e2d78[_0x5760('0x57')]){return _0x430adf['download'](_0x777fae,_0x3e2d78[_0x5760('0x57')]+path[_0x5760('0x58')](_0x777fae),function(){if(_0x2e3b8d){fs[_0x5760('0x59')](_0x777fae);}});}else{return _0x430adf[_0x5760('0x4e')](_0x777fae,function(_0x2c2e97){if(_0x2e3b8d){fs[_0x5760('0x59')](_0x777fae);}});}}})['catch'](function(_0x44712f){if(_0x44712f[_0x5760('0x5a')]===_0x5760('0x56')){_0x430adf[_0x5760('0x1a')](0x194)['send']('Not\x20found');}else{return handleError(_0x430adf,null);}});};exports['downloads']=function(_0x3673c5,_0x280176,_0x38e0d6){var _0x2a5f0f=require(_0x5760('0x5b'));var _0x54127e=![];var _0x2bb43f={'$and':[db[_0x5760('0x5c')][_0x5760('0x3c')](db['sequelize']['fn'](_0x5760('0x5d'),db[_0x5760('0x5c')]['col'](_0x5760('0x4f'))),_0x3673c5[_0x5760('0x32')]['token'])]};if(_0x3673c5['query'][_0x5760('0x2d')]&&_0x3673c5[_0x5760('0x32')][_0x5760('0x2d')]==='uniqueid'){_0x2bb43f['$and'][_0x5760('0x5e')]({'uniqueid':_0x3673c5['params']['id']});}else{_0x2bb43f[_0x5760('0x5f')][_0x5760('0x5e')]({'id':_0x3673c5[_0x5760('0x46')]['id']});}return db['VoiceRecording'][_0x5760('0x4c')]({'where':_0x2bb43f,'attributes':['id',_0x5760('0x50')],'raw':!![]})[_0x5760('0x23')](handleEntityNotFound(_0x280176,null))[_0x5760('0x23')](function(_0x45b162){if(_0x45b162){var _0x2fde1b=util[_0x5760('0x31')](_0x5760('0x51'),_0x45b162[_0x5760('0x50')]);if(fs['existsSync'](_0x2fde1b)){_0x54127e=!![];return _0x2a5f0f['decryptFile'](_0x2fde1b,_0x45b162[_0x5760('0x50')],config[_0x5760('0x52')][_0x5760('0x53')])[_0x5760('0x23')](function(){return _0x45b162;});}return _0x45b162;}})[_0x5760('0x23')](function(_0x5ef80c){if(_0x5ef80c){if(!fs[_0x5760('0x54')](_0x5ef80c['value'])){throw new db[(_0x5760('0x55'))]['ValidationError'](_0x5760('0x56'));}if(_0x5ef80c['filename']){return _0x280176[_0x5760('0x4e')](_0x5ef80c[_0x5760('0x50')],_0x5ef80c[_0x5760('0x57')]+path['extname'](_0x5ef80c[_0x5760('0x50')]),function(){if(_0x54127e){fs[_0x5760('0x59')](_0x5ef80c[_0x5760('0x50')]);}});}else{return _0x280176[_0x5760('0x4e')](_0x5ef80c['value'],function(_0x5d9229){if(_0x54127e){fs[_0x5760('0x59')](_0x5ef80c[_0x5760('0x50')]);}});}}})['catch'](handleError(_0x280176,null));};exports[_0x5760('0x24')]=function(_0x28a9fb,_0x355484){return db['VoiceRecording'][_0x5760('0x4c')]({'where':{'id':_0x28a9fb[_0x5760('0x46')]['id']}})[_0x5760('0x23')](function(_0x4b51cd){if(_['isNil'](_0x4b51cd)){throw new ReferenceError('Entity\x20not\x20found');}return _0x4b51cd;})['then'](function(_0x501718){var _0x2b8a2f=_0x501718[_0x5760('0x50')];logger[_0x5760('0x60')]('cancellazione\x20fisica\x20documento\x20%s',_0x2b8a2f);if(!_[_0x5760('0x61')](_0x501718[_0x5760('0x50')])&&fs[_0x5760('0x54')](_0x2b8a2f)){logger['info'](_0x5760('0x62')+_0x2b8a2f+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs[_0x5760('0x63')](_0x2b8a2f);}_0x2b8a2f=_0x2b8a2f+_0x5760('0x64');if(!_[_0x5760('0x61')](_0x501718[_0x5760('0x50')])&&fs['existsSync'](_0x2b8a2f)){logger[_0x5760('0x60')]('File:\x20\x22'+_0x2b8a2f+_0x5760('0x65'));fs['unlinkSync'](_0x2b8a2f);}return _0x501718;})['then'](function(_0x165749){if(!_0x165749)throw new InternalError();return _0x165749['destroy']();})[_0x5760('0x23')](function(){_0x355484[_0x5760('0x1a')](0xcc)[_0x5760('0x25')]();})[_0x5760('0x48')](handleError(_0x355484,null));};function getBucketslist(_0x646f08,_0x43de31,_0x545cf8){return new Promise(function(_0x3c761f,_0x173499){var _0x5a190e=new AWS['S3']({'accessKeyId':_0x43de31,'secretAccessKey':_0x646f08,'region':_0x545cf8});_0x5a190e[_0x5760('0x66')]({},function(_0x49aa14,_0x2d4432){if(_0x49aa14){return _0x173499(_0x49aa14);}else{return _0x3c761f(_0x2d4432);}});});}function createBucket(_0x3af805,_0x1aa047,_0xa5ef45,_0x2c0481){return new Promise(function(_0x578744,_0x4c79ef){var _0x5e5d1f=new AWS['S3']({'accessKeyId':_0x1aa047,'secretAccessKey':_0x3af805,'region':_0xa5ef45});_0x5e5d1f['createBucket']({'Bucket':_0x2c0481},function(_0x52051b,_0x59a732){if(_0x52051b){return _0x4c79ef(_0x52051b);}else{return _0x578744(_0x59a732);}});});}function uploadFile(_0x2473e6,_0x3b074d,_0x2c5de0,_0x43621d,_0x16f21e,_0x526dd7){return new Promise(function(_0x23f003,_0x1e61fc){var _0xeaa9d5=new AWS['S3']({'accessKeyId':_0x3b074d,'secretAccessKey':_0x2473e6,'region':_0x2c5de0});_0xeaa9d5[_0x5760('0x67')]({'Bucket':_0x43621d,'Key':_0x16f21e,'Body':_0x526dd7},function(_0x5dac88,_0x5e8271){if(_0x5dac88){return _0x1e61fc(_0x5dac88);}else{return _0x23f003(_0x5e8271);}});});}function startTranscribe(_0x9f2f8e,_0x180ed7,_0xfd50d0,_0x4c8d34,_0x745036,_0x21073b){return new Promise(function(_0x3a8ed6,_0xaaf360){var _0x748fc0=new AWS[(_0x5760('0x68'))]({'accessKeyId':_0x180ed7,'secretAccessKey':_0x9f2f8e,'region':_0xfd50d0});_0x748fc0[_0x5760('0x69')]({'TranscriptionJobName':_0x4c8d34,'LanguageCode':_0x745036,'Media':{'MediaFileUri':_0x21073b}},function(_0x3362bf,_0x599bc1){if(_0x3362bf){return _0xaaf360(_0x3362bf);}else{return _0x3a8ed6(_0x599bc1);}});});}function transcribe(_0x5daf38,_0x5c1b0d,_0x1ac10e,_0x3b47d7,_0x30e6a1,_0x5fa45f,_0x5236b4){return new Promise(function(_0x26fffc,_0x32ae59){var _0x99a90e={};logger[_0x5760('0x60')](util[_0x5760('0x31')]('[RUNTRANSCRIPT][%d]\x20Starting\x20voice\x20recording\x20upload\x20in\x20bucket\x20%s',_0x5daf38,_0x30e6a1));return uploadFile(_0x5c1b0d,_0x1ac10e,_0x3b47d7,_0x30e6a1,path[_0x5760('0x6a')](_0x5fa45f),fs[_0x5760('0x6b')](_0x5fa45f))['then'](function(_0x27c000){logger[_0x5760('0x60')](util[_0x5760('0x31')](_0x5760('0x6c'),_0x5daf38,_0x30e6a1,_0x27c000[_0x5760('0x6d')]));_0x99a90e[_0x5760('0x6e')]=_0x27c000[_0x5760('0x6f')];_0x99a90e[_0x5760('0x70')]=_0x27c000[_0x5760('0x6d')];logger[_0x5760('0x60')](util[_0x5760('0x31')](_0x5760('0x71'),_0x5daf38));return startTranscribe(_0x5c1b0d,_0x1ac10e,_0x3b47d7,uuidv4(),_0x5236b4,_0x27c000[_0x5760('0x6d')]);})['then'](function(_0x3911f7){logger[_0x5760('0x60')](util[_0x5760('0x31')](_0x5760('0x72'),_0x5daf38,_0x3911f7[_0x5760('0x73')][_0x5760('0x74')]));_0x99a90e[_0x5760('0x75')]=_0x3911f7[_0x5760('0x73')]['TranscriptionJobName'];_0x99a90e[_0x5760('0x76')]=_0x3911f7[_0x5760('0x73')][_0x5760('0x77')];return _0x26fffc(_0x99a90e);})['catch'](function(_0x19397a){return _0x32ae59(_0x19397a);});});}exports[_0x5760('0x78')]=function(_0x63bc24,_0x3dcdbd,_0x536d9f){var _0x3c7387;var _0x452e32;var _0x384f72;var _0x1c573f=require('../../components/encryptor');return db[_0x5760('0x40')][_0x5760('0x79')]({'where':{'id':_0x63bc24[_0x5760('0x46')]['id']}})[_0x5760('0x23')](function(_0x29e500){if(_0x29e500){var _0x1966f8=util[_0x5760('0x31')]('%s.cypher',_0x29e500[_0x5760('0x50')]);if(fs[_0x5760('0x54')](_0x1966f8)){cypher=!![];return _0x1c573f['decryptFile'](_0x1966f8,_0x29e500[_0x5760('0x50')],config[_0x5760('0x52')][_0x5760('0x53')])[_0x5760('0x23')](function(){return _0x29e500;});}return _0x29e500;}})['then'](function(_0x4840ab){if(!_0x4840ab){throw new db[(_0x5760('0x55'))][(_0x5760('0x7a'))]('Voice\x20Recording\x20not\x20found');}_0x452e32=_0x4840ab;return db[_0x5760('0x7b')][_0x5760('0x79')]({'where':{'id':0x1}});})[_0x5760('0x23')](handleEntityNotFound(_0x3dcdbd,null))['then'](function(_0x1d34ce){if(_0x1d34ce){_0x3c7387=_0x1d34ce;if(!_0x3c7387[_0x5760('0x7c')]||!_0x3c7387[_0x5760('0x7d')]||!_0x3c7387['transcribeRegion']||!_0x3c7387[_0x5760('0x7e')]||!_0x3c7387[_0x5760('0x6e')]){throw new db[(_0x5760('0x55'))][(_0x5760('0x7a'))](_0x5760('0x7f'));}if(_0x63bc24[_0x5760('0x4a')][_0x5760('0x80')]&&(!_0x3c7387[_0x5760('0x81')]||!_0x3c7387[_0x5760('0x82')]||!_0x3c7387[_0x5760('0x83')]||!_0x3c7387[_0x5760('0x7e')]||!_0x3c7387['bucket'])){throw new db[(_0x5760('0x55'))][(_0x5760('0x7a'))](_0x5760('0x84'));}return db[_0x5760('0x85')][_0x5760('0x79')]({'where':{'id':_0x3c7387['transcribeAccountId']}});}})[_0x5760('0x23')](function(_0x399588){if(!_0x399588){throw new db[(_0x5760('0x55'))][(_0x5760('0x7a'))]('Cloud\x20Provider\x20not\x20available');}if(!_0x399588[_0x5760('0x86')]||!_0x399588[_0x5760('0x87')]){throw new db[(_0x5760('0x55'))]['ValidationError'](_0x5760('0x88'));}_0x384f72=_0x399588;return getBucketslist(_0x384f72['data1'],_0x384f72[_0x5760('0x87')],_0x3c7387['transcribeRegion']);})['then'](function(_0xdb78cc){if(_0xdb78cc&&_0xdb78cc[_0x5760('0x89')]){var _0x5b9689=_[_0x5760('0x4c')](_0xdb78cc['Buckets'],function(_0x1fb2ac){return _0x1fb2ac[_0x5760('0x8a')]===_0x3c7387['bucket'];});if(!_0x5b9689){logger[_0x5760('0x60')](util['format'](_0x5760('0x8b'),_0x63bc24[_0x5760('0x46')]['id'],_0x3c7387[_0x5760('0x6e')]));return createBucket(_0x384f72[_0x5760('0x86')],_0x384f72['data2'],_0x3c7387[_0x5760('0x8c')],_0x3c7387[_0x5760('0x6e')]);}logger[_0x5760('0x60')](util[_0x5760('0x31')]('[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available',_0x63bc24[_0x5760('0x46')]['id'],_0x3c7387[_0x5760('0x6e')]));return;}})['then'](function(_0x483df8){if(_0x452e32[_0x5760('0x76')]==='NEW'){return transcribe(_0x63bc24[_0x5760('0x46')]['id'],_0x384f72[_0x5760('0x86')],_0x384f72['data2'],_0x3c7387['transcribeRegion'],_0x3c7387['bucket'],_0x452e32[_0x5760('0x50')],_0x3c7387[_0x5760('0x7e')]);}else{logger[_0x5760('0x60')](util[_0x5760('0x31')](_0x5760('0x8d'),_0x63bc24[_0x5760('0x46')]['id']));return{'transcribeStatus':_0x5760('0x8e')};}})['then'](function(_0xde723f){if(_0xde723f){_0xde723f[_0x5760('0x8f')]=_0x63bc24['body']['runSentiment'];return _0x452e32[_0x5760('0x90')](_0xde723f);}})[_0x5760('0x23')](respondWithResult(_0x3dcdbd,null))['catch'](handleError(_0x3dcdbd,null));};function writeFile(_0x142682,_0x4ac631){return new Promise(function(_0x51bb77,_0x48259d){fs['writeFile'](_0x4ac631,_0x142682,function(_0x2d2c89,_0x2f75ec){if(_0x2d2c89){return _0x48259d(_0x2d2c89);}else{return _0x51bb77(_0x2f75ec);}});});}exports['downloadTranscribe']=function(_0x258de6,_0xe9bf68,_0x36cd0e){return db[_0x5760('0x40')][_0x5760('0x79')]({'where':{'id':_0x258de6['params']['id']}})['then'](handleEntityNotFound(_0xe9bf68))[_0x5760('0x23')](function(_0x271b5c){if(_0x271b5c&&_0x271b5c['fileText']){var _0x5bb0c7=_0x271b5c[_0x5760('0x91')];var _0x347240=config[_0x5760('0x92')]+_0x5760('0x93')+_0x271b5c['id']+_0x5760('0x94');if(fs[_0x5760('0x54')](_0x347240)){return _0x347240;}return writeFile(_0x5bb0c7,_0x347240)['then'](function(){return _0x347240;});}else{throw new db[(_0x5760('0x55'))]['ValidationError'](_0x5760('0x95'));}})['then'](function(_0x322b11){return _0xe9bf68['download'](_0x322b11);})[_0x5760('0x48')](handleError(_0xe9bf68));};