Built motion from commit (unavailable).|2.5.14
[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 _0xddcd=['Buckets','Name','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available','transcribeStatus','IN_PROGRESS','tempSentiment','updateAttributes','writeFile','downloadTranscribe','fileText','root','/server/files/transcribes/transcribe_','.txt','Transcript\x20not\x20available','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','papaparse','aws-sdk','uuid/v4','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','count','offset','set','Content-Range','save','update','then','destroy','name','send','index','VoiceRecording','rawAttributes','fieldName','key','model','differenceBy','format','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','filter','map','type','VIRTUAL','merge','includeAll','findAll','rows','catch','show','params','options','find','create','body','describe','download','../../components/encryptor','uniqueid','value','%s.cypher','existsSync','decryptFile','secrets','recording','Sequelize','ValidationError','filename','extname','unlink','message','VoiceRecording\x20not\x20found','Not\x20found','downloads','sequelize','token','$and','push','Entity\x20not\x20found','cancellazione\x20fisica\x20documento\x20%s','isNil','info','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','File:\x20\x22','listBuckets','createBucket','startTranscriptionJob','[RUNTRANSCRIPT][%d]\x20Starting\x20voice\x20recording\x20upload\x20in\x20bucket\x20%s','readFileSync','[RUNTRANSCRIPT][%d]\x20Voice\x20recording\x20uploaded\x20in\x20bucket\x20%s\x20(%s)','Location','bucket','Bucket','location','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created','TranscriptionJob','TranscriptionJobName','transcribeName','TranscriptionJobStatus','runTranscribe','Setting','transcribe','transcribeAccountId','transcribeRegion','language','Transcribe\x20not\x20configured','sentiment','sentimentRegion','Sentiment\x20Analysis\x20not\x20configured','CloudProvider','findOne','Cloud\x20Provider\x20not\x20available','data1','data2','Cloud\x20Provider\x20not\x20configured'];(function(_0x5b561d,_0x422b7c){var _0x431060=function(_0x401409){while(--_0x401409){_0x5b561d['push'](_0x5b561d['shift']());}};_0x431060(++_0x422b7c);}(_0xddcd,0xa9));var _0xdddc=function(_0x1bc71d,_0x26e5f9){_0x1bc71d=_0x1bc71d-0x0;var _0x1c6acf=_0xddcd[_0x1bc71d];return _0x1c6acf;};'use strict';var pdf=require(_0xdddc('0x0'));var emlformat=require(_0xdddc('0x1'));var rimraf=require(_0xdddc('0x2'));var zipdir=require(_0xdddc('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0xdddc('0x4'));var moment=require(_0xdddc('0x5'));var BPromise=require(_0xdddc('0x6'));var Mustache=require(_0xdddc('0x7'));var util=require(_0xdddc('0x8'));var path=require(_0xdddc('0x9'));var sox=require(_0xdddc('0xa'));var csv=require(_0xdddc('0xb'));var ejs=require(_0xdddc('0xc'));var fs=require('fs');var _=require(_0xdddc('0xd'));var squel=require(_0xdddc('0xe'));var crypto=require(_0xdddc('0xf'));var jsforce=require(_0xdddc('0x10'));var deskjs=require('desk.js');var toCsv=require(_0xdddc('0xb'));var querystring=require('querystring');var Papa=require(_0xdddc('0x11'));var AWS=require(_0xdddc('0x12'));var uuidv4=require(_0xdddc('0x13'));var Redis=require(_0xdddc('0x14'));var authService=require(_0xdddc('0x15'));var qs=require(_0xdddc('0x16'));var as=require(_0xdddc('0x17'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xdddc('0x18'));var utils=require(_0xdddc('0x19'));var config=require(_0xdddc('0x1a'));var licenseUtil=require(_0xdddc('0x1b'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x1eef6d,_0x5d44c8){_0x5d44c8=_0x5d44c8||0xcc;return function(_0x133aa5){if(_0x133aa5){return _0x1eef6d[_0xdddc('0x1c')](_0x5d44c8);}return _0x1eef6d[_0xdddc('0x1d')](_0x5d44c8)[_0xdddc('0x1e')]();};}function respondWithResult(_0x4b0d6d,_0x27d0a4){_0x27d0a4=_0x27d0a4||0xc8;return function(_0xd5bef6){if(_0xd5bef6){return _0x4b0d6d[_0xdddc('0x1d')](_0x27d0a4)[_0xdddc('0x1f')](_0xd5bef6);}};}function respondWithFilteredResult(_0x22a6c8,_0x57d4aa){return function(_0x4627d3){if(_0x4627d3){var _0x42837d=_0x4627d3[_0xdddc('0x20')],_0x1c51a3=_0x57d4aa[_0xdddc('0x21')],_0xcfdd6d=_0x57d4aa[_0xdddc('0x21')]+_0x57d4aa['limit'],_0x1ab0d1;if(_0xcfdd6d>=_0x42837d){_0xcfdd6d=_0x42837d;_0x1ab0d1=0xc8;}else{_0x1ab0d1=0xce;}_0x22a6c8['status'](_0x1ab0d1);return _0x22a6c8[_0xdddc('0x22')](_0xdddc('0x23'),_0x1c51a3+'-'+_0xcfdd6d+'/'+_0x42837d)[_0xdddc('0x1f')](_0x4627d3);}return null;};}function patchUpdates(_0x268171){return function(_0xf8c439){try{jsonpatch['apply'](_0xf8c439,_0x268171,!![]);}catch(_0x4ad834){return BPromise['reject'](_0x4ad834);}return _0xf8c439[_0xdddc('0x24')]();};}function saveUpdates(_0x3ca3f9,_0x4d756f){return function(_0x28cf22){if(_0x28cf22){return _0x28cf22[_0xdddc('0x25')](_0x3ca3f9)[_0xdddc('0x26')](function(_0x10ca65){return _0x10ca65;});}return null;};}function removeEntity(_0x2db5eb,_0x102485){return function(_0x469c6c){if(_0x469c6c){return _0x469c6c[_0xdddc('0x27')]()[_0xdddc('0x26')](function(){_0x2db5eb[_0xdddc('0x1d')](0xcc)[_0xdddc('0x1e')]();});}};}function handleEntityNotFound(_0x1fe053,_0x561fef){return function(_0x297e73){if(!_0x297e73){_0x1fe053[_0xdddc('0x1c')](0x194);}return _0x297e73;};}function handleError(_0x2977d0,_0x5e28f8){_0x5e28f8=_0x5e28f8||0x1f4;return function(_0x23c434){logger['error'](_0x23c434['stack']);if(_0x23c434[_0xdddc('0x28')]){delete _0x23c434[_0xdddc('0x28')];}_0x2977d0[_0xdddc('0x1d')](_0x5e28f8)[_0xdddc('0x29')](_0x23c434);};}exports[_0xdddc('0x2a')]=function(_0x24a064,_0x21e1ec){var _0x5ee820={},_0xd14f71={},_0x21f34d={'count':0x0,'rows':[]};var _0x2e925a=_['map'](db[_0xdddc('0x2b')][_0xdddc('0x2c')],function(_0x7ed2ff){return{'name':_0x7ed2ff[_0xdddc('0x2d')],'type':_0x7ed2ff['type'][_0xdddc('0x2e')]};});_0xd14f71[_0xdddc('0x2f')]=_[_0xdddc('0x30')](_['map'](_0x2e925a,_0xdddc('0x28')),[_0xdddc('0x31')]);_0xd14f71[_0xdddc('0x32')]=_[_0xdddc('0x33')](_0x24a064[_0xdddc('0x32')]);_0xd14f71[_0xdddc('0x34')]=_[_0xdddc('0x35')](_0xd14f71[_0xdddc('0x2f')],_0xd14f71[_0xdddc('0x32')]);_0x5ee820[_0xdddc('0x36')]=_[_0xdddc('0x35')](_0xd14f71[_0xdddc('0x2f')],qs[_0xdddc('0x37')](_0x24a064[_0xdddc('0x32')]['fields']));_0x5ee820[_0xdddc('0x36')]=_0x5ee820[_0xdddc('0x36')][_0xdddc('0x38')]?_0x5ee820[_0xdddc('0x36')]:_0xd14f71[_0xdddc('0x2f')];if(!_0x24a064[_0xdddc('0x32')][_0xdddc('0x39')](_0xdddc('0x3a'))){_0x5ee820[_0xdddc('0x3b')]=qs['limit'](_0x24a064[_0xdddc('0x32')][_0xdddc('0x3b')]);_0x5ee820[_0xdddc('0x21')]=qs[_0xdddc('0x21')](_0x24a064[_0xdddc('0x32')][_0xdddc('0x21')]);}_0x5ee820[_0xdddc('0x3c')]=qs['sort'](_0x24a064[_0xdddc('0x32')][_0xdddc('0x3d')]);_0x5ee820[_0xdddc('0x3e')]=qs[_0xdddc('0x34')](_[_0xdddc('0x3f')](_0x24a064[_0xdddc('0x32')],_0xd14f71[_0xdddc('0x34')]),_0x2e925a);if(_0x24a064['query'][_0xdddc('0x40')]){_0x5ee820[_0xdddc('0x3e')]=_['merge'](_0x5ee820[_0xdddc('0x3e')],{'$or':_[_0xdddc('0x41')](_0x2e925a,function(_0x26aca8){if(_0x26aca8[_0xdddc('0x42')]!==_0xdddc('0x43')){var _0x146d84={};_0x146d84[_0x26aca8[_0xdddc('0x28')]]={'$like':'%'+_0x24a064[_0xdddc('0x32')][_0xdddc('0x40')]+'%'};return _0x146d84;}})});}_0x5ee820=_[_0xdddc('0x44')]({},_0x5ee820,_0x24a064['options']);var _0x497f58={'where':_0x5ee820['where']};return db['VoiceRecording'][_0xdddc('0x20')](_0x497f58)[_0xdddc('0x26')](function(_0x4dbc63){_0x21f34d[_0xdddc('0x20')]=_0x4dbc63;if(_0x24a064['query'][_0xdddc('0x45')]){_0x5ee820['include']=[{'all':!![]}];}return db[_0xdddc('0x2b')][_0xdddc('0x46')](_0x5ee820);})[_0xdddc('0x26')](function(_0x1bf2a3){_0x21f34d[_0xdddc('0x47')]=_0x1bf2a3;return _0x21f34d;})[_0xdddc('0x26')](respondWithFilteredResult(_0x21e1ec,_0x5ee820))[_0xdddc('0x48')](handleError(_0x21e1ec,null));};exports[_0xdddc('0x49')]=function(_0x377e60,_0x170c7c){var _0x4136d7={'raw':![],'where':{'id':_0x377e60[_0xdddc('0x4a')]['id']}},_0x5d6c61={};_0x5d6c61[_0xdddc('0x2f')]=_[_0xdddc('0x33')](db['VoiceRecording'][_0xdddc('0x2c')]);_0x5d6c61['query']=_[_0xdddc('0x33')](_0x377e60['query']);_0x5d6c61['filters']=_[_0xdddc('0x35')](_0x5d6c61['model'],_0x5d6c61['query']);_0x4136d7[_0xdddc('0x36')]=_[_0xdddc('0x35')](_0x5d6c61[_0xdddc('0x2f')],qs[_0xdddc('0x37')](_0x377e60[_0xdddc('0x32')]['fields']));_0x4136d7[_0xdddc('0x36')]=_0x4136d7[_0xdddc('0x36')][_0xdddc('0x38')]?_0x4136d7[_0xdddc('0x36')]:_0x5d6c61['model'];if(_0x377e60[_0xdddc('0x32')][_0xdddc('0x45')]){_0x4136d7['include']=[{'all':!![]}];}_0x4136d7=_[_0xdddc('0x44')]({},_0x4136d7,_0x377e60[_0xdddc('0x4b')]);return db[_0xdddc('0x2b')][_0xdddc('0x4c')](_0x4136d7)[_0xdddc('0x26')](handleEntityNotFound(_0x170c7c,null))[_0xdddc('0x26')](respondWithResult(_0x170c7c,null))['catch'](handleError(_0x170c7c,null));};exports[_0xdddc('0x4d')]=function(_0x3073a7,_0x36ea2d){return db[_0xdddc('0x2b')][_0xdddc('0x4d')](_0x3073a7['body'],{})[_0xdddc('0x26')](respondWithResult(_0x36ea2d,0xc9))['catch'](handleError(_0x36ea2d,null));};exports[_0xdddc('0x25')]=function(_0x564a7f,_0x5b824e){if(_0x564a7f['body']['id']){delete _0x564a7f[_0xdddc('0x4e')]['id'];}return db['VoiceRecording'][_0xdddc('0x4c')]({'where':{'id':_0x564a7f[_0xdddc('0x4a')]['id']}})['then'](handleEntityNotFound(_0x5b824e,null))[_0xdddc('0x26')](saveUpdates(_0x564a7f['body'],null))['then'](respondWithResult(_0x5b824e,null))[_0xdddc('0x48')](handleError(_0x5b824e,null));};exports[_0xdddc('0x4f')]=function(_0x246a17,_0x1168ef){return db[_0xdddc('0x2b')][_0xdddc('0x4f')]()[_0xdddc('0x26')](respondWithResult(_0x1168ef,null))[_0xdddc('0x48')](handleError(_0x1168ef,null));};exports[_0xdddc('0x50')]=function(_0xa02fb1,_0x38e128,_0x33a30c){var _0x427d13=require(_0xdddc('0x51'));var _0xbc7db9=![];var _0xe3430a={};if(_0xa02fb1[_0xdddc('0x32')][_0xdddc('0x42')]&&_0xa02fb1[_0xdddc('0x32')][_0xdddc('0x42')]===_0xdddc('0x52')){_0xe3430a[_0xdddc('0x52')]=_0xa02fb1['params']['id'];}else{_0xe3430a['id']=_0xa02fb1['params']['id'];}return db[_0xdddc('0x2b')][_0xdddc('0x4c')]({'where':_0xe3430a,'attributes':['id',_0xdddc('0x53')],'raw':!![]})[_0xdddc('0x26')](handleEntityNotFound(_0x38e128,null))[_0xdddc('0x26')](function(_0x2e71d8){if(_0x2e71d8){var _0x445cd5=_0x2e71d8[_0xdddc('0x53')];var _0x263828=util[_0xdddc('0x31')](_0xdddc('0x54'),_0x445cd5);if(fs[_0xdddc('0x55')](_0x263828)){_0xbc7db9=!![];return _0x427d13[_0xdddc('0x56')](_0x263828,_0x445cd5,config[_0xdddc('0x57')][_0xdddc('0x58')])[_0xdddc('0x26')](function(){return _0x2e71d8;});}return _0x2e71d8;}})[_0xdddc('0x26')](function(_0xcb61b2){if(_0xcb61b2){var _0x353340=_0xcb61b2['value'];if(!fs['existsSync'](_0x353340)){throw new db[(_0xdddc('0x59'))][(_0xdddc('0x5a'))]('VoiceRecording\x20not\x20found');}if(_0xcb61b2[_0xdddc('0x5b')]){return _0x38e128[_0xdddc('0x50')](_0x353340,_0xcb61b2[_0xdddc('0x5b')]+path[_0xdddc('0x5c')](_0x353340),function(){if(_0xbc7db9){fs[_0xdddc('0x5d')](_0x353340);}});}else{return _0x38e128[_0xdddc('0x50')](_0x353340,function(_0x4722ff){if(_0xbc7db9){fs[_0xdddc('0x5d')](_0x353340);}});}}})['catch'](function(_0x911d51){if(_0x911d51[_0xdddc('0x5e')]===_0xdddc('0x5f')){_0x38e128[_0xdddc('0x1d')](0x194)['send'](_0xdddc('0x60'));}else{return handleError(_0x38e128,null);}});};exports[_0xdddc('0x61')]=function(_0xd0c712,_0x5c33b0,_0xacc725){var _0x43f61e=require(_0xdddc('0x51'));var _0x67025b=![];var _0x1f0388={'$and':[db[_0xdddc('0x62')][_0xdddc('0x3e')](db[_0xdddc('0x62')]['fn']('MD5',db[_0xdddc('0x62')]['col'](_0xdddc('0x52'))),_0xd0c712[_0xdddc('0x32')][_0xdddc('0x63')])]};if(_0xd0c712[_0xdddc('0x32')][_0xdddc('0x42')]&&_0xd0c712['query'][_0xdddc('0x42')]===_0xdddc('0x52')){_0x1f0388[_0xdddc('0x64')][_0xdddc('0x65')]({'uniqueid':_0xd0c712[_0xdddc('0x4a')]['id']});}else{_0x1f0388[_0xdddc('0x64')][_0xdddc('0x65')]({'id':_0xd0c712[_0xdddc('0x4a')]['id']});}return db['VoiceRecording'][_0xdddc('0x4c')]({'where':_0x1f0388,'attributes':['id',_0xdddc('0x53')],'raw':!![]})[_0xdddc('0x26')](handleEntityNotFound(_0x5c33b0,null))[_0xdddc('0x26')](function(_0x1d2bd9){if(_0x1d2bd9){var _0x127ac8=util[_0xdddc('0x31')](_0xdddc('0x54'),_0x1d2bd9['value']);if(fs[_0xdddc('0x55')](_0x127ac8)){_0x67025b=!![];return _0x43f61e[_0xdddc('0x56')](_0x127ac8,_0x1d2bd9[_0xdddc('0x53')],config[_0xdddc('0x57')][_0xdddc('0x58')])[_0xdddc('0x26')](function(){return _0x1d2bd9;});}return _0x1d2bd9;}})['then'](function(_0x8d3e66){if(_0x8d3e66){if(!fs[_0xdddc('0x55')](_0x8d3e66['value'])){throw new db['Sequelize'][(_0xdddc('0x5a'))](_0xdddc('0x5f'));}if(_0x8d3e66[_0xdddc('0x5b')]){return _0x5c33b0['download'](_0x8d3e66[_0xdddc('0x53')],_0x8d3e66[_0xdddc('0x5b')]+path[_0xdddc('0x5c')](_0x8d3e66['value']),function(){if(_0x67025b){fs[_0xdddc('0x5d')](_0x8d3e66[_0xdddc('0x53')]);}});}else{return _0x5c33b0[_0xdddc('0x50')](_0x8d3e66['value'],function(_0x1508c5){if(_0x67025b){fs[_0xdddc('0x5d')](_0x8d3e66[_0xdddc('0x53')]);}});}}})[_0xdddc('0x48')](handleError(_0x5c33b0,null));};exports[_0xdddc('0x27')]=function(_0x359254,_0x83e1c6){return db[_0xdddc('0x2b')][_0xdddc('0x4c')]({'where':{'id':_0x359254['params']['id']}})[_0xdddc('0x26')](function(_0x28daf9){if(!_0x28daf9)throw new ReferenceError(_0xdddc('0x66'));return _0x28daf9;})[_0xdddc('0x26')](function(_0x116175){var _0x3cbd41=_0x116175[_0xdddc('0x53')];logger['info'](_0xdddc('0x67'),_0x3cbd41);if(!_[_0xdddc('0x68')](_0x116175[_0xdddc('0x53')])&&fs[_0xdddc('0x55')](_0x3cbd41)){logger[_0xdddc('0x69')]('File:\x20\x22'+_0x3cbd41+_0xdddc('0x6a'));fs[_0xdddc('0x6b')](_0x3cbd41);}_0x3cbd41=_0x3cbd41+_0xdddc('0x6c');if(!_[_0xdddc('0x68')](_0x116175[_0xdddc('0x53')])&&fs['existsSync'](_0x3cbd41)){logger[_0xdddc('0x69')](_0xdddc('0x6d')+_0x3cbd41+_0xdddc('0x6a'));fs[_0xdddc('0x6b')](_0x3cbd41);}return _0x116175;})[_0xdddc('0x26')](function(_0x321abd){if(!_0x321abd)throw new InternalError();return _0x321abd[_0xdddc('0x27')]();})[_0xdddc('0x26')](function(){_0x83e1c6['status'](0xcc)[_0xdddc('0x1e')]();})[_0xdddc('0x48')](handleError(_0x83e1c6,null));};function getBucketslist(_0x5e71b7,_0x3e3a55,_0x181678){return new Promise(function(_0x12669,_0x3a0403){var _0xc06f06=new AWS['S3']({'accessKeyId':_0x3e3a55,'secretAccessKey':_0x5e71b7,'region':_0x181678});_0xc06f06[_0xdddc('0x6e')]({},function(_0x4f998a,_0x12ca9){if(_0x4f998a){return _0x3a0403(_0x4f998a);}else{return _0x12669(_0x12ca9);}});});}function createBucket(_0x5e5a41,_0x51791d,_0xe9e9d7,_0x593154){return new Promise(function(_0x479a5a,_0x4ddb48){var _0x34f3b9=new AWS['S3']({'accessKeyId':_0x51791d,'secretAccessKey':_0x5e5a41,'region':_0xe9e9d7});_0x34f3b9[_0xdddc('0x6f')]({'Bucket':_0x593154},function(_0x328250,_0x58f08d){if(_0x328250){return _0x4ddb48(_0x328250);}else{return _0x479a5a(_0x58f08d);}});});}function uploadFile(_0x1afcbd,_0x585026,_0x2ca49c,_0x3b652e,_0x398ad9,_0x4d9879){return new Promise(function(_0x409ff0,_0x531686){var _0x5ed809=new AWS['S3']({'accessKeyId':_0x585026,'secretAccessKey':_0x1afcbd,'region':_0x2ca49c});_0x5ed809['upload']({'Bucket':_0x3b652e,'Key':_0x398ad9,'Body':_0x4d9879},function(_0x5b3170,_0x4ddf05){if(_0x5b3170){return _0x531686(_0x5b3170);}else{return _0x409ff0(_0x4ddf05);}});});}function startTranscribe(_0x21abc5,_0x21186d,_0x4a8c4d,_0xc2eec1,_0x570e62,_0x4e46d2){return new Promise(function(_0x57dc9b,_0x5f46a0){var _0x487a6f=new AWS['TranscribeService']({'accessKeyId':_0x21186d,'secretAccessKey':_0x21abc5,'region':_0x4a8c4d});_0x487a6f[_0xdddc('0x70')]({'TranscriptionJobName':_0xc2eec1,'LanguageCode':_0x570e62,'Media':{'MediaFileUri':_0x4e46d2}},function(_0x168ccd,_0x591a69){if(_0x168ccd){return _0x5f46a0(_0x168ccd);}else{return _0x57dc9b(_0x591a69);}});});}function transcribe(_0x371f8a,_0x3776b4,_0x2a8882,_0x4c09e1,_0x5b7268,_0x2c98ca,_0x5e13c1){return new Promise(function(_0x383821,_0x54b445){var _0x1d0595={};logger[_0xdddc('0x69')](util[_0xdddc('0x31')](_0xdddc('0x71'),_0x371f8a,_0x5b7268));return uploadFile(_0x3776b4,_0x2a8882,_0x4c09e1,_0x5b7268,path['basename'](_0x2c98ca),fs[_0xdddc('0x72')](_0x2c98ca))[_0xdddc('0x26')](function(_0x94a675){logger[_0xdddc('0x69')](util[_0xdddc('0x31')](_0xdddc('0x73'),_0x371f8a,_0x5b7268,_0x94a675[_0xdddc('0x74')]));_0x1d0595[_0xdddc('0x75')]=_0x94a675[_0xdddc('0x76')];_0x1d0595[_0xdddc('0x77')]=_0x94a675[_0xdddc('0x74')];logger[_0xdddc('0x69')](util[_0xdddc('0x31')]('[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request',_0x371f8a));return startTranscribe(_0x3776b4,_0x2a8882,_0x4c09e1,uuidv4(),_0x5e13c1,_0x94a675[_0xdddc('0x74')]);})[_0xdddc('0x26')](function(_0x1e8a5e){logger['info'](util['format'](_0xdddc('0x78'),_0x371f8a,_0x1e8a5e[_0xdddc('0x79')][_0xdddc('0x7a')]));_0x1d0595[_0xdddc('0x7b')]=_0x1e8a5e[_0xdddc('0x79')][_0xdddc('0x7a')];_0x1d0595['transcribeStatus']=_0x1e8a5e[_0xdddc('0x79')][_0xdddc('0x7c')];return _0x383821(_0x1d0595);})[_0xdddc('0x48')](function(_0x5b05c5){return _0x54b445(_0x5b05c5);});});}exports[_0xdddc('0x7d')]=function(_0x4a21c0,_0x31acc7,_0x27e22f){var _0x4b682d;var _0x4a57a0;var _0x310342;var _0x52a3d4=require(_0xdddc('0x51'));return db[_0xdddc('0x2b')]['findOne']({'where':{'id':_0x4a21c0['params']['id']}})[_0xdddc('0x26')](function(_0x98c4cb){if(_0x98c4cb){var _0x539e81=util['format'](_0xdddc('0x54'),_0x98c4cb[_0xdddc('0x53')]);if(fs['existsSync'](_0x539e81)){cypher=!![];return _0x52a3d4[_0xdddc('0x56')](_0x539e81,_0x98c4cb[_0xdddc('0x53')],config['secrets']['recording'])['then'](function(){return _0x98c4cb;});}return _0x98c4cb;}})[_0xdddc('0x26')](function(_0x130ed3){if(!_0x130ed3){throw new db[(_0xdddc('0x59'))][(_0xdddc('0x5a'))]('Voice\x20Recording\x20not\x20found');}_0x4a57a0=_0x130ed3;return db[_0xdddc('0x7e')]['findOne']({'where':{'id':0x1}});})[_0xdddc('0x26')](handleEntityNotFound(_0x31acc7,null))[_0xdddc('0x26')](function(_0x2ebc56){if(_0x2ebc56){_0x4b682d=_0x2ebc56;if(!_0x4b682d[_0xdddc('0x7f')]||!_0x4b682d[_0xdddc('0x80')]||!_0x4b682d[_0xdddc('0x81')]||!_0x4b682d[_0xdddc('0x82')]||!_0x4b682d[_0xdddc('0x75')]){throw new db['Sequelize']['ValidationError'](_0xdddc('0x83'));}if(_0x4a21c0['body']['runSentiment']&&(!_0x4b682d[_0xdddc('0x84')]||!_0x4b682d['sentimentAccountId']||!_0x4b682d[_0xdddc('0x85')]||!_0x4b682d[_0xdddc('0x82')]||!_0x4b682d[_0xdddc('0x75')])){throw new db[(_0xdddc('0x59'))]['ValidationError'](_0xdddc('0x86'));}return db[_0xdddc('0x87')][_0xdddc('0x88')]({'where':{'id':_0x4b682d[_0xdddc('0x80')]}});}})[_0xdddc('0x26')](function(_0x108244){if(!_0x108244){throw new db[(_0xdddc('0x59'))][(_0xdddc('0x5a'))](_0xdddc('0x89'));}if(!_0x108244[_0xdddc('0x8a')]||!_0x108244[_0xdddc('0x8b')]){throw new db[(_0xdddc('0x59'))][(_0xdddc('0x5a'))](_0xdddc('0x8c'));}_0x310342=_0x108244;return getBucketslist(_0x310342[_0xdddc('0x8a')],_0x310342['data2'],_0x4b682d[_0xdddc('0x81')]);})[_0xdddc('0x26')](function(_0x17f1ba){if(_0x17f1ba&&_0x17f1ba[_0xdddc('0x8d')]){var _0x5a7fe1=_['find'](_0x17f1ba[_0xdddc('0x8d')],function(_0x3477b8){return _0x3477b8[_0xdddc('0x8e')]===_0x4b682d['bucket'];});if(!_0x5a7fe1){logger[_0xdddc('0x69')](util[_0xdddc('0x31')](_0xdddc('0x8f'),_0x4a21c0[_0xdddc('0x4a')]['id'],_0x4b682d[_0xdddc('0x75')]));return createBucket(_0x310342[_0xdddc('0x8a')],_0x310342[_0xdddc('0x8b')],_0x4b682d[_0xdddc('0x81')],_0x4b682d[_0xdddc('0x75')]);}logger[_0xdddc('0x69')](util[_0xdddc('0x31')]('[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available',_0x4a21c0[_0xdddc('0x4a')]['id'],_0x4b682d[_0xdddc('0x75')]));return;}})['then'](function(_0x219770){if(_0x4a57a0[_0xdddc('0x90')]==='NEW'){return transcribe(_0x4a21c0[_0xdddc('0x4a')]['id'],_0x310342[_0xdddc('0x8a')],_0x310342[_0xdddc('0x8b')],_0x4b682d[_0xdddc('0x81')],_0x4b682d[_0xdddc('0x75')],_0x4a57a0[_0xdddc('0x53')],_0x4b682d['language']);}else{logger[_0xdddc('0x69')](util['format']('[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested',_0x4a21c0[_0xdddc('0x4a')]['id']));return{'transcribeStatus':_0xdddc('0x91')};}})[_0xdddc('0x26')](function(_0x42c4a5){if(_0x42c4a5){_0x42c4a5[_0xdddc('0x92')]=_0x4a21c0[_0xdddc('0x4e')]['runSentiment'];return _0x4a57a0[_0xdddc('0x93')](_0x42c4a5);}})[_0xdddc('0x26')](respondWithResult(_0x31acc7,null))[_0xdddc('0x48')](handleError(_0x31acc7,null));};function writeFile(_0x8e68b2,_0x3b8d4b){return new Promise(function(_0x3a5816,_0x59c27d){fs[_0xdddc('0x94')](_0x3b8d4b,_0x8e68b2,function(_0x4b45b7,_0x45895b){if(_0x4b45b7){return _0x59c27d(_0x4b45b7);}else{return _0x3a5816(_0x45895b);}});});}exports[_0xdddc('0x95')]=function(_0x3e76c5,_0x479be9,_0x5d5d07){return db[_0xdddc('0x2b')][_0xdddc('0x88')]({'where':{'id':_0x3e76c5['params']['id']}})[_0xdddc('0x26')](handleEntityNotFound(_0x479be9))[_0xdddc('0x26')](function(_0x2c8833){if(_0x2c8833&&_0x2c8833[_0xdddc('0x96')]){var _0x51b558=_0x2c8833['fileText'];var _0x1a545a=config[_0xdddc('0x97')]+_0xdddc('0x98')+_0x2c8833['id']+_0xdddc('0x99');if(fs[_0xdddc('0x55')](_0x1a545a)){return _0x1a545a;}return writeFile(_0x51b558,_0x1a545a)[_0xdddc('0x26')](function(){return _0x1a545a;});}else{throw new db[(_0xdddc('0x59'))][(_0xdddc('0x5a'))](_0xdddc('0x9a'));}})['then'](function(_0x179c99){return _0x479be9[_0xdddc('0x50')](_0x179c99);})[_0xdddc('0x48')](handleError(_0x479be9));};