Built motion from commit (unavailable).|2.5.12
[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 _0xd94b=['TranscriptionJob','TranscriptionJobName','transcribeName','transcribeStatus','TranscriptionJobStatus','runTranscribe','findOne','Sequelize','Voice\x20Recording\x20not\x20found','Setting','transcribeAccountId','transcribeRegion','Transcribe\x20not\x20configured','runSentiment','sentimentAccountId','language','Sentiment\x20Analysis\x20not\x20configured','CloudProvider','data1','data2','Cloud\x20Provider\x20not\x20configured','Buckets','Name','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available','[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested','updateAttributes','writeFile','downloadTranscribe','fileText','root','/server/files/transcribes/transcribe_','Transcript\x20not\x20available','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','aws-sdk','uuid/v4','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','set','Content-Range','apply','reject','save','update','then','error','stack','name','send','index','map','VoiceRecording','rawAttributes','fieldName','type','model','differenceBy','format','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit','limit','order','sort','where','filters','pick','filter','VIRTUAL','merge','options','includeAll','include','rows','catch','show','params','find','create','body','describe','download','uniqueid','value','%s.cypher','decryptFile','recording','ValidationError','VoiceRecording\x20not\x20found','extname','unlink','message','Not\x20found','../../components/encryptor','sequelize','MD5','col','token','push','$and','existsSync','secrets','destroy','Entity\x20not\x20found','info','cancellazione\x20fisica\x20documento\x20%s','isNil','File:\x20\x22','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','unlinkSync','createBucket','upload','TranscribeService','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','location','[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request','Location','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created'];(function(_0x500419,_0x549162){var _0x241c1a=function(_0x3bea1a){while(--_0x3bea1a){_0x500419['push'](_0x500419['shift']());}};_0x241c1a(++_0x549162);}(_0xd94b,0xbf));var _0xbd94=function(_0x56fb33,_0x37be08){_0x56fb33=_0x56fb33-0x0;var _0x435ee4=_0xd94b[_0x56fb33];return _0x435ee4;};'use strict';var pdf=require(_0xbd94('0x0'));var emlformat=require(_0xbd94('0x1'));var rimraf=require(_0xbd94('0x2'));var zipdir=require(_0xbd94('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0xbd94('0x4'));var moment=require(_0xbd94('0x5'));var BPromise=require(_0xbd94('0x6'));var Mustache=require(_0xbd94('0x7'));var util=require('util');var path=require(_0xbd94('0x8'));var sox=require(_0xbd94('0x9'));var csv=require(_0xbd94('0xa'));var ejs=require(_0xbd94('0xb'));var fs=require('fs');var _=require(_0xbd94('0xc'));var squel=require(_0xbd94('0xd'));var crypto=require(_0xbd94('0xe'));var jsforce=require(_0xbd94('0xf'));var deskjs=require('desk.js');var toCsv=require(_0xbd94('0xa'));var querystring=require(_0xbd94('0x10'));var Papa=require(_0xbd94('0x11'));var AWS=require(_0xbd94('0x12'));var uuidv4=require(_0xbd94('0x13'));var Redis=require(_0xbd94('0x14'));var authService=require(_0xbd94('0x15'));var qs=require(_0xbd94('0x16'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xbd94('0x17'));var logger=require(_0xbd94('0x18'))('api');var utils=require(_0xbd94('0x19'));var config=require(_0xbd94('0x1a'));var licenseUtil=require(_0xbd94('0x1b'));var db=require(_0xbd94('0x1c'))['db'];function respondWithStatusCode(_0x3fe88c,_0x1fcd1c){_0x1fcd1c=_0x1fcd1c||0xcc;return function(_0x42faa3){if(_0x42faa3){return _0x3fe88c[_0xbd94('0x1d')](_0x1fcd1c);}return _0x3fe88c[_0xbd94('0x1e')](_0x1fcd1c)[_0xbd94('0x1f')]();};}function respondWithResult(_0x3c159a,_0x2bb7ad){_0x2bb7ad=_0x2bb7ad||0xc8;return function(_0xe7d81b){if(_0xe7d81b){return _0x3c159a['status'](_0x2bb7ad)[_0xbd94('0x20')](_0xe7d81b);}};}function respondWithFilteredResult(_0x365b0b,_0x26b981){return function(_0x3715e5){if(_0x3715e5){var _0x5707c4=_0x3715e5[_0xbd94('0x21')],_0xdb778e=_0x26b981[_0xbd94('0x22')],_0x9f5e75=_0x26b981[_0xbd94('0x22')]+_0x26b981['limit'],_0x210725;if(_0x9f5e75>=_0x5707c4){_0x9f5e75=_0x5707c4;_0x210725=0xc8;}else{_0x210725=0xce;}_0x365b0b[_0xbd94('0x1e')](_0x210725);return _0x365b0b[_0xbd94('0x23')](_0xbd94('0x24'),_0xdb778e+'-'+_0x9f5e75+'/'+_0x5707c4)[_0xbd94('0x20')](_0x3715e5);}return null;};}function patchUpdates(_0x365ebb){return function(_0x4b1d0e){try{jsonpatch[_0xbd94('0x25')](_0x4b1d0e,_0x365ebb,!![]);}catch(_0x52270f){return BPromise[_0xbd94('0x26')](_0x52270f);}return _0x4b1d0e[_0xbd94('0x27')]();};}function saveUpdates(_0x1fbe9a,_0x5641a4){return function(_0x45b664){if(_0x45b664){return _0x45b664[_0xbd94('0x28')](_0x1fbe9a)['then'](function(_0xece059){return _0xece059;});}return null;};}function removeEntity(_0x469489,_0x2a8958){return function(_0x48e29a){if(_0x48e29a){return _0x48e29a['destroy']()[_0xbd94('0x29')](function(){_0x469489[_0xbd94('0x1e')](0xcc)[_0xbd94('0x1f')]();});}};}function handleEntityNotFound(_0x39ee6d,_0xd8b68d){return function(_0x509738){if(!_0x509738){_0x39ee6d[_0xbd94('0x1d')](0x194);}return _0x509738;};}function handleError(_0x1388e9,_0x3c46e6){_0x3c46e6=_0x3c46e6||0x1f4;return function(_0x31ac23){logger[_0xbd94('0x2a')](_0x31ac23[_0xbd94('0x2b')]);if(_0x31ac23[_0xbd94('0x2c')]){delete _0x31ac23['name'];}_0x1388e9[_0xbd94('0x1e')](_0x3c46e6)[_0xbd94('0x2d')](_0x31ac23);};}exports[_0xbd94('0x2e')]=function(_0x3ad5e6,_0x189a1e){var _0x3bf653={},_0x4fbf36={},_0x36335b={'count':0x0,'rows':[]};var _0x259c20=_[_0xbd94('0x2f')](db[_0xbd94('0x30')][_0xbd94('0x31')],function(_0x298bd0){return{'name':_0x298bd0[_0xbd94('0x32')],'type':_0x298bd0[_0xbd94('0x33')]['key']};});_0x4fbf36[_0xbd94('0x34')]=_[_0xbd94('0x35')](_[_0xbd94('0x2f')](_0x259c20,_0xbd94('0x2c')),[_0xbd94('0x36')]);_0x4fbf36[_0xbd94('0x37')]=_[_0xbd94('0x38')](_0x3ad5e6[_0xbd94('0x37')]);_0x4fbf36['filters']=_[_0xbd94('0x39')](_0x4fbf36['model'],_0x4fbf36[_0xbd94('0x37')]);_0x3bf653['attributes']=_[_0xbd94('0x39')](_0x4fbf36[_0xbd94('0x34')],qs[_0xbd94('0x3a')](_0x3ad5e6[_0xbd94('0x37')][_0xbd94('0x3a')]));_0x3bf653[_0xbd94('0x3b')]=_0x3bf653['attributes'][_0xbd94('0x3c')]?_0x3bf653[_0xbd94('0x3b')]:_0x4fbf36[_0xbd94('0x34')];if(!_0x3ad5e6[_0xbd94('0x37')][_0xbd94('0x3d')](_0xbd94('0x3e'))){_0x3bf653[_0xbd94('0x3f')]=qs[_0xbd94('0x3f')](_0x3ad5e6[_0xbd94('0x37')][_0xbd94('0x3f')]);_0x3bf653[_0xbd94('0x22')]=qs[_0xbd94('0x22')](_0x3ad5e6[_0xbd94('0x37')][_0xbd94('0x22')]);}_0x3bf653[_0xbd94('0x40')]=qs[_0xbd94('0x41')](_0x3ad5e6[_0xbd94('0x37')][_0xbd94('0x41')]);_0x3bf653[_0xbd94('0x42')]=qs[_0xbd94('0x43')](_[_0xbd94('0x44')](_0x3ad5e6[_0xbd94('0x37')],_0x4fbf36[_0xbd94('0x43')]),_0x259c20);if(_0x3ad5e6['query'][_0xbd94('0x45')]){_0x3bf653[_0xbd94('0x42')]=_['merge'](_0x3bf653['where'],{'$or':_[_0xbd94('0x2f')](_0x259c20,function(_0x65b1c1){if(_0x65b1c1[_0xbd94('0x33')]!==_0xbd94('0x46')){var _0x34eb56={};_0x34eb56[_0x65b1c1[_0xbd94('0x2c')]]={'$like':'%'+_0x3ad5e6[_0xbd94('0x37')]['filter']+'%'};return _0x34eb56;}})});}_0x3bf653=_[_0xbd94('0x47')]({},_0x3bf653,_0x3ad5e6[_0xbd94('0x48')]);var _0x5deb3b={'where':_0x3bf653['where']};return db[_0xbd94('0x30')]['count'](_0x5deb3b)[_0xbd94('0x29')](function(_0x40adc0){_0x36335b[_0xbd94('0x21')]=_0x40adc0;if(_0x3ad5e6[_0xbd94('0x37')][_0xbd94('0x49')]){_0x3bf653[_0xbd94('0x4a')]=[{'all':!![]}];}return db['VoiceRecording']['findAll'](_0x3bf653);})[_0xbd94('0x29')](function(_0xe0cf68){_0x36335b[_0xbd94('0x4b')]=_0xe0cf68;return _0x36335b;})[_0xbd94('0x29')](respondWithFilteredResult(_0x189a1e,_0x3bf653))[_0xbd94('0x4c')](handleError(_0x189a1e,null));};exports[_0xbd94('0x4d')]=function(_0x299b23,_0x3ee198){var _0x4a7799={'raw':![],'where':{'id':_0x299b23[_0xbd94('0x4e')]['id']}},_0x5eadc0={};_0x5eadc0[_0xbd94('0x34')]=_[_0xbd94('0x38')](db[_0xbd94('0x30')][_0xbd94('0x31')]);_0x5eadc0['query']=_[_0xbd94('0x38')](_0x299b23['query']);_0x5eadc0[_0xbd94('0x43')]=_[_0xbd94('0x39')](_0x5eadc0[_0xbd94('0x34')],_0x5eadc0['query']);_0x4a7799['attributes']=_['intersection'](_0x5eadc0[_0xbd94('0x34')],qs[_0xbd94('0x3a')](_0x299b23[_0xbd94('0x37')][_0xbd94('0x3a')]));_0x4a7799[_0xbd94('0x3b')]=_0x4a7799[_0xbd94('0x3b')][_0xbd94('0x3c')]?_0x4a7799['attributes']:_0x5eadc0[_0xbd94('0x34')];if(_0x299b23['query'][_0xbd94('0x49')]){_0x4a7799[_0xbd94('0x4a')]=[{'all':!![]}];}_0x4a7799=_[_0xbd94('0x47')]({},_0x4a7799,_0x299b23['options']);return db[_0xbd94('0x30')][_0xbd94('0x4f')](_0x4a7799)[_0xbd94('0x29')](handleEntityNotFound(_0x3ee198,null))[_0xbd94('0x29')](respondWithResult(_0x3ee198,null))[_0xbd94('0x4c')](handleError(_0x3ee198,null));};exports[_0xbd94('0x50')]=function(_0x29d6e0,_0x5a14ee){return db[_0xbd94('0x30')]['create'](_0x29d6e0[_0xbd94('0x51')],{})[_0xbd94('0x29')](respondWithResult(_0x5a14ee,0xc9))[_0xbd94('0x4c')](handleError(_0x5a14ee,null));};exports[_0xbd94('0x28')]=function(_0x18235b,_0xb6d727){if(_0x18235b[_0xbd94('0x51')]['id']){delete _0x18235b[_0xbd94('0x51')]['id'];}return db['VoiceRecording'][_0xbd94('0x4f')]({'where':{'id':_0x18235b[_0xbd94('0x4e')]['id']}})[_0xbd94('0x29')](handleEntityNotFound(_0xb6d727,null))[_0xbd94('0x29')](saveUpdates(_0x18235b[_0xbd94('0x51')],null))[_0xbd94('0x29')](respondWithResult(_0xb6d727,null))['catch'](handleError(_0xb6d727,null));};exports[_0xbd94('0x52')]=function(_0x91bfc3,_0x397a59){return db[_0xbd94('0x30')][_0xbd94('0x52')]()[_0xbd94('0x29')](respondWithResult(_0x397a59,null))[_0xbd94('0x4c')](handleError(_0x397a59,null));};exports[_0xbd94('0x53')]=function(_0xf9e694,_0x40b4c2,_0x3c4c43){var _0xaea4c0=require('../../components/encryptor');var _0x586838=![];var _0xca0d49={};if(_0xf9e694[_0xbd94('0x37')][_0xbd94('0x33')]&&_0xf9e694['query'][_0xbd94('0x33')]===_0xbd94('0x54')){_0xca0d49[_0xbd94('0x54')]=_0xf9e694['params']['id'];}else{_0xca0d49['id']=_0xf9e694['params']['id'];}return db[_0xbd94('0x30')][_0xbd94('0x4f')]({'where':_0xca0d49,'attributes':['id',_0xbd94('0x55')],'raw':!![]})[_0xbd94('0x29')](handleEntityNotFound(_0x40b4c2,null))['then'](function(_0x2d5fea){if(_0x2d5fea){var _0x8fe896=_0x2d5fea[_0xbd94('0x55')];var _0x3f3bb8=util[_0xbd94('0x36')](_0xbd94('0x56'),_0x8fe896);if(fs['existsSync'](_0x3f3bb8)){_0x586838=!![];return _0xaea4c0[_0xbd94('0x57')](_0x3f3bb8,_0x8fe896,config['secrets'][_0xbd94('0x58')])['then'](function(){return _0x2d5fea;});}return _0x2d5fea;}})[_0xbd94('0x29')](function(_0x2e2d0e){if(_0x2e2d0e){var _0x1b212d=_0x2e2d0e[_0xbd94('0x55')];if(!fs['existsSync'](_0x1b212d)){throw new db['Sequelize'][(_0xbd94('0x59'))](_0xbd94('0x5a'));}if(_0x2e2d0e['filename']){return _0x40b4c2[_0xbd94('0x53')](_0x1b212d,_0x2e2d0e['filename']+path[_0xbd94('0x5b')](_0x1b212d),function(){if(_0x586838){fs[_0xbd94('0x5c')](_0x1b212d);}});}else{return _0x40b4c2[_0xbd94('0x53')](_0x1b212d,function(_0x4be3b2){if(_0x586838){fs[_0xbd94('0x5c')](_0x1b212d);}});}}})[_0xbd94('0x4c')](function(_0x8fdf7c){if(_0x8fdf7c[_0xbd94('0x5d')]===_0xbd94('0x5a')){_0x40b4c2[_0xbd94('0x1e')](0x194)[_0xbd94('0x2d')](_0xbd94('0x5e'));}else{return handleError(_0x40b4c2,null);}});};exports['downloads']=function(_0x9fdf77,_0x5026dc,_0x428af3){var _0x55f390=require(_0xbd94('0x5f'));var _0x3d3d47=![];var _0x51ee98={'$and':[db[_0xbd94('0x60')][_0xbd94('0x42')](db['sequelize']['fn'](_0xbd94('0x61'),db['sequelize'][_0xbd94('0x62')](_0xbd94('0x54'))),_0x9fdf77[_0xbd94('0x37')][_0xbd94('0x63')])]};if(_0x9fdf77[_0xbd94('0x37')]['type']&&_0x9fdf77[_0xbd94('0x37')][_0xbd94('0x33')]===_0xbd94('0x54')){_0x51ee98['$and'][_0xbd94('0x64')]({'uniqueid':_0x9fdf77['params']['id']});}else{_0x51ee98[_0xbd94('0x65')]['push']({'id':_0x9fdf77['params']['id']});}return db[_0xbd94('0x30')][_0xbd94('0x4f')]({'where':_0x51ee98,'attributes':['id',_0xbd94('0x55')],'raw':!![]})['then'](handleEntityNotFound(_0x5026dc,null))[_0xbd94('0x29')](function(_0x20a39b){if(_0x20a39b){var _0x2e2ef0=util[_0xbd94('0x36')](_0xbd94('0x56'),_0x20a39b[_0xbd94('0x55')]);if(fs[_0xbd94('0x66')](_0x2e2ef0)){_0x3d3d47=!![];return _0x55f390['decryptFile'](_0x2e2ef0,_0x20a39b[_0xbd94('0x55')],config[_0xbd94('0x67')][_0xbd94('0x58')])[_0xbd94('0x29')](function(){return _0x20a39b;});}return _0x20a39b;}})[_0xbd94('0x29')](function(_0x9e9353){if(_0x9e9353){if(!fs[_0xbd94('0x66')](_0x9e9353['value'])){throw new db['Sequelize'][(_0xbd94('0x59'))]('VoiceRecording\x20not\x20found');}if(_0x9e9353['filename']){return _0x5026dc[_0xbd94('0x53')](_0x9e9353[_0xbd94('0x55')],_0x9e9353['filename']+path['extname'](_0x9e9353[_0xbd94('0x55')]),function(){if(_0x3d3d47){fs[_0xbd94('0x5c')](_0x9e9353['value']);}});}else{return _0x5026dc[_0xbd94('0x53')](_0x9e9353[_0xbd94('0x55')],function(_0x68f78c){if(_0x3d3d47){fs[_0xbd94('0x5c')](_0x9e9353[_0xbd94('0x55')]);}});}}})[_0xbd94('0x4c')](handleError(_0x5026dc,null));};exports[_0xbd94('0x68')]=function(_0x3120aa,_0x1bfa6b){return db[_0xbd94('0x30')][_0xbd94('0x4f')]({'where':{'id':_0x3120aa['params']['id']}})[_0xbd94('0x29')](function(_0x5988cd){if(!_0x5988cd)throw new ReferenceError(_0xbd94('0x69'));return _0x5988cd;})[_0xbd94('0x29')](function(_0x2bf55c){var _0x43a61c=_0x2bf55c[_0xbd94('0x55')];logger[_0xbd94('0x6a')](_0xbd94('0x6b'),_0x43a61c);if(!_[_0xbd94('0x6c')](_0x2bf55c['value'])&&fs[_0xbd94('0x66')](_0x43a61c)){logger[_0xbd94('0x6a')](_0xbd94('0x6d')+_0x43a61c+_0xbd94('0x6e'));fs[_0xbd94('0x6f')](_0x43a61c);}_0x43a61c=_0x43a61c+'.cypher';if(!_[_0xbd94('0x6c')](_0x2bf55c[_0xbd94('0x55')])&&fs['existsSync'](_0x43a61c)){logger[_0xbd94('0x6a')](_0xbd94('0x6d')+_0x43a61c+_0xbd94('0x6e'));fs[_0xbd94('0x6f')](_0x43a61c);}return _0x2bf55c;})['then'](function(_0x33a7de){if(!_0x33a7de)throw new InternalError();return _0x33a7de[_0xbd94('0x68')]();})['then'](function(){_0x1bfa6b[_0xbd94('0x1e')](0xcc)['end']();})['catch'](handleError(_0x1bfa6b,null));};function getBucketslist(_0xb6759e,_0x253edf,_0x124d6b){return new Promise(function(_0x5be6f8,_0x190f0b){var _0x302332=new AWS['S3']({'accessKeyId':_0x253edf,'secretAccessKey':_0xb6759e,'region':_0x124d6b});_0x302332['listBuckets']({},function(_0x5ceb2e,_0x5e7211){if(_0x5ceb2e){return _0x190f0b(_0x5ceb2e);}else{return _0x5be6f8(_0x5e7211);}});});}function createBucket(_0x276626,_0x183c6d,_0x170a6b,_0x412eb9){return new Promise(function(_0x4c32a5,_0x507f14){var _0x219ea5=new AWS['S3']({'accessKeyId':_0x183c6d,'secretAccessKey':_0x276626,'region':_0x170a6b});_0x219ea5[_0xbd94('0x70')]({'Bucket':_0x412eb9},function(_0x2dc36b,_0x1f1982){if(_0x2dc36b){return _0x507f14(_0x2dc36b);}else{return _0x4c32a5(_0x1f1982);}});});}function uploadFile(_0x15daf1,_0x34a5d5,_0x1afc31,_0x109b9b,_0x24bd4e,_0x1d3da8){return new Promise(function(_0x305d4a,_0x2f3b1d){var _0x27227a=new AWS['S3']({'accessKeyId':_0x34a5d5,'secretAccessKey':_0x15daf1,'region':_0x1afc31});_0x27227a[_0xbd94('0x71')]({'Bucket':_0x109b9b,'Key':_0x24bd4e,'Body':_0x1d3da8},function(_0x23352b,_0x54360d){if(_0x23352b){return _0x2f3b1d(_0x23352b);}else{return _0x305d4a(_0x54360d);}});});}function startTranscribe(_0x2ecc40,_0x5237c1,_0x41d956,_0x57e776,_0x236496,_0x115e86){return new Promise(function(_0x4c2548,_0x7ba422){var _0x416d09=new AWS[(_0xbd94('0x72'))]({'accessKeyId':_0x5237c1,'secretAccessKey':_0x2ecc40,'region':_0x41d956});_0x416d09[_0xbd94('0x73')]({'TranscriptionJobName':_0x57e776,'LanguageCode':_0x236496,'Media':{'MediaFileUri':_0x115e86}},function(_0xf9c73c,_0x292ff6){if(_0xf9c73c){return _0x7ba422(_0xf9c73c);}else{return _0x4c2548(_0x292ff6);}});});}function transcribe(_0x3bf4bb,_0x2a56f4,_0x518394,_0x17bc61,_0x5b4862,_0x5be7b2,_0xe618b){return new Promise(function(_0x2f885f,_0x304f9d){var _0x34859d={};logger[_0xbd94('0x6a')](util[_0xbd94('0x36')](_0xbd94('0x74'),_0x3bf4bb,_0x5b4862));return uploadFile(_0x2a56f4,_0x518394,_0x17bc61,_0x5b4862,path[_0xbd94('0x75')](_0x5be7b2),fs[_0xbd94('0x76')](_0x5be7b2))[_0xbd94('0x29')](function(_0x14ae10){logger[_0xbd94('0x6a')](util['format'](_0xbd94('0x77'),_0x3bf4bb,_0x5b4862,_0x14ae10['Location']));_0x34859d[_0xbd94('0x78')]=_0x14ae10['Bucket'];_0x34859d[_0xbd94('0x79')]=_0x14ae10['Location'];logger['info'](util[_0xbd94('0x36')](_0xbd94('0x7a'),_0x3bf4bb));return startTranscribe(_0x2a56f4,_0x518394,_0x17bc61,uuidv4(),_0xe618b,_0x14ae10[_0xbd94('0x7b')]);})[_0xbd94('0x29')](function(_0x2cfa01){logger[_0xbd94('0x6a')](util['format'](_0xbd94('0x7c'),_0x3bf4bb,_0x2cfa01[_0xbd94('0x7d')][_0xbd94('0x7e')]));_0x34859d[_0xbd94('0x7f')]=_0x2cfa01[_0xbd94('0x7d')][_0xbd94('0x7e')];_0x34859d[_0xbd94('0x80')]=_0x2cfa01[_0xbd94('0x7d')][_0xbd94('0x81')];return _0x2f885f(_0x34859d);})[_0xbd94('0x4c')](function(_0x2306b6){return _0x304f9d(_0x2306b6);});});}exports[_0xbd94('0x82')]=function(_0x483af6,_0x5e3845,_0x157dc4){var _0x2a9370;var _0x2f60e5;var _0x343aa1;var _0x23dcf1=require(_0xbd94('0x5f'));return db[_0xbd94('0x30')][_0xbd94('0x83')]({'where':{'id':_0x483af6[_0xbd94('0x4e')]['id']}})['then'](function(_0x1bd2c3){if(_0x1bd2c3){var _0x547659=util['format']('%s.cypher',_0x1bd2c3['value']);if(fs[_0xbd94('0x66')](_0x547659)){cypher=!![];return _0x23dcf1[_0xbd94('0x57')](_0x547659,_0x1bd2c3[_0xbd94('0x55')],config['secrets'][_0xbd94('0x58')])[_0xbd94('0x29')](function(){return _0x1bd2c3;});}return _0x1bd2c3;}})[_0xbd94('0x29')](function(_0x1847b0){if(!_0x1847b0){throw new db[(_0xbd94('0x84'))][(_0xbd94('0x59'))](_0xbd94('0x85'));}_0x2f60e5=_0x1847b0;return db[_0xbd94('0x86')][_0xbd94('0x83')]({'where':{'id':0x1}});})[_0xbd94('0x29')](handleEntityNotFound(_0x5e3845,null))['then'](function(_0x2c458c){if(_0x2c458c){_0x2a9370=_0x2c458c;if(!_0x2a9370['transcribe']||!_0x2a9370[_0xbd94('0x87')]||!_0x2a9370[_0xbd94('0x88')]||!_0x2a9370['language']||!_0x2a9370['bucket']){throw new db[(_0xbd94('0x84'))][(_0xbd94('0x59'))](_0xbd94('0x89'));}if(_0x483af6[_0xbd94('0x51')][_0xbd94('0x8a')]&&(!_0x2a9370['sentiment']||!_0x2a9370[_0xbd94('0x8b')]||!_0x2a9370['sentimentRegion']||!_0x2a9370[_0xbd94('0x8c')]||!_0x2a9370[_0xbd94('0x78')])){throw new db[(_0xbd94('0x84'))][(_0xbd94('0x59'))](_0xbd94('0x8d'));}return db[_0xbd94('0x8e')][_0xbd94('0x83')]({'where':{'id':_0x2a9370[_0xbd94('0x87')]}});}})[_0xbd94('0x29')](function(_0x222395){if(!_0x222395){throw new db[(_0xbd94('0x84'))][(_0xbd94('0x59'))]('Cloud\x20Provider\x20not\x20available');}if(!_0x222395[_0xbd94('0x8f')]||!_0x222395[_0xbd94('0x90')]){throw new db['Sequelize'][(_0xbd94('0x59'))](_0xbd94('0x91'));}_0x343aa1=_0x222395;return getBucketslist(_0x343aa1[_0xbd94('0x8f')],_0x343aa1[_0xbd94('0x90')],_0x2a9370[_0xbd94('0x88')]);})['then'](function(_0x45f2f3){if(_0x45f2f3&&_0x45f2f3[_0xbd94('0x92')]){var _0x4a46c6=_['find'](_0x45f2f3[_0xbd94('0x92')],function(_0x15b598){return _0x15b598[_0xbd94('0x93')]===_0x2a9370[_0xbd94('0x78')];});if(!_0x4a46c6){logger[_0xbd94('0x6a')](util['format'](_0xbd94('0x94'),_0x483af6['params']['id'],_0x2a9370[_0xbd94('0x78')]));return createBucket(_0x343aa1[_0xbd94('0x8f')],_0x343aa1['data2'],_0x2a9370['transcribeRegion'],_0x2a9370[_0xbd94('0x78')]);}logger['info'](util[_0xbd94('0x36')](_0xbd94('0x95'),_0x483af6['params']['id'],_0x2a9370['bucket']));return;}})[_0xbd94('0x29')](function(_0x3875bf){if(_0x2f60e5[_0xbd94('0x80')]==='NEW'){return transcribe(_0x483af6['params']['id'],_0x343aa1[_0xbd94('0x8f')],_0x343aa1[_0xbd94('0x90')],_0x2a9370['transcribeRegion'],_0x2a9370['bucket'],_0x2f60e5[_0xbd94('0x55')],_0x2a9370[_0xbd94('0x8c')]);}else{logger[_0xbd94('0x6a')](util[_0xbd94('0x36')](_0xbd94('0x96'),_0x483af6['params']['id']));return{'transcribeStatus':'IN_PROGRESS'};}})[_0xbd94('0x29')](function(_0x46188){if(_0x46188){_0x46188['tempSentiment']=_0x483af6['body']['runSentiment'];return _0x2f60e5[_0xbd94('0x97')](_0x46188);}})['then'](respondWithResult(_0x5e3845,null))[_0xbd94('0x4c')](handleError(_0x5e3845,null));};function writeFile(_0xaf164f,_0x1f665c){return new Promise(function(_0x2fef96,_0x2d60a6){fs[_0xbd94('0x98')](_0x1f665c,_0xaf164f,function(_0x35e7bd,_0x10ba95){if(_0x35e7bd){return _0x2d60a6(_0x35e7bd);}else{return _0x2fef96(_0x10ba95);}});});}exports[_0xbd94('0x99')]=function(_0x33c247,_0xd8cde5,_0x25afcc){return db[_0xbd94('0x30')][_0xbd94('0x83')]({'where':{'id':_0x33c247[_0xbd94('0x4e')]['id']}})[_0xbd94('0x29')](handleEntityNotFound(_0xd8cde5))[_0xbd94('0x29')](function(_0x10e171){if(_0x10e171&&_0x10e171[_0xbd94('0x9a')]){var _0x27048e=_0x10e171[_0xbd94('0x9a')];var _0x1e523d=config[_0xbd94('0x9b')]+_0xbd94('0x9c')+_0x10e171['id']+'.txt';if(fs[_0xbd94('0x66')](_0x1e523d)){return _0x1e523d;}return writeFile(_0x27048e,_0x1e523d)[_0xbd94('0x29')](function(){return _0x1e523d;});}else{throw new db['Sequelize'][(_0xbd94('0x59'))](_0xbd94('0x9d'));}})[_0xbd94('0x29')](function(_0x460959){return _0xd8cde5[_0xbd94('0x53')](_0x460959);})['catch'](handleError(_0xd8cde5));};