Built motion from commit (unavailable).|2.5.29
[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 _0xf73c=['transcribeStatus','TranscriptionJobStatus','runTranscribe','findOne','%s.cypher','Voice\x20Recording\x20not\x20found','Setting','transcribeRegion','language','Transcribe\x20not\x20configured','sentiment','sentimentRegion','Sentiment\x20Analysis\x20not\x20configured','CloudProvider','transcribeAccountId','Cloud\x20Provider\x20not\x20available','data1','data2','Cloud\x20Provider\x20not\x20configured','Buckets','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available','NEW','IN_PROGRESS','runSentiment','updateAttributes','writeFile','downloadTranscribe','fileText','root','.txt','Transcript\x20not\x20available','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','aws-sdk','uuid/v4','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined','count','set','Content-Range','reject','save','update','then','destroy','error','stack','name','send','index','VoiceRecording','rawAttributes','fieldName','type','key','differenceBy','map','format','query','keys','filters','intersection','model','attributes','fields','pick','filter','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','params','length','find','create','body','describe','download','../../components/encryptor','uniqueid','value','existsSync','secrets','recording','ValidationError','VoiceRecording\x20not\x20found','filename','unlink','message','downloads','sequelize','MD5','col','token','$and','push','decryptFile','Sequelize','extname','Entity\x20not\x20found','info','isNil','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','.cypher','createBucket','upload','TranscribeService','startTranscriptionJob','[RUNTRANSCRIPT][%d]\x20Starting\x20voice\x20recording\x20upload\x20in\x20bucket\x20%s','readFileSync','bucket','location','Location','[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created','TranscriptionJob','transcribeName','TranscriptionJobName'];(function(_0x342465,_0x3aa51b){var _0x4a4da7=function(_0x1047e1){while(--_0x1047e1){_0x342465['push'](_0x342465['shift']());}};_0x4a4da7(++_0x3aa51b);}(_0xf73c,0x1eb));var _0xcf73=function(_0x452203,_0x34cd02){_0x452203=_0x452203-0x0;var _0x499ba9=_0xf73c[_0x452203];return _0x499ba9;};'use strict';var emlformat=require(_0xcf73('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xcf73('0x1'));var jsonpatch=require(_0xcf73('0x2'));var rp=require(_0xcf73('0x3'));var moment=require('moment');var BPromise=require(_0xcf73('0x4'));var Mustache=require(_0xcf73('0x5'));var util=require(_0xcf73('0x6'));var path=require(_0xcf73('0x7'));var sox=require('sox');var csv=require(_0xcf73('0x8'));var ejs=require(_0xcf73('0x9'));var fs=require('fs');var fs_extra=require(_0xcf73('0xa'));var _=require(_0xcf73('0xb'));var squel=require(_0xcf73('0xc'));var crypto=require(_0xcf73('0xd'));var jsforce=require(_0xcf73('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xcf73('0x8'));var querystring=require(_0xcf73('0xf'));var Papa=require('papaparse');var AWS=require(_0xcf73('0x10'));var uuidv4=require(_0xcf73('0x11'));var Redis=require(_0xcf73('0x12'));var authService=require(_0xcf73('0x13'));var qs=require(_0xcf73('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xcf73('0x15'))(_0xcf73('0x16'));var utils=require(_0xcf73('0x17'));var config=require(_0xcf73('0x18'));var licenseUtil=require('../../config/license/util');var db=require(_0xcf73('0x19'))['db'];function respondWithStatusCode(_0x18b168,_0x291c83){_0x291c83=_0x291c83||0xcc;return function(_0x7a1c72){if(_0x7a1c72){return _0x18b168[_0xcf73('0x1a')](_0x291c83);}return _0x18b168[_0xcf73('0x1b')](_0x291c83)[_0xcf73('0x1c')]();};}function respondWithResult(_0x1adcee,_0x26c80f){_0x26c80f=_0x26c80f||0xc8;return function(_0x42a6fc){if(_0x42a6fc){return _0x1adcee[_0xcf73('0x1b')](_0x26c80f)[_0xcf73('0x1d')](_0x42a6fc);}};}function respondWithFilteredResult(_0x3e91cb,_0x22f92a){return function(_0x510ffa){if(_0x510ffa){var _0x10bfe4=typeof _0x22f92a[_0xcf73('0x1e')]==='undefined'&&typeof _0x22f92a[_0xcf73('0x1f')]===_0xcf73('0x20');var _0x4529dd=_0x510ffa[_0xcf73('0x21')];var _0x1b6335=_0x10bfe4?0x0:_0x22f92a['offset'];var _0x134fc2=_0x10bfe4?_0x510ffa[_0xcf73('0x21')]:_0x22f92a[_0xcf73('0x1e')]+_0x22f92a[_0xcf73('0x1f')];var _0x341fef;if(_0x134fc2>=_0x4529dd){_0x134fc2=_0x4529dd;_0x341fef=0xc8;}else{_0x341fef=0xce;}_0x3e91cb[_0xcf73('0x1b')](_0x341fef);return _0x3e91cb[_0xcf73('0x22')](_0xcf73('0x23'),_0x1b6335+'-'+_0x134fc2+'/'+_0x4529dd)['json'](_0x510ffa);}return null;};}function patchUpdates(_0x2db361){return function(_0xdfc592){try{jsonpatch['apply'](_0xdfc592,_0x2db361,!![]);}catch(_0x2751db){return BPromise[_0xcf73('0x24')](_0x2751db);}return _0xdfc592[_0xcf73('0x25')]();};}function saveUpdates(_0x5e66df,_0x16eba5){return function(_0x17bde9){if(_0x17bde9){return _0x17bde9[_0xcf73('0x26')](_0x5e66df)[_0xcf73('0x27')](function(_0x4eb5e7){return _0x4eb5e7;});}return null;};}function removeEntity(_0x1c8e9e,_0xd1072f){return function(_0x56b5a3){if(_0x56b5a3){return _0x56b5a3[_0xcf73('0x28')]()[_0xcf73('0x27')](function(){_0x1c8e9e['status'](0xcc)[_0xcf73('0x1c')]();});}};}function handleEntityNotFound(_0x5d9c6f,_0x3d1566){return function(_0x28f244){if(!_0x28f244){_0x5d9c6f[_0xcf73('0x1a')](0x194);}return _0x28f244;};}function handleError(_0x47d1e0,_0x147c9c){_0x147c9c=_0x147c9c||0x1f4;return function(_0x4ac3de){logger[_0xcf73('0x29')](_0x4ac3de[_0xcf73('0x2a')]);if(_0x4ac3de[_0xcf73('0x2b')]){delete _0x4ac3de[_0xcf73('0x2b')];}_0x47d1e0[_0xcf73('0x1b')](_0x147c9c)[_0xcf73('0x2c')](_0x4ac3de);};}exports[_0xcf73('0x2d')]=function(_0x158ce2,_0x465b4d){var _0x5b96c6={},_0x5256ae={},_0x38bdd1={'count':0x0,'rows':[]};var _0x6ddf75=_['map'](db[_0xcf73('0x2e')][_0xcf73('0x2f')],function(_0x2d62b3){return{'name':_0x2d62b3[_0xcf73('0x30')],'type':_0x2d62b3[_0xcf73('0x31')][_0xcf73('0x32')]};});_0x5256ae['model']=_[_0xcf73('0x33')](_[_0xcf73('0x34')](_0x6ddf75,_0xcf73('0x2b')),[_0xcf73('0x35')]);_0x5256ae[_0xcf73('0x36')]=_[_0xcf73('0x37')](_0x158ce2[_0xcf73('0x36')]);_0x5256ae[_0xcf73('0x38')]=_[_0xcf73('0x39')](_0x5256ae[_0xcf73('0x3a')],_0x5256ae[_0xcf73('0x36')]);_0x5b96c6[_0xcf73('0x3b')]=_['intersection'](_0x5256ae[_0xcf73('0x3a')],qs[_0xcf73('0x3c')](_0x158ce2[_0xcf73('0x36')][_0xcf73('0x3c')]));_0x5b96c6[_0xcf73('0x3b')]=_0x5b96c6[_0xcf73('0x3b')]['length']?_0x5b96c6['attributes']:_0x5256ae[_0xcf73('0x3a')];if(!_0x158ce2[_0xcf73('0x36')]['hasOwnProperty']('nolimit')){_0x5b96c6[_0xcf73('0x1f')]=qs[_0xcf73('0x1f')](_0x158ce2[_0xcf73('0x36')][_0xcf73('0x1f')]);_0x5b96c6[_0xcf73('0x1e')]=qs[_0xcf73('0x1e')](_0x158ce2[_0xcf73('0x36')][_0xcf73('0x1e')]);}_0x5b96c6['order']=qs['sort'](_0x158ce2[_0xcf73('0x36')]['sort']);_0x5b96c6['where']=qs[_0xcf73('0x38')](_[_0xcf73('0x3d')](_0x158ce2[_0xcf73('0x36')],_0x5256ae[_0xcf73('0x38')]),_0x6ddf75);if(_0x158ce2[_0xcf73('0x36')][_0xcf73('0x3e')]){_0x5b96c6[_0xcf73('0x3f')]=_[_0xcf73('0x40')](_0x5b96c6['where'],{'$or':_['map'](_0x6ddf75,function(_0x5e88aa){if(_0x5e88aa[_0xcf73('0x31')]!==_0xcf73('0x41')){var _0x4ec044={};_0x4ec044[_0x5e88aa[_0xcf73('0x2b')]]={'$like':'%'+_0x158ce2['query'][_0xcf73('0x3e')]+'%'};return _0x4ec044;}})});}_0x5b96c6=_[_0xcf73('0x40')]({},_0x5b96c6,_0x158ce2[_0xcf73('0x42')]);var _0x421c52={'where':_0x5b96c6[_0xcf73('0x3f')]};return db[_0xcf73('0x2e')][_0xcf73('0x21')](_0x421c52)[_0xcf73('0x27')](function(_0x4b1ac0){_0x38bdd1[_0xcf73('0x21')]=_0x4b1ac0;if(_0x158ce2[_0xcf73('0x36')][_0xcf73('0x43')]){_0x5b96c6[_0xcf73('0x44')]=[{'all':!![]}];}return db['VoiceRecording'][_0xcf73('0x45')](_0x5b96c6);})[_0xcf73('0x27')](function(_0x192532){_0x38bdd1[_0xcf73('0x46')]=_0x192532;return _0x38bdd1;})['then'](respondWithFilteredResult(_0x465b4d,_0x5b96c6))[_0xcf73('0x47')](handleError(_0x465b4d,null));};exports['show']=function(_0x1fde60,_0x213a25){var _0x5d7080={'raw':![],'where':{'id':_0x1fde60[_0xcf73('0x48')]['id']}},_0x32de6f={};_0x32de6f['model']=_[_0xcf73('0x37')](db[_0xcf73('0x2e')][_0xcf73('0x2f')]);_0x32de6f[_0xcf73('0x36')]=_[_0xcf73('0x37')](_0x1fde60[_0xcf73('0x36')]);_0x32de6f[_0xcf73('0x38')]=_[_0xcf73('0x39')](_0x32de6f[_0xcf73('0x3a')],_0x32de6f[_0xcf73('0x36')]);_0x5d7080[_0xcf73('0x3b')]=_[_0xcf73('0x39')](_0x32de6f['model'],qs['fields'](_0x1fde60[_0xcf73('0x36')][_0xcf73('0x3c')]));_0x5d7080[_0xcf73('0x3b')]=_0x5d7080[_0xcf73('0x3b')][_0xcf73('0x49')]?_0x5d7080[_0xcf73('0x3b')]:_0x32de6f[_0xcf73('0x3a')];if(_0x1fde60['query'][_0xcf73('0x43')]){_0x5d7080[_0xcf73('0x44')]=[{'all':!![]}];}_0x5d7080=_[_0xcf73('0x40')]({},_0x5d7080,_0x1fde60[_0xcf73('0x42')]);return db[_0xcf73('0x2e')][_0xcf73('0x4a')](_0x5d7080)[_0xcf73('0x27')](handleEntityNotFound(_0x213a25,null))[_0xcf73('0x27')](respondWithResult(_0x213a25,null))[_0xcf73('0x47')](handleError(_0x213a25,null));};exports['create']=function(_0x4261df,_0x1019e4){return db[_0xcf73('0x2e')][_0xcf73('0x4b')](_0x4261df[_0xcf73('0x4c')],{})['then'](respondWithResult(_0x1019e4,0xc9))[_0xcf73('0x47')](handleError(_0x1019e4,null));};exports[_0xcf73('0x26')]=function(_0x1bcc45,_0x2b4fff){if(_0x1bcc45[_0xcf73('0x4c')]['id']){delete _0x1bcc45['body']['id'];}return db[_0xcf73('0x2e')]['find']({'where':{'id':_0x1bcc45[_0xcf73('0x48')]['id']}})[_0xcf73('0x27')](handleEntityNotFound(_0x2b4fff,null))[_0xcf73('0x27')](saveUpdates(_0x1bcc45[_0xcf73('0x4c')],null))[_0xcf73('0x27')](respondWithResult(_0x2b4fff,null))[_0xcf73('0x47')](handleError(_0x2b4fff,null));};exports['describe']=function(_0x410f72,_0x5246af){return db[_0xcf73('0x2e')][_0xcf73('0x4d')]()[_0xcf73('0x27')](respondWithResult(_0x5246af,null))[_0xcf73('0x47')](handleError(_0x5246af,null));};exports[_0xcf73('0x4e')]=function(_0x1f735d,_0x46f90d,_0x5a1c60){var _0x1bfbf7=require(_0xcf73('0x4f'));var _0x45f001=![];var _0x2af274={};if(_0x1f735d['query']['type']&&_0x1f735d['query'][_0xcf73('0x31')]==='uniqueid'){_0x2af274[_0xcf73('0x50')]=_0x1f735d['params']['id'];}else{_0x2af274['id']=_0x1f735d['params']['id'];}return db[_0xcf73('0x2e')][_0xcf73('0x4a')]({'where':_0x2af274,'attributes':['id',_0xcf73('0x51')],'raw':!![]})['then'](handleEntityNotFound(_0x46f90d,null))[_0xcf73('0x27')](function(_0x13c2ef){if(_0x13c2ef){var _0x125cae=_0x13c2ef[_0xcf73('0x51')];var _0x43ee2b=util['format']('%s.cypher',_0x125cae);if(fs[_0xcf73('0x52')](_0x43ee2b)){_0x45f001=!![];return _0x1bfbf7['decryptFile'](_0x43ee2b,_0x125cae,config[_0xcf73('0x53')][_0xcf73('0x54')])[_0xcf73('0x27')](function(){return _0x13c2ef;});}return _0x13c2ef;}})[_0xcf73('0x27')](function(_0x3de528){if(_0x3de528){var _0x18bae9=_0x3de528[_0xcf73('0x51')];if(!fs[_0xcf73('0x52')](_0x18bae9)){throw new db['Sequelize'][(_0xcf73('0x55'))](_0xcf73('0x56'));}if(_0x3de528[_0xcf73('0x57')]){return _0x46f90d[_0xcf73('0x4e')](_0x18bae9,_0x3de528[_0xcf73('0x57')]+path['extname'](_0x18bae9),function(){if(_0x45f001){fs[_0xcf73('0x58')](_0x18bae9);}});}else{return _0x46f90d['download'](_0x18bae9,function(_0x3b6cdf){if(_0x45f001){fs[_0xcf73('0x58')](_0x18bae9);}});}}})[_0xcf73('0x47')](function(_0x52e7aa){if(_0x52e7aa[_0xcf73('0x59')]===_0xcf73('0x56')){_0x46f90d[_0xcf73('0x1b')](0x194)[_0xcf73('0x2c')]('Not\x20found');}else{return handleError(_0x46f90d,null);}});};exports[_0xcf73('0x5a')]=function(_0x497b27,_0x578837,_0x511e6d){var _0x2cea63=require('../../components/encryptor');var _0x4057c9=![];var _0x496de4={'$and':[db[_0xcf73('0x5b')][_0xcf73('0x3f')](db[_0xcf73('0x5b')]['fn'](_0xcf73('0x5c'),db[_0xcf73('0x5b')][_0xcf73('0x5d')](_0xcf73('0x50'))),_0x497b27[_0xcf73('0x36')][_0xcf73('0x5e')])]};if(_0x497b27['query'][_0xcf73('0x31')]&&_0x497b27[_0xcf73('0x36')]['type']===_0xcf73('0x50')){_0x496de4[_0xcf73('0x5f')]['push']({'uniqueid':_0x497b27[_0xcf73('0x48')]['id']});}else{_0x496de4['$and'][_0xcf73('0x60')]({'id':_0x497b27[_0xcf73('0x48')]['id']});}return db[_0xcf73('0x2e')][_0xcf73('0x4a')]({'where':_0x496de4,'attributes':['id','value'],'raw':!![]})[_0xcf73('0x27')](handleEntityNotFound(_0x578837,null))[_0xcf73('0x27')](function(_0x465b26){if(_0x465b26){var _0x50e7a3=util['format']('%s.cypher',_0x465b26[_0xcf73('0x51')]);if(fs[_0xcf73('0x52')](_0x50e7a3)){_0x4057c9=!![];return _0x2cea63[_0xcf73('0x61')](_0x50e7a3,_0x465b26['value'],config[_0xcf73('0x53')][_0xcf73('0x54')])['then'](function(){return _0x465b26;});}return _0x465b26;}})[_0xcf73('0x27')](function(_0x18f409){if(_0x18f409){if(!fs[_0xcf73('0x52')](_0x18f409[_0xcf73('0x51')])){throw new db[(_0xcf73('0x62'))]['ValidationError'](_0xcf73('0x56'));}if(_0x18f409['filename']){return _0x578837[_0xcf73('0x4e')](_0x18f409['value'],_0x18f409[_0xcf73('0x57')]+path[_0xcf73('0x63')](_0x18f409[_0xcf73('0x51')]),function(){if(_0x4057c9){fs[_0xcf73('0x58')](_0x18f409['value']);}});}else{return _0x578837[_0xcf73('0x4e')](_0x18f409[_0xcf73('0x51')],function(_0x2742f4){if(_0x4057c9){fs[_0xcf73('0x58')](_0x18f409[_0xcf73('0x51')]);}});}}})[_0xcf73('0x47')](handleError(_0x578837,null));};exports[_0xcf73('0x28')]=function(_0x5e756d,_0x597374){return db[_0xcf73('0x2e')][_0xcf73('0x4a')]({'where':{'id':_0x5e756d['params']['id']}})[_0xcf73('0x27')](function(_0x948487){if(!_0x948487)throw new ReferenceError(_0xcf73('0x64'));return _0x948487;})[_0xcf73('0x27')](function(_0x46cbed){var _0x46513a=_0x46cbed[_0xcf73('0x51')];logger[_0xcf73('0x65')]('cancellazione\x20fisica\x20documento\x20%s',_0x46513a);if(!_[_0xcf73('0x66')](_0x46cbed['value'])&&fs['existsSync'](_0x46513a)){logger[_0xcf73('0x65')](_0xcf73('0x67')+_0x46513a+_0xcf73('0x68'));fs[_0xcf73('0x69')](_0x46513a);}_0x46513a=_0x46513a+_0xcf73('0x6a');if(!_[_0xcf73('0x66')](_0x46cbed['value'])&&fs[_0xcf73('0x52')](_0x46513a)){logger['info'](_0xcf73('0x67')+_0x46513a+_0xcf73('0x68'));fs['unlinkSync'](_0x46513a);}return _0x46cbed;})[_0xcf73('0x27')](function(_0xeff978){if(!_0xeff978)throw new InternalError();return _0xeff978[_0xcf73('0x28')]();})[_0xcf73('0x27')](function(){_0x597374[_0xcf73('0x1b')](0xcc)[_0xcf73('0x1c')]();})[_0xcf73('0x47')](handleError(_0x597374,null));};function getBucketslist(_0x59c8e5,_0x270e2c,_0x57bb7b){return new Promise(function(_0x5b8ab0,_0x31a4a){var _0x4c73fc=new AWS['S3']({'accessKeyId':_0x270e2c,'secretAccessKey':_0x59c8e5,'region':_0x57bb7b});_0x4c73fc['listBuckets']({},function(_0x1e2b8d,_0x54b267){if(_0x1e2b8d){return _0x31a4a(_0x1e2b8d);}else{return _0x5b8ab0(_0x54b267);}});});}function createBucket(_0x1aa336,_0xfc8d16,_0x2712c9,_0x4fe4db){return new Promise(function(_0x52e7c0,_0x1309ae){var _0x65182e=new AWS['S3']({'accessKeyId':_0xfc8d16,'secretAccessKey':_0x1aa336,'region':_0x2712c9});_0x65182e[_0xcf73('0x6b')]({'Bucket':_0x4fe4db},function(_0x9f1769,_0x16c4e3){if(_0x9f1769){return _0x1309ae(_0x9f1769);}else{return _0x52e7c0(_0x16c4e3);}});});}function uploadFile(_0x156b23,_0x1a660d,_0x3063f9,_0x31261b,_0x22a36b,_0x4dc116){return new Promise(function(_0x348c93,_0x443319){var _0x2bb6eb=new AWS['S3']({'accessKeyId':_0x1a660d,'secretAccessKey':_0x156b23,'region':_0x3063f9});_0x2bb6eb[_0xcf73('0x6c')]({'Bucket':_0x31261b,'Key':_0x22a36b,'Body':_0x4dc116},function(_0x591924,_0x43fa39){if(_0x591924){return _0x443319(_0x591924);}else{return _0x348c93(_0x43fa39);}});});}function startTranscribe(_0x2246ec,_0x4494a3,_0x400ba1,_0x3b2ae8,_0x6b546c,_0x2c880e){return new Promise(function(_0x44e993,_0x3561f5){var _0x4927fc=new AWS[(_0xcf73('0x6d'))]({'accessKeyId':_0x4494a3,'secretAccessKey':_0x2246ec,'region':_0x400ba1});_0x4927fc[_0xcf73('0x6e')]({'TranscriptionJobName':_0x3b2ae8,'LanguageCode':_0x6b546c,'Media':{'MediaFileUri':_0x2c880e}},function(_0x314cbf,_0xa2e043){if(_0x314cbf){return _0x3561f5(_0x314cbf);}else{return _0x44e993(_0xa2e043);}});});}function transcribe(_0x5b3415,_0x5abe79,_0x31bcef,_0x2b2ac0,_0x20a381,_0x2ccd5,_0x3bb897){return new Promise(function(_0xe73c3,_0x5f48eb){var _0x22e756={};logger['info'](util[_0xcf73('0x35')](_0xcf73('0x6f'),_0x5b3415,_0x20a381));return uploadFile(_0x5abe79,_0x31bcef,_0x2b2ac0,_0x20a381,path['basename'](_0x2ccd5),fs[_0xcf73('0x70')](_0x2ccd5))['then'](function(_0x48a334){logger['info'](util['format']('[RUNTRANSCRIPT][%d]\x20Voice\x20recording\x20uploaded\x20in\x20bucket\x20%s\x20(%s)',_0x5b3415,_0x20a381,_0x48a334['Location']));_0x22e756[_0xcf73('0x71')]=_0x48a334['Bucket'];_0x22e756[_0xcf73('0x72')]=_0x48a334[_0xcf73('0x73')];logger[_0xcf73('0x65')](util[_0xcf73('0x35')](_0xcf73('0x74'),_0x5b3415));return startTranscribe(_0x5abe79,_0x31bcef,_0x2b2ac0,uuidv4(),_0x3bb897,_0x48a334[_0xcf73('0x73')]);})[_0xcf73('0x27')](function(_0x36e97c){logger[_0xcf73('0x65')](util[_0xcf73('0x35')](_0xcf73('0x75'),_0x5b3415,_0x36e97c[_0xcf73('0x76')]['TranscriptionJobName']));_0x22e756[_0xcf73('0x77')]=_0x36e97c[_0xcf73('0x76')][_0xcf73('0x78')];_0x22e756[_0xcf73('0x79')]=_0x36e97c[_0xcf73('0x76')][_0xcf73('0x7a')];return _0xe73c3(_0x22e756);})[_0xcf73('0x47')](function(_0x2b9371){return _0x5f48eb(_0x2b9371);});});}exports[_0xcf73('0x7b')]=function(_0x35aba9,_0x3ca49a,_0x449ca3){var _0x4be750;var _0x481c60;var _0x352b81;var _0x3deeef=require(_0xcf73('0x4f'));return db[_0xcf73('0x2e')][_0xcf73('0x7c')]({'where':{'id':_0x35aba9[_0xcf73('0x48')]['id']}})[_0xcf73('0x27')](function(_0x472a23){if(_0x472a23){var _0x4ce0fd=util['format'](_0xcf73('0x7d'),_0x472a23['value']);if(fs[_0xcf73('0x52')](_0x4ce0fd)){cypher=!![];return _0x3deeef[_0xcf73('0x61')](_0x4ce0fd,_0x472a23[_0xcf73('0x51')],config[_0xcf73('0x53')][_0xcf73('0x54')])[_0xcf73('0x27')](function(){return _0x472a23;});}return _0x472a23;}})[_0xcf73('0x27')](function(_0x426c69){if(!_0x426c69){throw new db[(_0xcf73('0x62'))]['ValidationError'](_0xcf73('0x7e'));}_0x481c60=_0x426c69;return db[_0xcf73('0x7f')][_0xcf73('0x7c')]({'where':{'id':0x1}});})['then'](handleEntityNotFound(_0x3ca49a,null))[_0xcf73('0x27')](function(_0x3a0007){if(_0x3a0007){_0x4be750=_0x3a0007;if(!_0x4be750['transcribe']||!_0x4be750['transcribeAccountId']||!_0x4be750[_0xcf73('0x80')]||!_0x4be750[_0xcf73('0x81')]||!_0x4be750[_0xcf73('0x71')]){throw new db[(_0xcf73('0x62'))]['ValidationError'](_0xcf73('0x82'));}if(_0x35aba9[_0xcf73('0x4c')]['runSentiment']&&(!_0x4be750[_0xcf73('0x83')]||!_0x4be750['sentimentAccountId']||!_0x4be750[_0xcf73('0x84')]||!_0x4be750[_0xcf73('0x81')]||!_0x4be750[_0xcf73('0x71')])){throw new db['Sequelize'][(_0xcf73('0x55'))](_0xcf73('0x85'));}return db[_0xcf73('0x86')]['findOne']({'where':{'id':_0x4be750[_0xcf73('0x87')]}});}})[_0xcf73('0x27')](function(_0x4bf5ad){if(!_0x4bf5ad){throw new db[(_0xcf73('0x62'))][(_0xcf73('0x55'))](_0xcf73('0x88'));}if(!_0x4bf5ad[_0xcf73('0x89')]||!_0x4bf5ad[_0xcf73('0x8a')]){throw new db[(_0xcf73('0x62'))]['ValidationError'](_0xcf73('0x8b'));}_0x352b81=_0x4bf5ad;return getBucketslist(_0x352b81['data1'],_0x352b81['data2'],_0x4be750['transcribeRegion']);})['then'](function(_0x2bd7a6){if(_0x2bd7a6&&_0x2bd7a6[_0xcf73('0x8c')]){var _0xec75c5=_[_0xcf73('0x4a')](_0x2bd7a6[_0xcf73('0x8c')],function(_0x87146d){return _0x87146d['Name']===_0x4be750[_0xcf73('0x71')];});if(!_0xec75c5){logger[_0xcf73('0x65')](util[_0xcf73('0x35')](_0xcf73('0x8d'),_0x35aba9[_0xcf73('0x48')]['id'],_0x4be750[_0xcf73('0x71')]));return createBucket(_0x352b81[_0xcf73('0x89')],_0x352b81[_0xcf73('0x8a')],_0x4be750[_0xcf73('0x80')],_0x4be750['bucket']);}logger['info'](util[_0xcf73('0x35')](_0xcf73('0x8e'),_0x35aba9[_0xcf73('0x48')]['id'],_0x4be750[_0xcf73('0x71')]));return;}})[_0xcf73('0x27')](function(_0x3fa6c4){if(_0x481c60[_0xcf73('0x79')]===_0xcf73('0x8f')){return transcribe(_0x35aba9['params']['id'],_0x352b81[_0xcf73('0x89')],_0x352b81['data2'],_0x4be750[_0xcf73('0x80')],_0x4be750[_0xcf73('0x71')],_0x481c60[_0xcf73('0x51')],_0x4be750[_0xcf73('0x81')]);}else{logger[_0xcf73('0x65')](util[_0xcf73('0x35')]('[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested',_0x35aba9['params']['id']));return{'transcribeStatus':_0xcf73('0x90')};}})[_0xcf73('0x27')](function(_0x90ccd8){if(_0x90ccd8){_0x90ccd8['tempSentiment']=_0x35aba9[_0xcf73('0x4c')][_0xcf73('0x91')];return _0x481c60[_0xcf73('0x92')](_0x90ccd8);}})[_0xcf73('0x27')](respondWithResult(_0x3ca49a,null))[_0xcf73('0x47')](handleError(_0x3ca49a,null));};function writeFile(_0x22046e,_0x2552e3){return new Promise(function(_0x3c72b6,_0x3af36e){fs[_0xcf73('0x93')](_0x2552e3,_0x22046e,function(_0x4e09b7,_0x53a511){if(_0x4e09b7){return _0x3af36e(_0x4e09b7);}else{return _0x3c72b6(_0x53a511);}});});}exports[_0xcf73('0x94')]=function(_0x23d1c5,_0x10599e,_0x75db1f){return db['VoiceRecording'][_0xcf73('0x7c')]({'where':{'id':_0x23d1c5[_0xcf73('0x48')]['id']}})[_0xcf73('0x27')](handleEntityNotFound(_0x10599e))[_0xcf73('0x27')](function(_0x16aa54){if(_0x16aa54&&_0x16aa54[_0xcf73('0x95')]){var _0x400fe3=_0x16aa54['fileText'];var _0xfab314=config[_0xcf73('0x96')]+'/server/files/transcribes/transcribe_'+_0x16aa54['id']+_0xcf73('0x97');if(fs[_0xcf73('0x52')](_0xfab314)){return _0xfab314;}return writeFile(_0x400fe3,_0xfab314)[_0xcf73('0x27')](function(){return _0xfab314;});}else{throw new db['Sequelize'][(_0xcf73('0x55'))](_0xcf73('0x98'));}})[_0xcf73('0x27')](function(_0x3f20eb){return _0x10599e[_0xcf73('0x4e')](_0x3f20eb);})[_0xcf73('0x47')](handleError(_0x10599e));};