Built motion from commit 953226e6.|2.6.32
[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 _0x75b6=['json','offset','undefined','limit','count','set','reject','save','destroy','then','stack','name','send','index','map','VoiceRecording','rawAttributes','fieldName','type','format','keys','intersection','model','query','fields','attributes','length','hasOwnProperty','sort','where','filters','pick','filter','merge','VIRTUAL','includeAll','rows','catch','include','options','find','create','body','update','params','describe','download','uniqueid','value','existsSync','decryptFile','secrets','recording','ValidationError','VoiceRecording\x20not\x20found','filename','extname','unlink','Not\x20found','downloads','sequelize','MD5','col','$and','push','%s.cypher','Sequelize','isNil','Entity\x20not\x20found','info','cancellazione\x20fisica\x20documento\x20%s','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','upload','TranscribeService','[RUNTRANSCRIPT][%d]\x20Voice\x20recording\x20uploaded\x20in\x20bucket\x20%s\x20(%s)','Location','Bucket','location','[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created','TranscriptionJobName','transcribeName','TranscriptionJob','transcribeStatus','TranscriptionJobStatus','runTranscribe','findOne','transcribe','transcribeRegion','language','Transcribe\x20not\x20configured','runSentiment','sentiment','sentimentAccountId','bucket','Sentiment\x20Analysis\x20not\x20configured','CloudProvider','transcribeAccountId','Cloud\x20Provider\x20not\x20available','data2','Cloud\x20Provider\x20not\x20configured','data1','Buckets','Name','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available','NEW','tempSentiment','updateAttributes','downloadTranscribe','fileText','root','/server/files/transcribes/transcribe_','.txt','eml-format','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','fs-extra','lodash','crypto','jsforce','querystring','papaparse','uuid/v4','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status'];(function(_0x45c4ac,_0xaf5b27){var _0x3046cb=function(_0x554354){while(--_0x554354){_0x45c4ac['push'](_0x45c4ac['shift']());}};_0x3046cb(++_0xaf5b27);}(_0x75b6,0x74));var _0x675b=function(_0x321bb2,_0x202794){_0x321bb2=_0x321bb2-0x0;var _0x9c12ed=_0x75b6[_0x321bb2];return _0x9c12ed;};'use strict';var emlformat=require(_0x675b('0x0'));var rimraf=require(_0x675b('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x675b('0x2'));var rp=require(_0x675b('0x3'));var moment=require('moment');var BPromise=require(_0x675b('0x4'));var Mustache=require(_0x675b('0x5'));var util=require(_0x675b('0x6'));var path=require(_0x675b('0x7'));var sox=require('sox');var csv=require(_0x675b('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x675b('0x9'));var _=require(_0x675b('0xa'));var squel=require('squel');var crypto=require(_0x675b('0xb'));var jsforce=require(_0x675b('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x675b('0xd'));var Papa=require(_0x675b('0xe'));var AWS=require('aws-sdk');var uuidv4=require(_0x675b('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x675b('0x10'));var as=require(_0x675b('0x11'));var hardwareService=require(_0x675b('0x12'));var logger=require(_0x675b('0x13'))(_0x675b('0x14'));var utils=require(_0x675b('0x15'));var config=require(_0x675b('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x675b('0x17'))['db'];function respondWithStatusCode(_0x152df8,_0x41f55e){_0x41f55e=_0x41f55e||0xcc;return function(_0x2376d0){if(_0x2376d0){return _0x152df8[_0x675b('0x18')](_0x41f55e);}return _0x152df8['status'](_0x41f55e)[_0x675b('0x19')]();};}function respondWithResult(_0x1af654,_0x5983a6){_0x5983a6=_0x5983a6||0xc8;return function(_0x17b47d){if(_0x17b47d){return _0x1af654[_0x675b('0x1a')](_0x5983a6)[_0x675b('0x1b')](_0x17b47d);}};}function respondWithFilteredResult(_0x13b4b4,_0x5219c9){return function(_0x545600){if(_0x545600){var _0x325ef8=typeof _0x5219c9[_0x675b('0x1c')]===_0x675b('0x1d')&&typeof _0x5219c9[_0x675b('0x1e')]==='undefined';var _0x3c3359=_0x545600[_0x675b('0x1f')];var _0x8b532f=_0x325ef8?0x0:_0x5219c9[_0x675b('0x1c')];var _0x51fe5b=_0x325ef8?_0x545600[_0x675b('0x1f')]:_0x5219c9[_0x675b('0x1c')]+_0x5219c9[_0x675b('0x1e')];var _0x2d4ac9;if(_0x51fe5b>=_0x3c3359){_0x51fe5b=_0x3c3359;_0x2d4ac9=0xc8;}else{_0x2d4ac9=0xce;}_0x13b4b4[_0x675b('0x1a')](_0x2d4ac9);return _0x13b4b4[_0x675b('0x20')]('Content-Range',_0x8b532f+'-'+_0x51fe5b+'/'+_0x3c3359)[_0x675b('0x1b')](_0x545600);}return null;};}function patchUpdates(_0x46176c){return function(_0x441714){try{jsonpatch['apply'](_0x441714,_0x46176c,!![]);}catch(_0x2424ea){return BPromise[_0x675b('0x21')](_0x2424ea);}return _0x441714[_0x675b('0x22')]();};}function saveUpdates(_0x40b202,_0x4d9554){return function(_0x47c0c5){if(_0x47c0c5){return _0x47c0c5['update'](_0x40b202)['then'](function(_0x2597a2){return _0x2597a2;});}return null;};}function removeEntity(_0x348059,_0x59672a){return function(_0x2e4fac){if(_0x2e4fac){return _0x2e4fac[_0x675b('0x23')]()[_0x675b('0x24')](function(){_0x348059[_0x675b('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x51f30d,_0x1a98d5){return function(_0x3a6286){if(!_0x3a6286){_0x51f30d[_0x675b('0x18')](0x194);}return _0x3a6286;};}function handleError(_0x1d0cc9,_0x144c62){_0x144c62=_0x144c62||0x1f4;return function(_0x1e2dac){logger['error'](_0x1e2dac[_0x675b('0x25')]);if(_0x1e2dac[_0x675b('0x26')]){delete _0x1e2dac['name'];}_0x1d0cc9[_0x675b('0x1a')](_0x144c62)[_0x675b('0x27')](_0x1e2dac);};}exports[_0x675b('0x28')]=function(_0xe0d58a,_0x1bb0dc){var _0xf76e73={},_0x6c0a1c={},_0x15f58d={'count':0x0,'rows':[]};var _0x199c1f=_[_0x675b('0x29')](db[_0x675b('0x2a')][_0x675b('0x2b')],function(_0x40032d){return{'name':_0x40032d[_0x675b('0x2c')],'type':_0x40032d[_0x675b('0x2d')]['key']};});_0x6c0a1c['model']=_['differenceBy'](_[_0x675b('0x29')](_0x199c1f,'name'),[_0x675b('0x2e')]);_0x6c0a1c['query']=_[_0x675b('0x2f')](_0xe0d58a['query']);_0x6c0a1c['filters']=_[_0x675b('0x30')](_0x6c0a1c[_0x675b('0x31')],_0x6c0a1c[_0x675b('0x32')]);_0xf76e73['attributes']=_['intersection'](_0x6c0a1c[_0x675b('0x31')],qs['fields'](_0xe0d58a[_0x675b('0x32')][_0x675b('0x33')]));_0xf76e73[_0x675b('0x34')]=_0xf76e73[_0x675b('0x34')][_0x675b('0x35')]?_0xf76e73['attributes']:_0x6c0a1c['model'];if(!_0xe0d58a['query'][_0x675b('0x36')]('nolimit')){_0xf76e73[_0x675b('0x1e')]=qs[_0x675b('0x1e')](_0xe0d58a['query'][_0x675b('0x1e')]);_0xf76e73[_0x675b('0x1c')]=qs[_0x675b('0x1c')](_0xe0d58a['query'][_0x675b('0x1c')]);}_0xf76e73['order']=qs[_0x675b('0x37')](_0xe0d58a['query']['sort']);_0xf76e73[_0x675b('0x38')]=qs[_0x675b('0x39')](_[_0x675b('0x3a')](_0xe0d58a[_0x675b('0x32')],_0x6c0a1c['filters']),_0x199c1f);if(_0xe0d58a[_0x675b('0x32')][_0x675b('0x3b')]){_0xf76e73['where']=_[_0x675b('0x3c')](_0xf76e73[_0x675b('0x38')],{'$or':_[_0x675b('0x29')](_0x199c1f,function(_0x45436e){if(_0x45436e[_0x675b('0x2d')]!==_0x675b('0x3d')){var _0x156a2d={};_0x156a2d[_0x45436e[_0x675b('0x26')]]={'$like':'%'+_0xe0d58a['query'][_0x675b('0x3b')]+'%'};return _0x156a2d;}})});}_0xf76e73=_[_0x675b('0x3c')]({},_0xf76e73,_0xe0d58a['options']);var _0x333d04={'where':_0xf76e73['where']};return db[_0x675b('0x2a')]['count'](_0x333d04)[_0x675b('0x24')](function(_0x277026){_0x15f58d[_0x675b('0x1f')]=_0x277026;if(_0xe0d58a[_0x675b('0x32')][_0x675b('0x3e')]){_0xf76e73['include']=[{'all':!![]}];}return db[_0x675b('0x2a')]['findAll'](_0xf76e73);})[_0x675b('0x24')](function(_0x3e1670){_0x15f58d[_0x675b('0x3f')]=_0x3e1670;return _0x15f58d;})[_0x675b('0x24')](respondWithFilteredResult(_0x1bb0dc,_0xf76e73))[_0x675b('0x40')](handleError(_0x1bb0dc,null));};exports['show']=function(_0x4dd86d,_0x1f6728){var _0xcd431b={'raw':![],'where':{'id':_0x4dd86d['params']['id']}},_0x2b054d={};_0x2b054d['model']=_[_0x675b('0x2f')](db[_0x675b('0x2a')][_0x675b('0x2b')]);_0x2b054d[_0x675b('0x32')]=_[_0x675b('0x2f')](_0x4dd86d[_0x675b('0x32')]);_0x2b054d[_0x675b('0x39')]=_[_0x675b('0x30')](_0x2b054d[_0x675b('0x31')],_0x2b054d[_0x675b('0x32')]);_0xcd431b[_0x675b('0x34')]=_[_0x675b('0x30')](_0x2b054d['model'],qs[_0x675b('0x33')](_0x4dd86d[_0x675b('0x32')][_0x675b('0x33')]));_0xcd431b[_0x675b('0x34')]=_0xcd431b[_0x675b('0x34')]['length']?_0xcd431b[_0x675b('0x34')]:_0x2b054d[_0x675b('0x31')];if(_0x4dd86d[_0x675b('0x32')][_0x675b('0x3e')]){_0xcd431b[_0x675b('0x41')]=[{'all':!![]}];}_0xcd431b=_[_0x675b('0x3c')]({},_0xcd431b,_0x4dd86d[_0x675b('0x42')]);return db[_0x675b('0x2a')][_0x675b('0x43')](_0xcd431b)['then'](handleEntityNotFound(_0x1f6728,null))['then'](respondWithResult(_0x1f6728,null))[_0x675b('0x40')](handleError(_0x1f6728,null));};exports[_0x675b('0x44')]=function(_0x9251c9,_0x41613d){return db['VoiceRecording'][_0x675b('0x44')](_0x9251c9[_0x675b('0x45')],{})[_0x675b('0x24')](respondWithResult(_0x41613d,0xc9))['catch'](handleError(_0x41613d,null));};exports[_0x675b('0x46')]=function(_0x5ec1e6,_0x51194f){if(_0x5ec1e6[_0x675b('0x45')]['id']){delete _0x5ec1e6[_0x675b('0x45')]['id'];}return db[_0x675b('0x2a')]['find']({'where':{'id':_0x5ec1e6[_0x675b('0x47')]['id']}})['then'](handleEntityNotFound(_0x51194f,null))[_0x675b('0x24')](saveUpdates(_0x5ec1e6[_0x675b('0x45')],null))[_0x675b('0x24')](respondWithResult(_0x51194f,null))['catch'](handleError(_0x51194f,null));};exports['describe']=function(_0x912297,_0x38b627){return db['VoiceRecording'][_0x675b('0x48')]()[_0x675b('0x24')](respondWithResult(_0x38b627,null))['catch'](handleError(_0x38b627,null));};exports[_0x675b('0x49')]=function(_0x56f431,_0x160215,_0x4904b1){var _0x3c1c36=require('../../components/encryptor');var _0x19a2cd=![];var _0x3f521c={};if(_0x56f431[_0x675b('0x32')][_0x675b('0x2d')]&&_0x56f431[_0x675b('0x32')][_0x675b('0x2d')]===_0x675b('0x4a')){_0x3f521c[_0x675b('0x4a')]=_0x56f431[_0x675b('0x47')]['id'];}else{_0x3f521c['id']=_0x56f431['params']['id'];}return db[_0x675b('0x2a')]['find']({'where':_0x3f521c,'attributes':['id',_0x675b('0x4b')],'raw':!![]})[_0x675b('0x24')](handleEntityNotFound(_0x160215,null))[_0x675b('0x24')](function(_0x3aa35e){if(_0x3aa35e){var _0x3a9d90=_0x3aa35e[_0x675b('0x4b')];var _0x4c6945=util[_0x675b('0x2e')]('%s.cypher',_0x3a9d90);if(fs[_0x675b('0x4c')](_0x4c6945)){_0x19a2cd=!![];return _0x3c1c36[_0x675b('0x4d')](_0x4c6945,_0x3a9d90,config[_0x675b('0x4e')][_0x675b('0x4f')])[_0x675b('0x24')](function(){return _0x3aa35e;});}return _0x3aa35e;}})[_0x675b('0x24')](function(_0x80116a){if(_0x80116a){var _0x87120d=_0x80116a[_0x675b('0x4b')];if(!fs['existsSync'](_0x87120d)){throw new db['Sequelize'][(_0x675b('0x50'))](_0x675b('0x51'));}if(_0x80116a[_0x675b('0x52')]){return _0x160215[_0x675b('0x49')](_0x87120d,_0x80116a[_0x675b('0x52')]+path[_0x675b('0x53')](_0x87120d),function(){if(_0x19a2cd){fs['unlink'](_0x87120d);}});}else{return _0x160215[_0x675b('0x49')](_0x87120d,function(_0x3c612b){if(_0x19a2cd){fs[_0x675b('0x54')](_0x87120d);}});}}})[_0x675b('0x40')](function(_0xb80230){if(_0xb80230['message']==='VoiceRecording\x20not\x20found'){_0x160215['status'](0x194)[_0x675b('0x27')](_0x675b('0x55'));}else{return handleError(_0x160215,null);}});};exports[_0x675b('0x56')]=function(_0x28ae55,_0x50c689,_0x1936da){var _0x16ae9e=require('../../components/encryptor');var _0x152498=![];var _0x33b184={'$and':[db[_0x675b('0x57')][_0x675b('0x38')](db[_0x675b('0x57')]['fn'](_0x675b('0x58'),db[_0x675b('0x57')][_0x675b('0x59')]('uniqueid')),_0x28ae55['query']['token'])]};if(_0x28ae55['query']['type']&&_0x28ae55[_0x675b('0x32')][_0x675b('0x2d')]===_0x675b('0x4a')){_0x33b184[_0x675b('0x5a')][_0x675b('0x5b')]({'uniqueid':_0x28ae55[_0x675b('0x47')]['id']});}else{_0x33b184[_0x675b('0x5a')][_0x675b('0x5b')]({'id':_0x28ae55['params']['id']});}return db['VoiceRecording']['find']({'where':_0x33b184,'attributes':['id',_0x675b('0x4b')],'raw':!![]})['then'](handleEntityNotFound(_0x50c689,null))['then'](function(_0x33ab17){if(_0x33ab17){var _0x246c3a=util[_0x675b('0x2e')](_0x675b('0x5c'),_0x33ab17[_0x675b('0x4b')]);if(fs[_0x675b('0x4c')](_0x246c3a)){_0x152498=!![];return _0x16ae9e[_0x675b('0x4d')](_0x246c3a,_0x33ab17[_0x675b('0x4b')],config[_0x675b('0x4e')][_0x675b('0x4f')])[_0x675b('0x24')](function(){return _0x33ab17;});}return _0x33ab17;}})[_0x675b('0x24')](function(_0x4a24be){if(_0x4a24be){if(!fs[_0x675b('0x4c')](_0x4a24be[_0x675b('0x4b')])){throw new db[(_0x675b('0x5d'))]['ValidationError'](_0x675b('0x51'));}if(_0x4a24be[_0x675b('0x52')]){return _0x50c689['download'](_0x4a24be[_0x675b('0x4b')],_0x4a24be[_0x675b('0x52')]+path[_0x675b('0x53')](_0x4a24be[_0x675b('0x4b')]),function(){if(_0x152498){fs[_0x675b('0x54')](_0x4a24be['value']);}});}else{return _0x50c689[_0x675b('0x49')](_0x4a24be[_0x675b('0x4b')],function(_0x376ec2){if(_0x152498){fs[_0x675b('0x54')](_0x4a24be[_0x675b('0x4b')]);}});}}})[_0x675b('0x40')](handleError(_0x50c689,null));};exports[_0x675b('0x23')]=function(_0x51359e,_0x2972fd){return db[_0x675b('0x2a')][_0x675b('0x43')]({'where':{'id':_0x51359e[_0x675b('0x47')]['id']}})['then'](function(_0x5baf20){if(_[_0x675b('0x5e')](_0x5baf20)){throw new ReferenceError(_0x675b('0x5f'));}return _0x5baf20;})['then'](function(_0x40b68c){var _0x59a78f=_0x40b68c[_0x675b('0x4b')];logger[_0x675b('0x60')](_0x675b('0x61'),_0x59a78f);if(!_[_0x675b('0x5e')](_0x40b68c['value'])&&fs['existsSync'](_0x59a78f)){logger[_0x675b('0x60')](_0x675b('0x62')+_0x59a78f+_0x675b('0x63'));fs[_0x675b('0x64')](_0x59a78f);}_0x59a78f=_0x59a78f+_0x675b('0x65');if(!_['isNil'](_0x40b68c[_0x675b('0x4b')])&&fs[_0x675b('0x4c')](_0x59a78f)){logger[_0x675b('0x60')](_0x675b('0x62')+_0x59a78f+_0x675b('0x63'));fs[_0x675b('0x64')](_0x59a78f);}return _0x40b68c;})[_0x675b('0x24')](function(_0x538184){if(!_0x538184)throw new InternalError();return _0x538184[_0x675b('0x23')]();})[_0x675b('0x24')](function(){_0x2972fd[_0x675b('0x1a')](0xcc)['end']();})[_0x675b('0x40')](handleError(_0x2972fd,null));};function getBucketslist(_0x48fed4,_0x118a51,_0x2bcffa){return new Promise(function(_0x1579fe,_0x3a1282){var _0xdb33ef=new AWS['S3']({'accessKeyId':_0x118a51,'secretAccessKey':_0x48fed4,'region':_0x2bcffa});_0xdb33ef['listBuckets']({},function(_0xc48f6f,_0x286344){if(_0xc48f6f){return _0x3a1282(_0xc48f6f);}else{return _0x1579fe(_0x286344);}});});}function createBucket(_0x25e5f2,_0x50ba35,_0x3c3374,_0x400071){return new Promise(function(_0x4ec767,_0x29ad1b){var _0x238b97=new AWS['S3']({'accessKeyId':_0x50ba35,'secretAccessKey':_0x25e5f2,'region':_0x3c3374});_0x238b97['createBucket']({'Bucket':_0x400071},function(_0x586c1b,_0x33a5a8){if(_0x586c1b){return _0x29ad1b(_0x586c1b);}else{return _0x4ec767(_0x33a5a8);}});});}function uploadFile(_0x42453a,_0x5a7fde,_0x15df03,_0x3ceef7,_0x56867b,_0x1490ee){return new Promise(function(_0x1fc7a1,_0x17fc05){var _0x32058d=new AWS['S3']({'accessKeyId':_0x5a7fde,'secretAccessKey':_0x42453a,'region':_0x15df03});_0x32058d[_0x675b('0x66')]({'Bucket':_0x3ceef7,'Key':_0x56867b,'Body':_0x1490ee},function(_0x46dd2d,_0x4c3824){if(_0x46dd2d){return _0x17fc05(_0x46dd2d);}else{return _0x1fc7a1(_0x4c3824);}});});}function startTranscribe(_0x4dc51f,_0x53455b,_0x5f0dd6,_0x596e22,_0x20dd8e,_0x318a80){return new Promise(function(_0x2253bc,_0x4c6da6){var _0x4a89a8=new AWS[(_0x675b('0x67'))]({'accessKeyId':_0x53455b,'secretAccessKey':_0x4dc51f,'region':_0x5f0dd6});_0x4a89a8['startTranscriptionJob']({'TranscriptionJobName':_0x596e22,'LanguageCode':_0x20dd8e,'Media':{'MediaFileUri':_0x318a80}},function(_0x31d402,_0x1f6698){if(_0x31d402){return _0x4c6da6(_0x31d402);}else{return _0x2253bc(_0x1f6698);}});});}function transcribe(_0x1778ca,_0xd66681,_0x469560,_0x18a9c9,_0x5b759e,_0x2f8884,_0x81da80){return new Promise(function(_0x496743,_0x1a53c4){var _0x4562b3={};logger[_0x675b('0x60')](util[_0x675b('0x2e')]('[RUNTRANSCRIPT][%d]\x20Starting\x20voice\x20recording\x20upload\x20in\x20bucket\x20%s',_0x1778ca,_0x5b759e));return uploadFile(_0xd66681,_0x469560,_0x18a9c9,_0x5b759e,path['basename'](_0x2f8884),fs['readFileSync'](_0x2f8884))['then'](function(_0x1a3f11){logger['info'](util[_0x675b('0x2e')](_0x675b('0x68'),_0x1778ca,_0x5b759e,_0x1a3f11[_0x675b('0x69')]));_0x4562b3['bucket']=_0x1a3f11[_0x675b('0x6a')];_0x4562b3[_0x675b('0x6b')]=_0x1a3f11['Location'];logger[_0x675b('0x60')](util[_0x675b('0x2e')](_0x675b('0x6c'),_0x1778ca));return startTranscribe(_0xd66681,_0x469560,_0x18a9c9,uuidv4(),_0x81da80,_0x1a3f11['Location']);})[_0x675b('0x24')](function(_0x355f20){logger[_0x675b('0x60')](util[_0x675b('0x2e')](_0x675b('0x6d'),_0x1778ca,_0x355f20['TranscriptionJob'][_0x675b('0x6e')]));_0x4562b3[_0x675b('0x6f')]=_0x355f20[_0x675b('0x70')][_0x675b('0x6e')];_0x4562b3[_0x675b('0x71')]=_0x355f20[_0x675b('0x70')][_0x675b('0x72')];return _0x496743(_0x4562b3);})['catch'](function(_0x4ccc8d){return _0x1a53c4(_0x4ccc8d);});});}exports[_0x675b('0x73')]=function(_0x145d79,_0x591225,_0x298598){var _0x4fff13;var _0x29f31e;var _0x71f6d2;var _0xab06d4=require('../../components/encryptor');return db[_0x675b('0x2a')][_0x675b('0x74')]({'where':{'id':_0x145d79['params']['id']}})['then'](function(_0x321bbb){if(_0x321bbb){var _0x3741d6=util[_0x675b('0x2e')](_0x675b('0x5c'),_0x321bbb[_0x675b('0x4b')]);if(fs[_0x675b('0x4c')](_0x3741d6)){cypher=!![];return _0xab06d4['decryptFile'](_0x3741d6,_0x321bbb[_0x675b('0x4b')],config[_0x675b('0x4e')][_0x675b('0x4f')])[_0x675b('0x24')](function(){return _0x321bbb;});}return _0x321bbb;}})[_0x675b('0x24')](function(_0x2b246e){if(!_0x2b246e){throw new db[(_0x675b('0x5d'))][(_0x675b('0x50'))]('Voice\x20Recording\x20not\x20found');}_0x29f31e=_0x2b246e;return db['Setting']['findOne']({'where':{'id':0x1}});})[_0x675b('0x24')](handleEntityNotFound(_0x591225,null))['then'](function(_0x327cd2){if(_0x327cd2){_0x4fff13=_0x327cd2;if(!_0x4fff13[_0x675b('0x75')]||!_0x4fff13['transcribeAccountId']||!_0x4fff13[_0x675b('0x76')]||!_0x4fff13[_0x675b('0x77')]||!_0x4fff13['bucket']){throw new db[(_0x675b('0x5d'))]['ValidationError'](_0x675b('0x78'));}if(_0x145d79[_0x675b('0x45')][_0x675b('0x79')]&&(!_0x4fff13[_0x675b('0x7a')]||!_0x4fff13[_0x675b('0x7b')]||!_0x4fff13['sentimentRegion']||!_0x4fff13[_0x675b('0x77')]||!_0x4fff13[_0x675b('0x7c')])){throw new db['Sequelize'][(_0x675b('0x50'))](_0x675b('0x7d'));}return db[_0x675b('0x7e')][_0x675b('0x74')]({'where':{'id':_0x4fff13[_0x675b('0x7f')]}});}})[_0x675b('0x24')](function(_0x2b98ec){if(!_0x2b98ec){throw new db[(_0x675b('0x5d'))][(_0x675b('0x50'))](_0x675b('0x80'));}if(!_0x2b98ec['data1']||!_0x2b98ec[_0x675b('0x81')]){throw new db[(_0x675b('0x5d'))]['ValidationError'](_0x675b('0x82'));}_0x71f6d2=_0x2b98ec;return getBucketslist(_0x71f6d2[_0x675b('0x83')],_0x71f6d2[_0x675b('0x81')],_0x4fff13[_0x675b('0x76')]);})[_0x675b('0x24')](function(_0x3d1607){if(_0x3d1607&&_0x3d1607[_0x675b('0x84')]){var _0x703032=_['find'](_0x3d1607[_0x675b('0x84')],function(_0x24674d){return _0x24674d[_0x675b('0x85')]===_0x4fff13[_0x675b('0x7c')];});if(!_0x703032){logger[_0x675b('0x60')](util[_0x675b('0x2e')]('[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available',_0x145d79[_0x675b('0x47')]['id'],_0x4fff13['bucket']));return createBucket(_0x71f6d2[_0x675b('0x83')],_0x71f6d2[_0x675b('0x81')],_0x4fff13['transcribeRegion'],_0x4fff13[_0x675b('0x7c')]);}logger[_0x675b('0x60')](util['format'](_0x675b('0x86'),_0x145d79[_0x675b('0x47')]['id'],_0x4fff13[_0x675b('0x7c')]));return;}})['then'](function(_0x208c67){if(_0x29f31e[_0x675b('0x71')]===_0x675b('0x87')){return transcribe(_0x145d79[_0x675b('0x47')]['id'],_0x71f6d2[_0x675b('0x83')],_0x71f6d2[_0x675b('0x81')],_0x4fff13[_0x675b('0x76')],_0x4fff13[_0x675b('0x7c')],_0x29f31e['value'],_0x4fff13[_0x675b('0x77')]);}else{logger[_0x675b('0x60')](util['format']('[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested',_0x145d79['params']['id']));return{'transcribeStatus':'IN_PROGRESS'};}})[_0x675b('0x24')](function(_0x4ca652){if(_0x4ca652){_0x4ca652[_0x675b('0x88')]=_0x145d79[_0x675b('0x45')][_0x675b('0x79')];return _0x29f31e[_0x675b('0x89')](_0x4ca652);}})[_0x675b('0x24')](respondWithResult(_0x591225,null))[_0x675b('0x40')](handleError(_0x591225,null));};function writeFile(_0x40ceb1,_0x2560ab){return new Promise(function(_0xa22141,_0x24660e){fs['writeFile'](_0x2560ab,_0x40ceb1,function(_0x485596,_0x52c329){if(_0x485596){return _0x24660e(_0x485596);}else{return _0xa22141(_0x52c329);}});});}exports[_0x675b('0x8a')]=function(_0x13290c,_0xb0bb42,_0x9ef53d){return db['VoiceRecording'][_0x675b('0x74')]({'where':{'id':_0x13290c[_0x675b('0x47')]['id']}})['then'](handleEntityNotFound(_0xb0bb42))[_0x675b('0x24')](function(_0x2476e3){if(_0x2476e3&&_0x2476e3[_0x675b('0x8b')]){var _0x5b5fab=_0x2476e3['fileText'];var _0x3aab2a=config[_0x675b('0x8c')]+_0x675b('0x8d')+_0x2476e3['id']+_0x675b('0x8e');if(fs[_0x675b('0x4c')](_0x3aab2a)){return _0x3aab2a;}return writeFile(_0x5b5fab,_0x3aab2a)[_0x675b('0x24')](function(){return _0x3aab2a;});}else{throw new db['Sequelize'][(_0x675b('0x50'))]('Transcript\x20not\x20available');}})[_0x675b('0x24')](function(_0x3baab2){return _0xb0bb42['download'](_0x3baab2);})[_0x675b('0x40')](handleError(_0xb0bb42));};