9839d62715a1ce90ece22ce57aef65055bf89628
[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 _0x2925=['includeAll','include','findAll','rows','catch','params','length','create','body','find','describe','download','uniqueid','value','%s.cypher','existsSync','decryptFile','secrets','Sequelize','ValidationError','filename','extname','unlink','message','VoiceRecording\x20not\x20found','sequelize','MD5','token','$and','push','recording','isNil','Entity\x20not\x20found','cancellazione\x20fisica\x20documento\x20%s','info','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','.cypher','listBuckets','createBucket','upload','TranscribeService','startTranscriptionJob','[RUNTRANSCRIPT][%d]\x20Starting\x20voice\x20recording\x20upload\x20in\x20bucket\x20%s','basename','readFileSync','bucket','Bucket','Location','[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created','TranscriptionJob','TranscriptionJobName','transcribeName','transcribeStatus','TranscriptionJobStatus','runTranscribe','../../components/encryptor','Voice\x20Recording\x20not\x20found','Setting','findOne','transcribe','transcribeAccountId','language','Transcribe\x20not\x20configured','runSentiment','sentiment','sentimentAccountId','Sentiment\x20Analysis\x20not\x20configured','CloudProvider','Cloud\x20Provider\x20not\x20available','data2','Cloud\x20Provider\x20not\x20configured','data1','transcribeRegion','Buckets','Name','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available','NEW','IN_PROGRESS','tempSentiment','updateAttributes','writeFile','downloadTranscribe','fileText','root','Transcript\x20not\x20available','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','jsforce','desk.js','querystring','papaparse','aws-sdk','uuid/v4','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','reject','update','destroy','then','end','stack','name','index','map','VoiceRecording','rawAttributes','type','key','model','differenceBy','format','query','keys','filters','intersection','fields','attributes','nolimit','order','sort','where','pick','filter','merge','VIRTUAL'];(function(_0x5eca9f,_0x1d15d3){var _0x53a05c=function(_0x10bacd){while(--_0x10bacd){_0x5eca9f['push'](_0x5eca9f['shift']());}};_0x53a05c(++_0x1d15d3);}(_0x2925,0x187));var _0x5292=function(_0x1b13fd,_0x5794d4){_0x1b13fd=_0x1b13fd-0x0;var _0x5de2cf=_0x2925[_0x1b13fd];return _0x5de2cf;};'use strict';var emlformat=require(_0x5292('0x0'));var rimraf=require(_0x5292('0x1'));var zipdir=require(_0x5292('0x2'));var jsonpatch=require(_0x5292('0x3'));var rp=require(_0x5292('0x4'));var moment=require(_0x5292('0x5'));var BPromise=require(_0x5292('0x6'));var Mustache=require('mustache');var util=require(_0x5292('0x7'));var path=require(_0x5292('0x8'));var sox=require(_0x5292('0x9'));var csv=require(_0x5292('0xa'));var ejs=require(_0x5292('0xb'));var fs=require('fs');var fs_extra=require(_0x5292('0xc'));var _=require(_0x5292('0xd'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x5292('0xe'));var deskjs=require(_0x5292('0xf'));var toCsv=require(_0x5292('0xa'));var querystring=require(_0x5292('0x10'));var Papa=require(_0x5292('0x11'));var AWS=require(_0x5292('0x12'));var uuidv4=require(_0x5292('0x13'));var Redis=require(_0x5292('0x14'));var authService=require(_0x5292('0x15'));var qs=require(_0x5292('0x16'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x5292('0x17'));var logger=require(_0x5292('0x18'))('api');var utils=require(_0x5292('0x19'));var config=require(_0x5292('0x1a'));var licenseUtil=require('../../config/license/util');var db=require(_0x5292('0x1b'))['db'];function respondWithStatusCode(_0x337fa1,_0x2de694){_0x2de694=_0x2de694||0xcc;return function(_0x2de894){if(_0x2de894){return _0x337fa1[_0x5292('0x1c')](_0x2de694);}return _0x337fa1['status'](_0x2de694)['end']();};}function respondWithResult(_0x3118a8,_0x2bec70){_0x2bec70=_0x2bec70||0xc8;return function(_0x343c9e){if(_0x343c9e){return _0x3118a8[_0x5292('0x1d')](_0x2bec70)[_0x5292('0x1e')](_0x343c9e);}};}function respondWithFilteredResult(_0x4d3434,_0xda5062){return function(_0x45cdf1){if(_0x45cdf1){var _0x22daa8=typeof _0xda5062[_0x5292('0x1f')]===_0x5292('0x20')&&typeof _0xda5062[_0x5292('0x21')]===_0x5292('0x20');var _0x579ae1=_0x45cdf1['count'];var _0x33386c=_0x22daa8?0x0:_0xda5062[_0x5292('0x1f')];var _0x55e72e=_0x22daa8?_0x45cdf1[_0x5292('0x22')]:_0xda5062[_0x5292('0x1f')]+_0xda5062[_0x5292('0x21')];var _0x463295;if(_0x55e72e>=_0x579ae1){_0x55e72e=_0x579ae1;_0x463295=0xc8;}else{_0x463295=0xce;}_0x4d3434[_0x5292('0x1d')](_0x463295);return _0x4d3434['set']('Content-Range',_0x33386c+'-'+_0x55e72e+'/'+_0x579ae1)[_0x5292('0x1e')](_0x45cdf1);}return null;};}function patchUpdates(_0x23f9e2){return function(_0x1560dc){try{jsonpatch['apply'](_0x1560dc,_0x23f9e2,!![]);}catch(_0x46262f){return BPromise[_0x5292('0x23')](_0x46262f);}return _0x1560dc['save']();};}function saveUpdates(_0xba0ca,_0xa8c182){return function(_0x32e73c){if(_0x32e73c){return _0x32e73c[_0x5292('0x24')](_0xba0ca)['then'](function(_0x20d658){return _0x20d658;});}return null;};}function removeEntity(_0x2be08c,_0x21b99e){return function(_0x2c0a85){if(_0x2c0a85){return _0x2c0a85[_0x5292('0x25')]()[_0x5292('0x26')](function(){_0x2be08c[_0x5292('0x1d')](0xcc)[_0x5292('0x27')]();});}};}function handleEntityNotFound(_0x580b57,_0x632cce){return function(_0x319e2c){if(!_0x319e2c){_0x580b57[_0x5292('0x1c')](0x194);}return _0x319e2c;};}function handleError(_0x2f6c3a,_0x44f0cb){_0x44f0cb=_0x44f0cb||0x1f4;return function(_0x38d8e6){logger['error'](_0x38d8e6[_0x5292('0x28')]);if(_0x38d8e6[_0x5292('0x29')]){delete _0x38d8e6[_0x5292('0x29')];}_0x2f6c3a[_0x5292('0x1d')](_0x44f0cb)['send'](_0x38d8e6);};}exports[_0x5292('0x2a')]=function(_0x466b3f,_0x3823d0){var _0x2c4bf2={},_0x68b9bb={},_0x3ba1ba={'count':0x0,'rows':[]};var _0x134e79=_[_0x5292('0x2b')](db[_0x5292('0x2c')][_0x5292('0x2d')],function(_0x11aebb){return{'name':_0x11aebb['fieldName'],'type':_0x11aebb[_0x5292('0x2e')][_0x5292('0x2f')]};});_0x68b9bb[_0x5292('0x30')]=_[_0x5292('0x31')](_[_0x5292('0x2b')](_0x134e79,_0x5292('0x29')),[_0x5292('0x32')]);_0x68b9bb[_0x5292('0x33')]=_[_0x5292('0x34')](_0x466b3f['query']);_0x68b9bb[_0x5292('0x35')]=_[_0x5292('0x36')](_0x68b9bb[_0x5292('0x30')],_0x68b9bb[_0x5292('0x33')]);_0x2c4bf2['attributes']=_[_0x5292('0x36')](_0x68b9bb[_0x5292('0x30')],qs['fields'](_0x466b3f[_0x5292('0x33')][_0x5292('0x37')]));_0x2c4bf2[_0x5292('0x38')]=_0x2c4bf2[_0x5292('0x38')]['length']?_0x2c4bf2['attributes']:_0x68b9bb[_0x5292('0x30')];if(!_0x466b3f[_0x5292('0x33')]['hasOwnProperty'](_0x5292('0x39'))){_0x2c4bf2[_0x5292('0x21')]=qs[_0x5292('0x21')](_0x466b3f['query']['limit']);_0x2c4bf2[_0x5292('0x1f')]=qs['offset'](_0x466b3f[_0x5292('0x33')][_0x5292('0x1f')]);}_0x2c4bf2[_0x5292('0x3a')]=qs[_0x5292('0x3b')](_0x466b3f[_0x5292('0x33')][_0x5292('0x3b')]);_0x2c4bf2[_0x5292('0x3c')]=qs['filters'](_[_0x5292('0x3d')](_0x466b3f[_0x5292('0x33')],_0x68b9bb[_0x5292('0x35')]),_0x134e79);if(_0x466b3f['query'][_0x5292('0x3e')]){_0x2c4bf2[_0x5292('0x3c')]=_[_0x5292('0x3f')](_0x2c4bf2[_0x5292('0x3c')],{'$or':_[_0x5292('0x2b')](_0x134e79,function(_0x4d70d0){if(_0x4d70d0[_0x5292('0x2e')]!==_0x5292('0x40')){var _0x1eca72={};_0x1eca72[_0x4d70d0[_0x5292('0x29')]]={'$like':'%'+_0x466b3f[_0x5292('0x33')][_0x5292('0x3e')]+'%'};return _0x1eca72;}})});}_0x2c4bf2=_[_0x5292('0x3f')]({},_0x2c4bf2,_0x466b3f['options']);var _0x19b94d={'where':_0x2c4bf2[_0x5292('0x3c')]};return db[_0x5292('0x2c')][_0x5292('0x22')](_0x19b94d)[_0x5292('0x26')](function(_0x5cc897){_0x3ba1ba[_0x5292('0x22')]=_0x5cc897;if(_0x466b3f['query'][_0x5292('0x41')]){_0x2c4bf2[_0x5292('0x42')]=[{'all':!![]}];}return db[_0x5292('0x2c')][_0x5292('0x43')](_0x2c4bf2);})[_0x5292('0x26')](function(_0x59b163){_0x3ba1ba[_0x5292('0x44')]=_0x59b163;return _0x3ba1ba;})[_0x5292('0x26')](respondWithFilteredResult(_0x3823d0,_0x2c4bf2))[_0x5292('0x45')](handleError(_0x3823d0,null));};exports['show']=function(_0x36ae57,_0x537773){var _0x140ce7={'raw':![],'where':{'id':_0x36ae57[_0x5292('0x46')]['id']}},_0x478e74={};_0x478e74[_0x5292('0x30')]=_[_0x5292('0x34')](db[_0x5292('0x2c')]['rawAttributes']);_0x478e74['query']=_['keys'](_0x36ae57[_0x5292('0x33')]);_0x478e74['filters']=_[_0x5292('0x36')](_0x478e74[_0x5292('0x30')],_0x478e74[_0x5292('0x33')]);_0x140ce7[_0x5292('0x38')]=_['intersection'](_0x478e74[_0x5292('0x30')],qs[_0x5292('0x37')](_0x36ae57['query']['fields']));_0x140ce7[_0x5292('0x38')]=_0x140ce7[_0x5292('0x38')][_0x5292('0x47')]?_0x140ce7[_0x5292('0x38')]:_0x478e74[_0x5292('0x30')];if(_0x36ae57['query']['includeAll']){_0x140ce7[_0x5292('0x42')]=[{'all':!![]}];}_0x140ce7=_[_0x5292('0x3f')]({},_0x140ce7,_0x36ae57['options']);return db['VoiceRecording']['find'](_0x140ce7)['then'](handleEntityNotFound(_0x537773,null))[_0x5292('0x26')](respondWithResult(_0x537773,null))[_0x5292('0x45')](handleError(_0x537773,null));};exports[_0x5292('0x48')]=function(_0x2d934c,_0x355744){return db[_0x5292('0x2c')]['create'](_0x2d934c[_0x5292('0x49')],{})[_0x5292('0x26')](respondWithResult(_0x355744,0xc9))[_0x5292('0x45')](handleError(_0x355744,null));};exports[_0x5292('0x24')]=function(_0x3cec10,_0x409034){if(_0x3cec10['body']['id']){delete _0x3cec10[_0x5292('0x49')]['id'];}return db[_0x5292('0x2c')][_0x5292('0x4a')]({'where':{'id':_0x3cec10[_0x5292('0x46')]['id']}})[_0x5292('0x26')](handleEntityNotFound(_0x409034,null))[_0x5292('0x26')](saveUpdates(_0x3cec10[_0x5292('0x49')],null))[_0x5292('0x26')](respondWithResult(_0x409034,null))[_0x5292('0x45')](handleError(_0x409034,null));};exports[_0x5292('0x4b')]=function(_0x162b65,_0x1ce21e){return db[_0x5292('0x2c')][_0x5292('0x4b')]()['then'](respondWithResult(_0x1ce21e,null))['catch'](handleError(_0x1ce21e,null));};exports[_0x5292('0x4c')]=function(_0x337919,_0x497ff8,_0x4a7808){var _0x4dfed8=require('../../components/encryptor');var _0x393112=![];var _0x39d1fb={};if(_0x337919[_0x5292('0x33')]['type']&&_0x337919[_0x5292('0x33')][_0x5292('0x2e')]===_0x5292('0x4d')){_0x39d1fb['uniqueid']=_0x337919[_0x5292('0x46')]['id'];}else{_0x39d1fb['id']=_0x337919[_0x5292('0x46')]['id'];}return db['VoiceRecording']['find']({'where':_0x39d1fb,'attributes':['id',_0x5292('0x4e')],'raw':!![]})['then'](handleEntityNotFound(_0x497ff8,null))[_0x5292('0x26')](function(_0x1fceac){if(_0x1fceac){var _0x14df1b=_0x1fceac[_0x5292('0x4e')];var _0x55c881=util[_0x5292('0x32')](_0x5292('0x4f'),_0x14df1b);if(fs[_0x5292('0x50')](_0x55c881)){_0x393112=!![];return _0x4dfed8[_0x5292('0x51')](_0x55c881,_0x14df1b,config[_0x5292('0x52')]['recording'])[_0x5292('0x26')](function(){return _0x1fceac;});}return _0x1fceac;}})[_0x5292('0x26')](function(_0x1c693e){if(_0x1c693e){var _0xb0a593=_0x1c693e[_0x5292('0x4e')];if(!fs['existsSync'](_0xb0a593)){throw new db[(_0x5292('0x53'))][(_0x5292('0x54'))]('VoiceRecording\x20not\x20found');}if(_0x1c693e[_0x5292('0x55')]){return _0x497ff8[_0x5292('0x4c')](_0xb0a593,_0x1c693e[_0x5292('0x55')]+path[_0x5292('0x56')](_0xb0a593),function(){if(_0x393112){fs[_0x5292('0x57')](_0xb0a593);}});}else{return _0x497ff8[_0x5292('0x4c')](_0xb0a593,function(_0x1dd419){if(_0x393112){fs['unlink'](_0xb0a593);}});}}})[_0x5292('0x45')](function(_0x1ff0c9){if(_0x1ff0c9[_0x5292('0x58')]===_0x5292('0x59')){_0x497ff8[_0x5292('0x1d')](0x194)['send']('Not\x20found');}else{return handleError(_0x497ff8,null);}});};exports['downloads']=function(_0x5a6408,_0xd9a8cb,_0xf42d8a){var _0x197a40=require('../../components/encryptor');var _0x2642b4=![];var _0xcdfde2={'$and':[db['sequelize']['where'](db[_0x5292('0x5a')]['fn'](_0x5292('0x5b'),db[_0x5292('0x5a')]['col'](_0x5292('0x4d'))),_0x5a6408['query'][_0x5292('0x5c')])]};if(_0x5a6408[_0x5292('0x33')]['type']&&_0x5a6408['query']['type']===_0x5292('0x4d')){_0xcdfde2[_0x5292('0x5d')][_0x5292('0x5e')]({'uniqueid':_0x5a6408['params']['id']});}else{_0xcdfde2['$and'][_0x5292('0x5e')]({'id':_0x5a6408[_0x5292('0x46')]['id']});}return db['VoiceRecording'][_0x5292('0x4a')]({'where':_0xcdfde2,'attributes':['id',_0x5292('0x4e')],'raw':!![]})[_0x5292('0x26')](handleEntityNotFound(_0xd9a8cb,null))[_0x5292('0x26')](function(_0x3bf218){if(_0x3bf218){var _0x265fe4=util[_0x5292('0x32')]('%s.cypher',_0x3bf218[_0x5292('0x4e')]);if(fs[_0x5292('0x50')](_0x265fe4)){_0x2642b4=!![];return _0x197a40[_0x5292('0x51')](_0x265fe4,_0x3bf218['value'],config['secrets'][_0x5292('0x5f')])[_0x5292('0x26')](function(){return _0x3bf218;});}return _0x3bf218;}})[_0x5292('0x26')](function(_0x440813){if(_0x440813){if(!fs['existsSync'](_0x440813[_0x5292('0x4e')])){throw new db[(_0x5292('0x53'))][(_0x5292('0x54'))](_0x5292('0x59'));}if(_0x440813[_0x5292('0x55')]){return _0xd9a8cb[_0x5292('0x4c')](_0x440813[_0x5292('0x4e')],_0x440813[_0x5292('0x55')]+path[_0x5292('0x56')](_0x440813[_0x5292('0x4e')]),function(){if(_0x2642b4){fs[_0x5292('0x57')](_0x440813[_0x5292('0x4e')]);}});}else{return _0xd9a8cb[_0x5292('0x4c')](_0x440813[_0x5292('0x4e')],function(_0x127092){if(_0x2642b4){fs[_0x5292('0x57')](_0x440813[_0x5292('0x4e')]);}});}}})[_0x5292('0x45')](handleError(_0xd9a8cb,null));};exports[_0x5292('0x25')]=function(_0x13cd74,_0x43a07c){return db[_0x5292('0x2c')][_0x5292('0x4a')]({'where':{'id':_0x13cd74['params']['id']}})[_0x5292('0x26')](function(_0x2c2cc4){if(_[_0x5292('0x60')](_0x2c2cc4)){throw new ReferenceError(_0x5292('0x61'));}return _0x2c2cc4;})[_0x5292('0x26')](function(_0x2c111c){var _0x5cac0c=_0x2c111c[_0x5292('0x4e')];logger['info'](_0x5292('0x62'),_0x5cac0c);if(!_['isNil'](_0x2c111c[_0x5292('0x4e')])&&fs[_0x5292('0x50')](_0x5cac0c)){logger[_0x5292('0x63')](_0x5292('0x64')+_0x5cac0c+_0x5292('0x65'));fs['unlinkSync'](_0x5cac0c);}_0x5cac0c=_0x5cac0c+_0x5292('0x66');if(!_['isNil'](_0x2c111c[_0x5292('0x4e')])&&fs[_0x5292('0x50')](_0x5cac0c)){logger[_0x5292('0x63')](_0x5292('0x64')+_0x5cac0c+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs['unlinkSync'](_0x5cac0c);}return _0x2c111c;})['then'](function(_0x24b4f8){if(!_0x24b4f8)throw new InternalError();return _0x24b4f8[_0x5292('0x25')]();})[_0x5292('0x26')](function(){_0x43a07c[_0x5292('0x1d')](0xcc)[_0x5292('0x27')]();})[_0x5292('0x45')](handleError(_0x43a07c,null));};function getBucketslist(_0x24183a,_0x106f41,_0x4764f0){return new Promise(function(_0x16ef10,_0x4ded20){var _0x331720=new AWS['S3']({'accessKeyId':_0x106f41,'secretAccessKey':_0x24183a,'region':_0x4764f0});_0x331720[_0x5292('0x67')]({},function(_0x25a29d,_0x36dd62){if(_0x25a29d){return _0x4ded20(_0x25a29d);}else{return _0x16ef10(_0x36dd62);}});});}function createBucket(_0x52ba09,_0x51fc71,_0x311af6,_0x568fc1){return new Promise(function(_0x35f27d,_0x2d7afa){var _0x2c8051=new AWS['S3']({'accessKeyId':_0x51fc71,'secretAccessKey':_0x52ba09,'region':_0x311af6});_0x2c8051[_0x5292('0x68')]({'Bucket':_0x568fc1},function(_0x59a713,_0x4266bf){if(_0x59a713){return _0x2d7afa(_0x59a713);}else{return _0x35f27d(_0x4266bf);}});});}function uploadFile(_0x38afb5,_0x4279fe,_0x53f80d,_0x46e645,_0x13569a,_0xb99a0a){return new Promise(function(_0x32aabf,_0x508793){var _0x3a7d2b=new AWS['S3']({'accessKeyId':_0x4279fe,'secretAccessKey':_0x38afb5,'region':_0x53f80d});_0x3a7d2b[_0x5292('0x69')]({'Bucket':_0x46e645,'Key':_0x13569a,'Body':_0xb99a0a},function(_0x492066,_0x197102){if(_0x492066){return _0x508793(_0x492066);}else{return _0x32aabf(_0x197102);}});});}function startTranscribe(_0x421989,_0x4ef5b7,_0x230f23,_0x533e8c,_0x1a6135,_0x57d192){return new Promise(function(_0x5be44a,_0x273e9d){var _0x7bfd90=new AWS[(_0x5292('0x6a'))]({'accessKeyId':_0x4ef5b7,'secretAccessKey':_0x421989,'region':_0x230f23});_0x7bfd90[_0x5292('0x6b')]({'TranscriptionJobName':_0x533e8c,'LanguageCode':_0x1a6135,'Media':{'MediaFileUri':_0x57d192}},function(_0x51bdbe,_0x243e00){if(_0x51bdbe){return _0x273e9d(_0x51bdbe);}else{return _0x5be44a(_0x243e00);}});});}function transcribe(_0x40f22e,_0x33ae3d,_0x2b9bd2,_0xca1766,_0x57c42e,_0x1d4894,_0x3efb10){return new Promise(function(_0x4cf9bf,_0x189a5f){var _0x108891={};logger[_0x5292('0x63')](util[_0x5292('0x32')](_0x5292('0x6c'),_0x40f22e,_0x57c42e));return uploadFile(_0x33ae3d,_0x2b9bd2,_0xca1766,_0x57c42e,path[_0x5292('0x6d')](_0x1d4894),fs[_0x5292('0x6e')](_0x1d4894))[_0x5292('0x26')](function(_0x365ade){logger[_0x5292('0x63')](util[_0x5292('0x32')]('[RUNTRANSCRIPT][%d]\x20Voice\x20recording\x20uploaded\x20in\x20bucket\x20%s\x20(%s)',_0x40f22e,_0x57c42e,_0x365ade['Location']));_0x108891[_0x5292('0x6f')]=_0x365ade[_0x5292('0x70')];_0x108891['location']=_0x365ade[_0x5292('0x71')];logger[_0x5292('0x63')](util['format'](_0x5292('0x72'),_0x40f22e));return startTranscribe(_0x33ae3d,_0x2b9bd2,_0xca1766,uuidv4(),_0x3efb10,_0x365ade[_0x5292('0x71')]);})[_0x5292('0x26')](function(_0x34bd3f){logger[_0x5292('0x63')](util['format'](_0x5292('0x73'),_0x40f22e,_0x34bd3f[_0x5292('0x74')][_0x5292('0x75')]));_0x108891[_0x5292('0x76')]=_0x34bd3f['TranscriptionJob']['TranscriptionJobName'];_0x108891[_0x5292('0x77')]=_0x34bd3f[_0x5292('0x74')][_0x5292('0x78')];return _0x4cf9bf(_0x108891);})[_0x5292('0x45')](function(_0x367542){return _0x189a5f(_0x367542);});});}exports[_0x5292('0x79')]=function(_0x264df0,_0x5f4964,_0x331d86){var _0x1b5bd4;var _0x46a247;var _0x395306;var _0x35233d=require(_0x5292('0x7a'));return db[_0x5292('0x2c')]['findOne']({'where':{'id':_0x264df0[_0x5292('0x46')]['id']}})[_0x5292('0x26')](function(_0x15fb07){if(_0x15fb07){var _0x1fc307=util[_0x5292('0x32')]('%s.cypher',_0x15fb07['value']);if(fs['existsSync'](_0x1fc307)){cypher=!![];return _0x35233d[_0x5292('0x51')](_0x1fc307,_0x15fb07[_0x5292('0x4e')],config['secrets'][_0x5292('0x5f')])[_0x5292('0x26')](function(){return _0x15fb07;});}return _0x15fb07;}})[_0x5292('0x26')](function(_0x549c73){if(!_0x549c73){throw new db[(_0x5292('0x53'))][(_0x5292('0x54'))](_0x5292('0x7b'));}_0x46a247=_0x549c73;return db[_0x5292('0x7c')][_0x5292('0x7d')]({'where':{'id':0x1}});})[_0x5292('0x26')](handleEntityNotFound(_0x5f4964,null))[_0x5292('0x26')](function(_0x5557b2){if(_0x5557b2){_0x1b5bd4=_0x5557b2;if(!_0x1b5bd4[_0x5292('0x7e')]||!_0x1b5bd4[_0x5292('0x7f')]||!_0x1b5bd4['transcribeRegion']||!_0x1b5bd4[_0x5292('0x80')]||!_0x1b5bd4[_0x5292('0x6f')]){throw new db[(_0x5292('0x53'))][(_0x5292('0x54'))](_0x5292('0x81'));}if(_0x264df0[_0x5292('0x49')][_0x5292('0x82')]&&(!_0x1b5bd4[_0x5292('0x83')]||!_0x1b5bd4[_0x5292('0x84')]||!_0x1b5bd4['sentimentRegion']||!_0x1b5bd4[_0x5292('0x80')]||!_0x1b5bd4[_0x5292('0x6f')])){throw new db[(_0x5292('0x53'))][(_0x5292('0x54'))](_0x5292('0x85'));}return db[_0x5292('0x86')][_0x5292('0x7d')]({'where':{'id':_0x1b5bd4[_0x5292('0x7f')]}});}})[_0x5292('0x26')](function(_0x2a8cef){if(!_0x2a8cef){throw new db[(_0x5292('0x53'))][(_0x5292('0x54'))](_0x5292('0x87'));}if(!_0x2a8cef['data1']||!_0x2a8cef[_0x5292('0x88')]){throw new db['Sequelize'][(_0x5292('0x54'))](_0x5292('0x89'));}_0x395306=_0x2a8cef;return getBucketslist(_0x395306[_0x5292('0x8a')],_0x395306[_0x5292('0x88')],_0x1b5bd4[_0x5292('0x8b')]);})['then'](function(_0x4b8e08){if(_0x4b8e08&&_0x4b8e08['Buckets']){var _0x219a62=_[_0x5292('0x4a')](_0x4b8e08[_0x5292('0x8c')],function(_0xf08c52){return _0xf08c52[_0x5292('0x8d')]===_0x1b5bd4['bucket'];});if(!_0x219a62){logger[_0x5292('0x63')](util[_0x5292('0x32')]('[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available',_0x264df0[_0x5292('0x46')]['id'],_0x1b5bd4['bucket']));return createBucket(_0x395306[_0x5292('0x8a')],_0x395306[_0x5292('0x88')],_0x1b5bd4[_0x5292('0x8b')],_0x1b5bd4[_0x5292('0x6f')]);}logger[_0x5292('0x63')](util[_0x5292('0x32')](_0x5292('0x8e'),_0x264df0['params']['id'],_0x1b5bd4[_0x5292('0x6f')]));return;}})[_0x5292('0x26')](function(_0x12a0cf){if(_0x46a247[_0x5292('0x77')]===_0x5292('0x8f')){return transcribe(_0x264df0[_0x5292('0x46')]['id'],_0x395306[_0x5292('0x8a')],_0x395306[_0x5292('0x88')],_0x1b5bd4['transcribeRegion'],_0x1b5bd4[_0x5292('0x6f')],_0x46a247['value'],_0x1b5bd4[_0x5292('0x80')]);}else{logger[_0x5292('0x63')](util[_0x5292('0x32')]('[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested',_0x264df0['params']['id']));return{'transcribeStatus':_0x5292('0x90')};}})['then'](function(_0x57f657){if(_0x57f657){_0x57f657[_0x5292('0x91')]=_0x264df0[_0x5292('0x49')][_0x5292('0x82')];return _0x46a247[_0x5292('0x92')](_0x57f657);}})[_0x5292('0x26')](respondWithResult(_0x5f4964,null))[_0x5292('0x45')](handleError(_0x5f4964,null));};function writeFile(_0x25def4,_0x518cca){return new Promise(function(_0x2d3461,_0x4420aa){fs[_0x5292('0x93')](_0x518cca,_0x25def4,function(_0x3bad04,_0x41afe5){if(_0x3bad04){return _0x4420aa(_0x3bad04);}else{return _0x2d3461(_0x41afe5);}});});}exports[_0x5292('0x94')]=function(_0x1ecc5f,_0xb6947e,_0x3421d5){return db[_0x5292('0x2c')][_0x5292('0x7d')]({'where':{'id':_0x1ecc5f['params']['id']}})[_0x5292('0x26')](handleEntityNotFound(_0xb6947e))[_0x5292('0x26')](function(_0x2725c9){if(_0x2725c9&&_0x2725c9[_0x5292('0x95')]){var _0x18dd18=_0x2725c9[_0x5292('0x95')];var _0x365907=config[_0x5292('0x96')]+'/server/files/transcribes/transcribe_'+_0x2725c9['id']+'.txt';if(fs['existsSync'](_0x365907)){return _0x365907;}return writeFile(_0x18dd18,_0x365907)[_0x5292('0x26')](function(){return _0x365907;});}else{throw new db[(_0x5292('0x53'))][(_0x5292('0x54'))](_0x5292('0x97'));}})[_0x5292('0x26')](function(_0x11340e){return _0xb6947e[_0x5292('0x4c')](_0x11340e);})[_0x5292('0x45')](handleError(_0xb6947e));};