Built motion from commit (unavailable).|2.5.20
[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 _0x0a3b=['$and','find','%s.cypher','destroy','info','cancellazione\x20fisica\x20documento\x20%s','isNil','existsSync','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','File:\x20\x22','listBuckets','createBucket','upload','startTranscriptionJob','[RUNTRANSCRIPT][%d]\x20Starting\x20voice\x20recording\x20upload\x20in\x20bucket\x20%s','basename','readFileSync','[RUNTRANSCRIPT][%d]\x20Voice\x20recording\x20uploaded\x20in\x20bucket\x20%s\x20(%s)','bucket','Bucket','location','Location','[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created','TranscriptionJob','TranscriptionJobName','transcribeName','transcribeStatus','TranscriptionJobStatus','runTranscribe','Voice\x20Recording\x20not\x20found','findOne','transcribe','transcribeAccountId','transcribeRegion','language','Transcribe\x20not\x20configured','sentiment','sentimentAccountId','CloudProvider','Cloud\x20Provider\x20not\x20available','data1','data2','Cloud\x20Provider\x20not\x20configured','Buckets','Name','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available','NEW','[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested','tempSentiment','runSentiment','updateAttributes','writeFile','downloadTranscribe','fileText','root','/server/files/transcribes/transcribe_','.txt','Transcript\x20not\x20available','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','mustache','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','aws-sdk','uuid/v4','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','set','save','then','error','stack','name','index','map','VoiceRecording','fieldName','type','key','model','differenceBy','format','query','keys','filters','attributes','intersection','fields','length','nolimit','limit','offset','order','sort','where','pick','filter','merge','VIRTUAL','count','includeAll','findAll','rows','catch','show','params','rawAttributes','options','body','update','describe','download','../../components/encryptor','uniqueid','value','secrets','recording','Sequelize','ValidationError','VoiceRecording\x20not\x20found','filename','extname','unlink','message','send','Not\x20found','downloads','sequelize','MD5','col','token','push'];(function(_0x2a8e2b,_0x52d1fd){var _0x1416d4=function(_0x43473e){while(--_0x43473e){_0x2a8e2b['push'](_0x2a8e2b['shift']());}};_0x1416d4(++_0x52d1fd);}(_0x0a3b,0xdc));var _0xb0a3=function(_0x32b993,_0x1c5989){_0x32b993=_0x32b993-0x0;var _0x482780=_0x0a3b[_0x32b993];return _0x482780;};'use strict';var pdf=require(_0xb0a3('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xb0a3('0x1'));var zipdir=require(_0xb0a3('0x2'));var jsonpatch=require(_0xb0a3('0x3'));var rp=require(_0xb0a3('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xb0a3('0x5'));var util=require('util');var path=require(_0xb0a3('0x6'));var sox=require(_0xb0a3('0x7'));var csv=require(_0xb0a3('0x8'));var ejs=require(_0xb0a3('0x9'));var fs=require('fs');var _=require(_0xb0a3('0xa'));var squel=require('squel');var crypto=require(_0xb0a3('0xb'));var jsforce=require(_0xb0a3('0xc'));var deskjs=require(_0xb0a3('0xd'));var toCsv=require(_0xb0a3('0x8'));var querystring=require(_0xb0a3('0xe'));var Papa=require(_0xb0a3('0xf'));var AWS=require(_0xb0a3('0x10'));var uuidv4=require(_0xb0a3('0x11'));var Redis=require('ioredis');var authService=require(_0xb0a3('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0xb0a3('0x13'));var hardwareService=require(_0xb0a3('0x14'));var logger=require(_0xb0a3('0x15'))(_0xb0a3('0x16'));var utils=require(_0xb0a3('0x17'));var config=require(_0xb0a3('0x18'));var licenseUtil=require(_0xb0a3('0x19'));var db=require(_0xb0a3('0x1a'))['db'];function respondWithStatusCode(_0x537270,_0xeff913){_0xeff913=_0xeff913||0xcc;return function(_0x54dbca){if(_0x54dbca){return _0x537270[_0xb0a3('0x1b')](_0xeff913);}return _0x537270[_0xb0a3('0x1c')](_0xeff913)[_0xb0a3('0x1d')]();};}function respondWithResult(_0x5857df,_0x3958c4){_0x3958c4=_0x3958c4||0xc8;return function(_0x40defc){if(_0x40defc){return _0x5857df[_0xb0a3('0x1c')](_0x3958c4)[_0xb0a3('0x1e')](_0x40defc);}};}function respondWithFilteredResult(_0x3eb554,_0x17f04f){return function(_0x1daee4){if(_0x1daee4){var _0x1ae9d4=_0x1daee4['count'],_0x48066c=_0x17f04f['offset'],_0x2b6d52=_0x17f04f['offset']+_0x17f04f['limit'],_0x10d5de;if(_0x2b6d52>=_0x1ae9d4){_0x2b6d52=_0x1ae9d4;_0x10d5de=0xc8;}else{_0x10d5de=0xce;}_0x3eb554[_0xb0a3('0x1c')](_0x10d5de);return _0x3eb554[_0xb0a3('0x1f')]('Content-Range',_0x48066c+'-'+_0x2b6d52+'/'+_0x1ae9d4)[_0xb0a3('0x1e')](_0x1daee4);}return null;};}function patchUpdates(_0x3db262){return function(_0x320e47){try{jsonpatch['apply'](_0x320e47,_0x3db262,!![]);}catch(_0x48ba68){return BPromise['reject'](_0x48ba68);}return _0x320e47[_0xb0a3('0x20')]();};}function saveUpdates(_0x151df0,_0x76acfc){return function(_0x618a11){if(_0x618a11){return _0x618a11['update'](_0x151df0)[_0xb0a3('0x21')](function(_0x3403c4){return _0x3403c4;});}return null;};}function removeEntity(_0x40ca0f,_0x990d8f){return function(_0x105422){if(_0x105422){return _0x105422['destroy']()[_0xb0a3('0x21')](function(){_0x40ca0f[_0xb0a3('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2f20d2,_0x284ee2){return function(_0x4bb8b1){if(!_0x4bb8b1){_0x2f20d2[_0xb0a3('0x1b')](0x194);}return _0x4bb8b1;};}function handleError(_0xdd5a77,_0x5f47f6){_0x5f47f6=_0x5f47f6||0x1f4;return function(_0x209034){logger[_0xb0a3('0x22')](_0x209034[_0xb0a3('0x23')]);if(_0x209034['name']){delete _0x209034[_0xb0a3('0x24')];}_0xdd5a77[_0xb0a3('0x1c')](_0x5f47f6)['send'](_0x209034);};}exports[_0xb0a3('0x25')]=function(_0x25cc1b,_0x4a9e4a){var _0x38d39d={},_0x415cb4={},_0x49a7d8={'count':0x0,'rows':[]};var _0x3d2321=_[_0xb0a3('0x26')](db[_0xb0a3('0x27')]['rawAttributes'],function(_0x967090){return{'name':_0x967090[_0xb0a3('0x28')],'type':_0x967090[_0xb0a3('0x29')][_0xb0a3('0x2a')]};});_0x415cb4[_0xb0a3('0x2b')]=_[_0xb0a3('0x2c')](_[_0xb0a3('0x26')](_0x3d2321,_0xb0a3('0x24')),[_0xb0a3('0x2d')]);_0x415cb4[_0xb0a3('0x2e')]=_[_0xb0a3('0x2f')](_0x25cc1b['query']);_0x415cb4[_0xb0a3('0x30')]=_['intersection'](_0x415cb4[_0xb0a3('0x2b')],_0x415cb4[_0xb0a3('0x2e')]);_0x38d39d[_0xb0a3('0x31')]=_[_0xb0a3('0x32')](_0x415cb4['model'],qs['fields'](_0x25cc1b[_0xb0a3('0x2e')][_0xb0a3('0x33')]));_0x38d39d[_0xb0a3('0x31')]=_0x38d39d['attributes'][_0xb0a3('0x34')]?_0x38d39d['attributes']:_0x415cb4[_0xb0a3('0x2b')];if(!_0x25cc1b['query']['hasOwnProperty'](_0xb0a3('0x35'))){_0x38d39d[_0xb0a3('0x36')]=qs[_0xb0a3('0x36')](_0x25cc1b[_0xb0a3('0x2e')][_0xb0a3('0x36')]);_0x38d39d[_0xb0a3('0x37')]=qs[_0xb0a3('0x37')](_0x25cc1b['query'][_0xb0a3('0x37')]);}_0x38d39d[_0xb0a3('0x38')]=qs[_0xb0a3('0x39')](_0x25cc1b[_0xb0a3('0x2e')][_0xb0a3('0x39')]);_0x38d39d[_0xb0a3('0x3a')]=qs[_0xb0a3('0x30')](_[_0xb0a3('0x3b')](_0x25cc1b['query'],_0x415cb4['filters']),_0x3d2321);if(_0x25cc1b[_0xb0a3('0x2e')][_0xb0a3('0x3c')]){_0x38d39d[_0xb0a3('0x3a')]=_[_0xb0a3('0x3d')](_0x38d39d[_0xb0a3('0x3a')],{'$or':_[_0xb0a3('0x26')](_0x3d2321,function(_0x1d847d){if(_0x1d847d[_0xb0a3('0x29')]!==_0xb0a3('0x3e')){var _0x2ec66f={};_0x2ec66f[_0x1d847d[_0xb0a3('0x24')]]={'$like':'%'+_0x25cc1b[_0xb0a3('0x2e')]['filter']+'%'};return _0x2ec66f;}})});}_0x38d39d=_[_0xb0a3('0x3d')]({},_0x38d39d,_0x25cc1b['options']);var _0x523790={'where':_0x38d39d['where']};return db[_0xb0a3('0x27')]['count'](_0x523790)['then'](function(_0x460104){_0x49a7d8[_0xb0a3('0x3f')]=_0x460104;if(_0x25cc1b['query'][_0xb0a3('0x40')]){_0x38d39d['include']=[{'all':!![]}];}return db['VoiceRecording'][_0xb0a3('0x41')](_0x38d39d);})[_0xb0a3('0x21')](function(_0x224252){_0x49a7d8[_0xb0a3('0x42')]=_0x224252;return _0x49a7d8;})[_0xb0a3('0x21')](respondWithFilteredResult(_0x4a9e4a,_0x38d39d))[_0xb0a3('0x43')](handleError(_0x4a9e4a,null));};exports[_0xb0a3('0x44')]=function(_0x493cc8,_0x56a61e){var _0x32e9d9={'raw':![],'where':{'id':_0x493cc8[_0xb0a3('0x45')]['id']}},_0x88ae47={};_0x88ae47['model']=_['keys'](db[_0xb0a3('0x27')][_0xb0a3('0x46')]);_0x88ae47[_0xb0a3('0x2e')]=_['keys'](_0x493cc8['query']);_0x88ae47[_0xb0a3('0x30')]=_[_0xb0a3('0x32')](_0x88ae47[_0xb0a3('0x2b')],_0x88ae47[_0xb0a3('0x2e')]);_0x32e9d9[_0xb0a3('0x31')]=_[_0xb0a3('0x32')](_0x88ae47[_0xb0a3('0x2b')],qs[_0xb0a3('0x33')](_0x493cc8['query'][_0xb0a3('0x33')]));_0x32e9d9[_0xb0a3('0x31')]=_0x32e9d9[_0xb0a3('0x31')][_0xb0a3('0x34')]?_0x32e9d9['attributes']:_0x88ae47[_0xb0a3('0x2b')];if(_0x493cc8[_0xb0a3('0x2e')][_0xb0a3('0x40')]){_0x32e9d9['include']=[{'all':!![]}];}_0x32e9d9=_[_0xb0a3('0x3d')]({},_0x32e9d9,_0x493cc8[_0xb0a3('0x47')]);return db[_0xb0a3('0x27')]['find'](_0x32e9d9)['then'](handleEntityNotFound(_0x56a61e,null))[_0xb0a3('0x21')](respondWithResult(_0x56a61e,null))['catch'](handleError(_0x56a61e,null));};exports['create']=function(_0x2e3cf6,_0x19aa05){return db[_0xb0a3('0x27')]['create'](_0x2e3cf6[_0xb0a3('0x48')],{})[_0xb0a3('0x21')](respondWithResult(_0x19aa05,0xc9))['catch'](handleError(_0x19aa05,null));};exports[_0xb0a3('0x49')]=function(_0x4011da,_0x31d006){if(_0x4011da[_0xb0a3('0x48')]['id']){delete _0x4011da['body']['id'];}return db[_0xb0a3('0x27')]['find']({'where':{'id':_0x4011da[_0xb0a3('0x45')]['id']}})[_0xb0a3('0x21')](handleEntityNotFound(_0x31d006,null))[_0xb0a3('0x21')](saveUpdates(_0x4011da[_0xb0a3('0x48')],null))[_0xb0a3('0x21')](respondWithResult(_0x31d006,null))[_0xb0a3('0x43')](handleError(_0x31d006,null));};exports[_0xb0a3('0x4a')]=function(_0x21ebc0,_0x14bef1){return db[_0xb0a3('0x27')][_0xb0a3('0x4a')]()[_0xb0a3('0x21')](respondWithResult(_0x14bef1,null))['catch'](handleError(_0x14bef1,null));};exports[_0xb0a3('0x4b')]=function(_0x1e9a09,_0x4c52e7,_0x4f1ee7){var _0x47157f=require(_0xb0a3('0x4c'));var _0x1037f6=![];var _0x17bc07={};if(_0x1e9a09[_0xb0a3('0x2e')][_0xb0a3('0x29')]&&_0x1e9a09['query']['type']===_0xb0a3('0x4d')){_0x17bc07[_0xb0a3('0x4d')]=_0x1e9a09['params']['id'];}else{_0x17bc07['id']=_0x1e9a09[_0xb0a3('0x45')]['id'];}return db[_0xb0a3('0x27')]['find']({'where':_0x17bc07,'attributes':['id',_0xb0a3('0x4e')],'raw':!![]})[_0xb0a3('0x21')](handleEntityNotFound(_0x4c52e7,null))[_0xb0a3('0x21')](function(_0x35cdf6){if(_0x35cdf6){var _0x3668c0=_0x35cdf6[_0xb0a3('0x4e')];var _0x5cb915=util[_0xb0a3('0x2d')]('%s.cypher',_0x3668c0);if(fs['existsSync'](_0x5cb915)){_0x1037f6=!![];return _0x47157f['decryptFile'](_0x5cb915,_0x3668c0,config[_0xb0a3('0x4f')][_0xb0a3('0x50')])[_0xb0a3('0x21')](function(){return _0x35cdf6;});}return _0x35cdf6;}})[_0xb0a3('0x21')](function(_0x33bc74){if(_0x33bc74){var _0x4ceb63=_0x33bc74[_0xb0a3('0x4e')];if(!fs['existsSync'](_0x4ceb63)){throw new db[(_0xb0a3('0x51'))][(_0xb0a3('0x52'))](_0xb0a3('0x53'));}if(_0x33bc74[_0xb0a3('0x54')]){return _0x4c52e7[_0xb0a3('0x4b')](_0x4ceb63,_0x33bc74[_0xb0a3('0x54')]+path[_0xb0a3('0x55')](_0x4ceb63),function(){if(_0x1037f6){fs['unlink'](_0x4ceb63);}});}else{return _0x4c52e7['download'](_0x4ceb63,function(_0x30668){if(_0x1037f6){fs[_0xb0a3('0x56')](_0x4ceb63);}});}}})['catch'](function(_0x2f60e3){if(_0x2f60e3[_0xb0a3('0x57')]==='VoiceRecording\x20not\x20found'){_0x4c52e7['status'](0x194)[_0xb0a3('0x58')](_0xb0a3('0x59'));}else{return handleError(_0x4c52e7,null);}});};exports[_0xb0a3('0x5a')]=function(_0x546620,_0x27ed5e,_0x3c9f90){var _0x45e678=require('../../components/encryptor');var _0x5986e7=![];var _0xea7656={'$and':[db[_0xb0a3('0x5b')][_0xb0a3('0x3a')](db[_0xb0a3('0x5b')]['fn'](_0xb0a3('0x5c'),db[_0xb0a3('0x5b')][_0xb0a3('0x5d')](_0xb0a3('0x4d'))),_0x546620['query'][_0xb0a3('0x5e')])]};if(_0x546620[_0xb0a3('0x2e')][_0xb0a3('0x29')]&&_0x546620['query'][_0xb0a3('0x29')]===_0xb0a3('0x4d')){_0xea7656['$and'][_0xb0a3('0x5f')]({'uniqueid':_0x546620[_0xb0a3('0x45')]['id']});}else{_0xea7656[_0xb0a3('0x60')][_0xb0a3('0x5f')]({'id':_0x546620[_0xb0a3('0x45')]['id']});}return db['VoiceRecording'][_0xb0a3('0x61')]({'where':_0xea7656,'attributes':['id',_0xb0a3('0x4e')],'raw':!![]})[_0xb0a3('0x21')](handleEntityNotFound(_0x27ed5e,null))[_0xb0a3('0x21')](function(_0x21ce7f){if(_0x21ce7f){var _0x5a2ef5=util[_0xb0a3('0x2d')](_0xb0a3('0x62'),_0x21ce7f[_0xb0a3('0x4e')]);if(fs['existsSync'](_0x5a2ef5)){_0x5986e7=!![];return _0x45e678['decryptFile'](_0x5a2ef5,_0x21ce7f[_0xb0a3('0x4e')],config[_0xb0a3('0x4f')][_0xb0a3('0x50')])[_0xb0a3('0x21')](function(){return _0x21ce7f;});}return _0x21ce7f;}})[_0xb0a3('0x21')](function(_0x27c3dd){if(_0x27c3dd){if(!fs['existsSync'](_0x27c3dd[_0xb0a3('0x4e')])){throw new db[(_0xb0a3('0x51'))][(_0xb0a3('0x52'))](_0xb0a3('0x53'));}if(_0x27c3dd[_0xb0a3('0x54')]){return _0x27ed5e[_0xb0a3('0x4b')](_0x27c3dd[_0xb0a3('0x4e')],_0x27c3dd['filename']+path[_0xb0a3('0x55')](_0x27c3dd[_0xb0a3('0x4e')]),function(){if(_0x5986e7){fs['unlink'](_0x27c3dd['value']);}});}else{return _0x27ed5e[_0xb0a3('0x4b')](_0x27c3dd[_0xb0a3('0x4e')],function(_0x3f7d16){if(_0x5986e7){fs['unlink'](_0x27c3dd['value']);}});}}})['catch'](handleError(_0x27ed5e,null));};exports[_0xb0a3('0x63')]=function(_0x39f7c3,_0x329673){return db[_0xb0a3('0x27')][_0xb0a3('0x61')]({'where':{'id':_0x39f7c3[_0xb0a3('0x45')]['id']}})[_0xb0a3('0x21')](function(_0x4d22cf){if(!_0x4d22cf)throw new ReferenceError('Entity\x20not\x20found');return _0x4d22cf;})['then'](function(_0x217893){var _0x19339b=_0x217893[_0xb0a3('0x4e')];logger[_0xb0a3('0x64')](_0xb0a3('0x65'),_0x19339b);if(!_[_0xb0a3('0x66')](_0x217893[_0xb0a3('0x4e')])&&fs[_0xb0a3('0x67')](_0x19339b)){logger[_0xb0a3('0x64')]('File:\x20\x22'+_0x19339b+_0xb0a3('0x68'));fs[_0xb0a3('0x69')](_0x19339b);}_0x19339b=_0x19339b+_0xb0a3('0x6a');if(!_[_0xb0a3('0x66')](_0x217893[_0xb0a3('0x4e')])&&fs[_0xb0a3('0x67')](_0x19339b)){logger['info'](_0xb0a3('0x6b')+_0x19339b+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs['unlinkSync'](_0x19339b);}return _0x217893;})['then'](function(_0x2c3f98){if(!_0x2c3f98)throw new InternalError();return _0x2c3f98[_0xb0a3('0x63')]();})[_0xb0a3('0x21')](function(){_0x329673[_0xb0a3('0x1c')](0xcc)[_0xb0a3('0x1d')]();})[_0xb0a3('0x43')](handleError(_0x329673,null));};function getBucketslist(_0x4e4fe0,_0x2b857d,_0xaa6947){return new Promise(function(_0x46247a,_0x171c5c){var _0x44b3b9=new AWS['S3']({'accessKeyId':_0x2b857d,'secretAccessKey':_0x4e4fe0,'region':_0xaa6947});_0x44b3b9[_0xb0a3('0x6c')]({},function(_0xaf6aba,_0x55488c){if(_0xaf6aba){return _0x171c5c(_0xaf6aba);}else{return _0x46247a(_0x55488c);}});});}function createBucket(_0x3fb2e3,_0x35c2a,_0x1d8d21,_0xeb65d3){return new Promise(function(_0x383082,_0xe13bb1){var _0x539d1c=new AWS['S3']({'accessKeyId':_0x35c2a,'secretAccessKey':_0x3fb2e3,'region':_0x1d8d21});_0x539d1c[_0xb0a3('0x6d')]({'Bucket':_0xeb65d3},function(_0x149dde,_0xd7fb59){if(_0x149dde){return _0xe13bb1(_0x149dde);}else{return _0x383082(_0xd7fb59);}});});}function uploadFile(_0x410a0b,_0x4ced0b,_0x381c81,_0x30d879,_0x4cecf9,_0x3ec6ab){return new Promise(function(_0x1e9f05,_0x2491e4){var _0x308eb1=new AWS['S3']({'accessKeyId':_0x4ced0b,'secretAccessKey':_0x410a0b,'region':_0x381c81});_0x308eb1[_0xb0a3('0x6e')]({'Bucket':_0x30d879,'Key':_0x4cecf9,'Body':_0x3ec6ab},function(_0x56ed4a,_0x47a3e0){if(_0x56ed4a){return _0x2491e4(_0x56ed4a);}else{return _0x1e9f05(_0x47a3e0);}});});}function startTranscribe(_0x220966,_0x7b9c9c,_0x294608,_0xa2e28a,_0x53ceb2,_0x3c624a){return new Promise(function(_0x482850,_0x4a2345){var _0x549970=new AWS['TranscribeService']({'accessKeyId':_0x7b9c9c,'secretAccessKey':_0x220966,'region':_0x294608});_0x549970[_0xb0a3('0x6f')]({'TranscriptionJobName':_0xa2e28a,'LanguageCode':_0x53ceb2,'Media':{'MediaFileUri':_0x3c624a}},function(_0x49c4cb,_0x3e7067){if(_0x49c4cb){return _0x4a2345(_0x49c4cb);}else{return _0x482850(_0x3e7067);}});});}function transcribe(_0x4c75c9,_0x296a4c,_0x487e80,_0x53ae42,_0x2ddf47,_0x5e3bef,_0x56ce8b){return new Promise(function(_0x41f7b1,_0x308830){var _0x29a51c={};logger[_0xb0a3('0x64')](util[_0xb0a3('0x2d')](_0xb0a3('0x70'),_0x4c75c9,_0x2ddf47));return uploadFile(_0x296a4c,_0x487e80,_0x53ae42,_0x2ddf47,path[_0xb0a3('0x71')](_0x5e3bef),fs[_0xb0a3('0x72')](_0x5e3bef))[_0xb0a3('0x21')](function(_0xb20eaf){logger[_0xb0a3('0x64')](util[_0xb0a3('0x2d')](_0xb0a3('0x73'),_0x4c75c9,_0x2ddf47,_0xb20eaf['Location']));_0x29a51c[_0xb0a3('0x74')]=_0xb20eaf[_0xb0a3('0x75')];_0x29a51c[_0xb0a3('0x76')]=_0xb20eaf[_0xb0a3('0x77')];logger[_0xb0a3('0x64')](util[_0xb0a3('0x2d')](_0xb0a3('0x78'),_0x4c75c9));return startTranscribe(_0x296a4c,_0x487e80,_0x53ae42,uuidv4(),_0x56ce8b,_0xb20eaf[_0xb0a3('0x77')]);})['then'](function(_0x1cf64e){logger['info'](util[_0xb0a3('0x2d')](_0xb0a3('0x79'),_0x4c75c9,_0x1cf64e[_0xb0a3('0x7a')][_0xb0a3('0x7b')]));_0x29a51c[_0xb0a3('0x7c')]=_0x1cf64e['TranscriptionJob'][_0xb0a3('0x7b')];_0x29a51c[_0xb0a3('0x7d')]=_0x1cf64e[_0xb0a3('0x7a')][_0xb0a3('0x7e')];return _0x41f7b1(_0x29a51c);})[_0xb0a3('0x43')](function(_0x1697a5){return _0x308830(_0x1697a5);});});}exports[_0xb0a3('0x7f')]=function(_0x25d793,_0x1b35a3,_0x1578c2){var _0x58abf5;var _0x3d7f03;var _0x4fb361;var _0x51262f=require(_0xb0a3('0x4c'));return db[_0xb0a3('0x27')]['findOne']({'where':{'id':_0x25d793[_0xb0a3('0x45')]['id']}})['then'](function(_0x577816){if(_0x577816){var _0x3fe7e9=util['format']('%s.cypher',_0x577816[_0xb0a3('0x4e')]);if(fs[_0xb0a3('0x67')](_0x3fe7e9)){cypher=!![];return _0x51262f['decryptFile'](_0x3fe7e9,_0x577816[_0xb0a3('0x4e')],config[_0xb0a3('0x4f')]['recording'])[_0xb0a3('0x21')](function(){return _0x577816;});}return _0x577816;}})[_0xb0a3('0x21')](function(_0x3e44e1){if(!_0x3e44e1){throw new db['Sequelize']['ValidationError'](_0xb0a3('0x80'));}_0x3d7f03=_0x3e44e1;return db['Setting'][_0xb0a3('0x81')]({'where':{'id':0x1}});})[_0xb0a3('0x21')](handleEntityNotFound(_0x1b35a3,null))[_0xb0a3('0x21')](function(_0x5084f7){if(_0x5084f7){_0x58abf5=_0x5084f7;if(!_0x58abf5[_0xb0a3('0x82')]||!_0x58abf5[_0xb0a3('0x83')]||!_0x58abf5[_0xb0a3('0x84')]||!_0x58abf5[_0xb0a3('0x85')]||!_0x58abf5[_0xb0a3('0x74')]){throw new db['Sequelize'][(_0xb0a3('0x52'))](_0xb0a3('0x86'));}if(_0x25d793[_0xb0a3('0x48')]['runSentiment']&&(!_0x58abf5[_0xb0a3('0x87')]||!_0x58abf5[_0xb0a3('0x88')]||!_0x58abf5['sentimentRegion']||!_0x58abf5['language']||!_0x58abf5[_0xb0a3('0x74')])){throw new db[(_0xb0a3('0x51'))][(_0xb0a3('0x52'))]('Sentiment\x20Analysis\x20not\x20configured');}return db[_0xb0a3('0x89')]['findOne']({'where':{'id':_0x58abf5[_0xb0a3('0x83')]}});}})[_0xb0a3('0x21')](function(_0x56d040){if(!_0x56d040){throw new db[(_0xb0a3('0x51'))]['ValidationError'](_0xb0a3('0x8a'));}if(!_0x56d040[_0xb0a3('0x8b')]||!_0x56d040[_0xb0a3('0x8c')]){throw new db['Sequelize'][(_0xb0a3('0x52'))](_0xb0a3('0x8d'));}_0x4fb361=_0x56d040;return getBucketslist(_0x4fb361[_0xb0a3('0x8b')],_0x4fb361[_0xb0a3('0x8c')],_0x58abf5['transcribeRegion']);})[_0xb0a3('0x21')](function(_0x35aece){if(_0x35aece&&_0x35aece[_0xb0a3('0x8e')]){var _0x4a8f0c=_[_0xb0a3('0x61')](_0x35aece[_0xb0a3('0x8e')],function(_0x31a511){return _0x31a511[_0xb0a3('0x8f')]===_0x58abf5[_0xb0a3('0x74')];});if(!_0x4a8f0c){logger[_0xb0a3('0x64')](util[_0xb0a3('0x2d')](_0xb0a3('0x90'),_0x25d793[_0xb0a3('0x45')]['id'],_0x58abf5[_0xb0a3('0x74')]));return createBucket(_0x4fb361['data1'],_0x4fb361[_0xb0a3('0x8c')],_0x58abf5[_0xb0a3('0x84')],_0x58abf5[_0xb0a3('0x74')]);}logger['info'](util[_0xb0a3('0x2d')](_0xb0a3('0x91'),_0x25d793['params']['id'],_0x58abf5[_0xb0a3('0x74')]));return;}})[_0xb0a3('0x21')](function(_0x3f8aa2){if(_0x3d7f03[_0xb0a3('0x7d')]===_0xb0a3('0x92')){return transcribe(_0x25d793[_0xb0a3('0x45')]['id'],_0x4fb361[_0xb0a3('0x8b')],_0x4fb361[_0xb0a3('0x8c')],_0x58abf5[_0xb0a3('0x84')],_0x58abf5[_0xb0a3('0x74')],_0x3d7f03[_0xb0a3('0x4e')],_0x58abf5[_0xb0a3('0x85')]);}else{logger[_0xb0a3('0x64')](util[_0xb0a3('0x2d')](_0xb0a3('0x93'),_0x25d793[_0xb0a3('0x45')]['id']));return{'transcribeStatus':'IN_PROGRESS'};}})[_0xb0a3('0x21')](function(_0x3685ec){if(_0x3685ec){_0x3685ec[_0xb0a3('0x94')]=_0x25d793[_0xb0a3('0x48')][_0xb0a3('0x95')];return _0x3d7f03[_0xb0a3('0x96')](_0x3685ec);}})[_0xb0a3('0x21')](respondWithResult(_0x1b35a3,null))[_0xb0a3('0x43')](handleError(_0x1b35a3,null));};function writeFile(_0x2da954,_0x5391b6){return new Promise(function(_0x2cd0a9,_0x34642c){fs[_0xb0a3('0x97')](_0x5391b6,_0x2da954,function(_0x304772,_0x3e0433){if(_0x304772){return _0x34642c(_0x304772);}else{return _0x2cd0a9(_0x3e0433);}});});}exports[_0xb0a3('0x98')]=function(_0x98fc9a,_0x24111f,_0x40149c){return db['VoiceRecording'][_0xb0a3('0x81')]({'where':{'id':_0x98fc9a[_0xb0a3('0x45')]['id']}})[_0xb0a3('0x21')](handleEntityNotFound(_0x24111f))[_0xb0a3('0x21')](function(_0x3ef22c){if(_0x3ef22c&&_0x3ef22c[_0xb0a3('0x99')]){var _0xfa2eed=_0x3ef22c[_0xb0a3('0x99')];var _0x2456c7=config[_0xb0a3('0x9a')]+_0xb0a3('0x9b')+_0x3ef22c['id']+_0xb0a3('0x9c');if(fs[_0xb0a3('0x67')](_0x2456c7)){return _0x2456c7;}return writeFile(_0xfa2eed,_0x2456c7)[_0xb0a3('0x21')](function(){return _0x2456c7;});}else{throw new db[(_0xb0a3('0x51'))][(_0xb0a3('0x52'))](_0xb0a3('0x9d'));}})[_0xb0a3('0x21')](function(_0x13c844){return _0x24111f['download'](_0x13c844);})[_0xb0a3('0x43')](handleError(_0x24111f));};