Built motion from commit b0a9a629.|2.6.33
[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 _0x4842=['tempSentiment','updateAttributes','downloadTranscribe','fileText','/server/files/transcribes/transcribe_','Transcript\x20not\x20available','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','fs-extra','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','json','undefined','limit','count','offset','status','set','Content-Range','apply','reject','save','update','then','stack','name','send','index','map','VoiceRecording','rawAttributes','fieldName','key','differenceBy','format','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','type','VIRTUAL','merge','include','findAll','rows','catch','show','includeAll','options','find','create','body','params','describe','download','../../components/encryptor','uniqueid','value','%s.cypher','existsSync','decryptFile','secrets','recording','VoiceRecording\x20not\x20found','filename','extname','unlink','message','Not\x20found','downloads','sequelize','MD5','token','$and','push','Sequelize','ValidationError','destroy','isNil','info','cancellazione\x20fisica\x20documento\x20%s','File:\x20\x22','unlinkSync','.cypher','\x22\x20trovato\x20eseguo\x20la\x20cancellazione','upload','startTranscriptionJob','[RUNTRANSCRIPT][%d]\x20Starting\x20voice\x20recording\x20upload\x20in\x20bucket\x20%s','basename','[RUNTRANSCRIPT][%d]\x20Voice\x20recording\x20uploaded\x20in\x20bucket\x20%s\x20(%s)','Location','bucket','Bucket','location','[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created','TranscriptionJob','TranscriptionJobName','transcribeStatus','TranscriptionJobStatus','findOne','Voice\x20Recording\x20not\x20found','Setting','transcribe','transcribeAccountId','transcribeRegion','language','runSentiment','sentiment','sentimentAccountId','sentimentRegion','Sentiment\x20Analysis\x20not\x20configured','data2','Cloud\x20Provider\x20not\x20configured','data1','Buckets','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available','NEW','[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested','IN_PROGRESS'];(function(_0xb1bb5d,_0x51cf53){var _0x4f52a7=function(_0x549ba8){while(--_0x549ba8){_0xb1bb5d['push'](_0xb1bb5d['shift']());}};_0x4f52a7(++_0x51cf53);}(_0x4842,0x138));var _0x2484=function(_0x16e4b4,_0x3f278d){_0x16e4b4=_0x16e4b4-0x0;var _0x9e1cf0=_0x4842[_0x16e4b4];return _0x9e1cf0;};'use strict';var emlformat=require(_0x2484('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x2484('0x1'));var jsonpatch=require(_0x2484('0x2'));var rp=require(_0x2484('0x3'));var moment=require(_0x2484('0x4'));var BPromise=require(_0x2484('0x5'));var Mustache=require('mustache');var util=require(_0x2484('0x6'));var path=require(_0x2484('0x7'));var sox=require(_0x2484('0x8'));var csv=require(_0x2484('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x2484('0xa'));var _=require('lodash');var squel=require(_0x2484('0xb'));var crypto=require(_0x2484('0xc'));var jsforce=require(_0x2484('0xd'));var deskjs=require(_0x2484('0xe'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x2484('0xf'));var AWS=require('aws-sdk');var uuidv4=require('uuid/v4');var Redis=require(_0x2484('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x2484('0x11'));var as=require(_0x2484('0x12'));var hardwareService=require(_0x2484('0x13'));var logger=require(_0x2484('0x14'))(_0x2484('0x15'));var utils=require(_0x2484('0x16'));var config=require(_0x2484('0x17'));var licenseUtil=require(_0x2484('0x18'));var db=require(_0x2484('0x19'))['db'];function respondWithStatusCode(_0x5ea970,_0x387ba9){_0x387ba9=_0x387ba9||0xcc;return function(_0x34e21b){if(_0x34e21b){return _0x5ea970[_0x2484('0x1a')](_0x387ba9);}return _0x5ea970['status'](_0x387ba9)[_0x2484('0x1b')]();};}function respondWithResult(_0x4dd01b,_0x194ddf){_0x194ddf=_0x194ddf||0xc8;return function(_0x573580){if(_0x573580){return _0x4dd01b['status'](_0x194ddf)[_0x2484('0x1c')](_0x573580);}};}function respondWithFilteredResult(_0x5e9f36,_0x55dd2c){return function(_0x4055fd){if(_0x4055fd){var _0x2bd928=typeof _0x55dd2c['offset']===_0x2484('0x1d')&&typeof _0x55dd2c[_0x2484('0x1e')]===_0x2484('0x1d');var _0x56866e=_0x4055fd[_0x2484('0x1f')];var _0x3199d7=_0x2bd928?0x0:_0x55dd2c['offset'];var _0x3c5a1f=_0x2bd928?_0x4055fd['count']:_0x55dd2c[_0x2484('0x20')]+_0x55dd2c['limit'];var _0x441591;if(_0x3c5a1f>=_0x56866e){_0x3c5a1f=_0x56866e;_0x441591=0xc8;}else{_0x441591=0xce;}_0x5e9f36[_0x2484('0x21')](_0x441591);return _0x5e9f36[_0x2484('0x22')](_0x2484('0x23'),_0x3199d7+'-'+_0x3c5a1f+'/'+_0x56866e)[_0x2484('0x1c')](_0x4055fd);}return null;};}function patchUpdates(_0x183755){return function(_0x2b71a7){try{jsonpatch[_0x2484('0x24')](_0x2b71a7,_0x183755,!![]);}catch(_0x3ddf58){return BPromise[_0x2484('0x25')](_0x3ddf58);}return _0x2b71a7[_0x2484('0x26')]();};}function saveUpdates(_0x4e072d,_0x1e584e){return function(_0x5c25a7){if(_0x5c25a7){return _0x5c25a7[_0x2484('0x27')](_0x4e072d)[_0x2484('0x28')](function(_0xe2af7b){return _0xe2af7b;});}return null;};}function removeEntity(_0xb75e1,_0xbf12dd){return function(_0x7567c){if(_0x7567c){return _0x7567c['destroy']()[_0x2484('0x28')](function(){_0xb75e1[_0x2484('0x21')](0xcc)[_0x2484('0x1b')]();});}};}function handleEntityNotFound(_0x2dcdbd,_0x52b456){return function(_0x33d3e8){if(!_0x33d3e8){_0x2dcdbd[_0x2484('0x1a')](0x194);}return _0x33d3e8;};}function handleError(_0x1fc536,_0x5c88b9){_0x5c88b9=_0x5c88b9||0x1f4;return function(_0x48d074){logger['error'](_0x48d074[_0x2484('0x29')]);if(_0x48d074[_0x2484('0x2a')]){delete _0x48d074[_0x2484('0x2a')];}_0x1fc536[_0x2484('0x21')](_0x5c88b9)[_0x2484('0x2b')](_0x48d074);};}exports[_0x2484('0x2c')]=function(_0x2b1dba,_0x1115a3){var _0x2cd4b5={},_0x159207={},_0x351fc1={'count':0x0,'rows':[]};var _0x55c1c8=_[_0x2484('0x2d')](db[_0x2484('0x2e')][_0x2484('0x2f')],function(_0x22f1b5){return{'name':_0x22f1b5[_0x2484('0x30')],'type':_0x22f1b5['type'][_0x2484('0x31')]};});_0x159207['model']=_[_0x2484('0x32')](_['map'](_0x55c1c8,_0x2484('0x2a')),[_0x2484('0x33')]);_0x159207[_0x2484('0x34')]=_[_0x2484('0x35')](_0x2b1dba['query']);_0x159207[_0x2484('0x36')]=_[_0x2484('0x37')](_0x159207[_0x2484('0x38')],_0x159207[_0x2484('0x34')]);_0x2cd4b5[_0x2484('0x39')]=_[_0x2484('0x37')](_0x159207[_0x2484('0x38')],qs[_0x2484('0x3a')](_0x2b1dba['query'][_0x2484('0x3a')]));_0x2cd4b5['attributes']=_0x2cd4b5[_0x2484('0x39')][_0x2484('0x3b')]?_0x2cd4b5[_0x2484('0x39')]:_0x159207[_0x2484('0x38')];if(!_0x2b1dba[_0x2484('0x34')][_0x2484('0x3c')](_0x2484('0x3d'))){_0x2cd4b5[_0x2484('0x1e')]=qs[_0x2484('0x1e')](_0x2b1dba[_0x2484('0x34')][_0x2484('0x1e')]);_0x2cd4b5[_0x2484('0x20')]=qs[_0x2484('0x20')](_0x2b1dba['query'][_0x2484('0x20')]);}_0x2cd4b5[_0x2484('0x3e')]=qs[_0x2484('0x3f')](_0x2b1dba[_0x2484('0x34')][_0x2484('0x3f')]);_0x2cd4b5[_0x2484('0x40')]=qs[_0x2484('0x36')](_['pick'](_0x2b1dba[_0x2484('0x34')],_0x159207[_0x2484('0x36')]),_0x55c1c8);if(_0x2b1dba[_0x2484('0x34')][_0x2484('0x41')]){_0x2cd4b5[_0x2484('0x40')]=_['merge'](_0x2cd4b5[_0x2484('0x40')],{'$or':_['map'](_0x55c1c8,function(_0x3744e4){if(_0x3744e4[_0x2484('0x42')]!==_0x2484('0x43')){var _0x485ca1={};_0x485ca1[_0x3744e4[_0x2484('0x2a')]]={'$like':'%'+_0x2b1dba[_0x2484('0x34')][_0x2484('0x41')]+'%'};return _0x485ca1;}})});}_0x2cd4b5=_[_0x2484('0x44')]({},_0x2cd4b5,_0x2b1dba['options']);var _0x5d7af8={'where':_0x2cd4b5[_0x2484('0x40')]};return db['VoiceRecording'][_0x2484('0x1f')](_0x5d7af8)[_0x2484('0x28')](function(_0x478454){_0x351fc1['count']=_0x478454;if(_0x2b1dba['query']['includeAll']){_0x2cd4b5[_0x2484('0x45')]=[{'all':!![]}];}return db[_0x2484('0x2e')][_0x2484('0x46')](_0x2cd4b5);})[_0x2484('0x28')](function(_0x1050ec){_0x351fc1[_0x2484('0x47')]=_0x1050ec;return _0x351fc1;})[_0x2484('0x28')](respondWithFilteredResult(_0x1115a3,_0x2cd4b5))[_0x2484('0x48')](handleError(_0x1115a3,null));};exports[_0x2484('0x49')]=function(_0x5f0b19,_0x11271c){var _0x88c9ff={'raw':![],'where':{'id':_0x5f0b19['params']['id']}},_0xf0fc23={};_0xf0fc23[_0x2484('0x38')]=_[_0x2484('0x35')](db[_0x2484('0x2e')][_0x2484('0x2f')]);_0xf0fc23[_0x2484('0x34')]=_[_0x2484('0x35')](_0x5f0b19[_0x2484('0x34')]);_0xf0fc23['filters']=_['intersection'](_0xf0fc23[_0x2484('0x38')],_0xf0fc23[_0x2484('0x34')]);_0x88c9ff[_0x2484('0x39')]=_[_0x2484('0x37')](_0xf0fc23['model'],qs[_0x2484('0x3a')](_0x5f0b19['query'][_0x2484('0x3a')]));_0x88c9ff[_0x2484('0x39')]=_0x88c9ff[_0x2484('0x39')][_0x2484('0x3b')]?_0x88c9ff['attributes']:_0xf0fc23[_0x2484('0x38')];if(_0x5f0b19[_0x2484('0x34')][_0x2484('0x4a')]){_0x88c9ff[_0x2484('0x45')]=[{'all':!![]}];}_0x88c9ff=_[_0x2484('0x44')]({},_0x88c9ff,_0x5f0b19[_0x2484('0x4b')]);return db[_0x2484('0x2e')][_0x2484('0x4c')](_0x88c9ff)['then'](handleEntityNotFound(_0x11271c,null))[_0x2484('0x28')](respondWithResult(_0x11271c,null))['catch'](handleError(_0x11271c,null));};exports[_0x2484('0x4d')]=function(_0x51cb28,_0x5bebfb){return db['VoiceRecording'][_0x2484('0x4d')](_0x51cb28[_0x2484('0x4e')],{})[_0x2484('0x28')](respondWithResult(_0x5bebfb,0xc9))[_0x2484('0x48')](handleError(_0x5bebfb,null));};exports[_0x2484('0x27')]=function(_0x4efde5,_0x5c4d77){if(_0x4efde5['body']['id']){delete _0x4efde5[_0x2484('0x4e')]['id'];}return db[_0x2484('0x2e')]['find']({'where':{'id':_0x4efde5[_0x2484('0x4f')]['id']}})['then'](handleEntityNotFound(_0x5c4d77,null))[_0x2484('0x28')](saveUpdates(_0x4efde5[_0x2484('0x4e')],null))[_0x2484('0x28')](respondWithResult(_0x5c4d77,null))['catch'](handleError(_0x5c4d77,null));};exports[_0x2484('0x50')]=function(_0x86de96,_0x3fdd3d){return db[_0x2484('0x2e')][_0x2484('0x50')]()[_0x2484('0x28')](respondWithResult(_0x3fdd3d,null))[_0x2484('0x48')](handleError(_0x3fdd3d,null));};exports[_0x2484('0x51')]=function(_0x24cf90,_0x48de88,_0x30e972){var _0xf109e2=require(_0x2484('0x52'));var _0xd4106f=![];var _0x48d553={};if(_0x24cf90[_0x2484('0x34')][_0x2484('0x42')]&&_0x24cf90[_0x2484('0x34')][_0x2484('0x42')]===_0x2484('0x53')){_0x48d553[_0x2484('0x53')]=_0x24cf90[_0x2484('0x4f')]['id'];}else{_0x48d553['id']=_0x24cf90['params']['id'];}return db['VoiceRecording'][_0x2484('0x4c')]({'where':_0x48d553,'attributes':['id',_0x2484('0x54')],'raw':!![]})[_0x2484('0x28')](handleEntityNotFound(_0x48de88,null))['then'](function(_0x545e7f){if(_0x545e7f){var _0x222de6=_0x545e7f[_0x2484('0x54')];var _0x42c9fb=util[_0x2484('0x33')](_0x2484('0x55'),_0x222de6);if(fs[_0x2484('0x56')](_0x42c9fb)){_0xd4106f=!![];return _0xf109e2[_0x2484('0x57')](_0x42c9fb,_0x222de6,config[_0x2484('0x58')][_0x2484('0x59')])[_0x2484('0x28')](function(){return _0x545e7f;});}return _0x545e7f;}})[_0x2484('0x28')](function(_0xfcea75){if(_0xfcea75){var _0x19617e=_0xfcea75['value'];if(!fs['existsSync'](_0x19617e)){throw new db['Sequelize']['ValidationError'](_0x2484('0x5a'));}if(_0xfcea75[_0x2484('0x5b')]){return _0x48de88[_0x2484('0x51')](_0x19617e,_0xfcea75[_0x2484('0x5b')]+path[_0x2484('0x5c')](_0x19617e),function(){if(_0xd4106f){fs['unlink'](_0x19617e);}});}else{return _0x48de88[_0x2484('0x51')](_0x19617e,function(_0x58a3d5){if(_0xd4106f){fs[_0x2484('0x5d')](_0x19617e);}});}}})[_0x2484('0x48')](function(_0x48ec4d){if(_0x48ec4d[_0x2484('0x5e')]==='VoiceRecording\x20not\x20found'){_0x48de88[_0x2484('0x21')](0x194)[_0x2484('0x2b')](_0x2484('0x5f'));}else{return handleError(_0x48de88,null);}});};exports[_0x2484('0x60')]=function(_0x169f13,_0x221142,_0x5c04f1){var _0x345f5d=require(_0x2484('0x52'));var _0x3c268d=![];var _0x242c57={'$and':[db['sequelize']['where'](db[_0x2484('0x61')]['fn'](_0x2484('0x62'),db[_0x2484('0x61')]['col']('uniqueid')),_0x169f13[_0x2484('0x34')][_0x2484('0x63')])]};if(_0x169f13[_0x2484('0x34')][_0x2484('0x42')]&&_0x169f13[_0x2484('0x34')][_0x2484('0x42')]===_0x2484('0x53')){_0x242c57[_0x2484('0x64')][_0x2484('0x65')]({'uniqueid':_0x169f13['params']['id']});}else{_0x242c57[_0x2484('0x64')][_0x2484('0x65')]({'id':_0x169f13[_0x2484('0x4f')]['id']});}return db[_0x2484('0x2e')][_0x2484('0x4c')]({'where':_0x242c57,'attributes':['id',_0x2484('0x54')],'raw':!![]})[_0x2484('0x28')](handleEntityNotFound(_0x221142,null))[_0x2484('0x28')](function(_0x559a49){if(_0x559a49){var _0x2c78b7=util['format'](_0x2484('0x55'),_0x559a49['value']);if(fs[_0x2484('0x56')](_0x2c78b7)){_0x3c268d=!![];return _0x345f5d[_0x2484('0x57')](_0x2c78b7,_0x559a49[_0x2484('0x54')],config[_0x2484('0x58')][_0x2484('0x59')])[_0x2484('0x28')](function(){return _0x559a49;});}return _0x559a49;}})[_0x2484('0x28')](function(_0x4bc390){if(_0x4bc390){if(!fs['existsSync'](_0x4bc390[_0x2484('0x54')])){throw new db[(_0x2484('0x66'))][(_0x2484('0x67'))](_0x2484('0x5a'));}if(_0x4bc390[_0x2484('0x5b')]){return _0x221142[_0x2484('0x51')](_0x4bc390[_0x2484('0x54')],_0x4bc390[_0x2484('0x5b')]+path[_0x2484('0x5c')](_0x4bc390[_0x2484('0x54')]),function(){if(_0x3c268d){fs[_0x2484('0x5d')](_0x4bc390[_0x2484('0x54')]);}});}else{return _0x221142[_0x2484('0x51')](_0x4bc390['value'],function(_0x2449a1){if(_0x3c268d){fs[_0x2484('0x5d')](_0x4bc390[_0x2484('0x54')]);}});}}})['catch'](handleError(_0x221142,null));};exports[_0x2484('0x68')]=function(_0x473629,_0x5e28d6){return db[_0x2484('0x2e')][_0x2484('0x4c')]({'where':{'id':_0x473629['params']['id']}})[_0x2484('0x28')](function(_0x299e1c){if(_[_0x2484('0x69')](_0x299e1c)){throw new ReferenceError('Entity\x20not\x20found');}return _0x299e1c;})[_0x2484('0x28')](function(_0x1e1760){var _0x4e762d=_0x1e1760[_0x2484('0x54')];logger[_0x2484('0x6a')](_0x2484('0x6b'),_0x4e762d);if(!_['isNil'](_0x1e1760[_0x2484('0x54')])&&fs[_0x2484('0x56')](_0x4e762d)){logger[_0x2484('0x6a')](_0x2484('0x6c')+_0x4e762d+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs[_0x2484('0x6d')](_0x4e762d);}_0x4e762d=_0x4e762d+_0x2484('0x6e');if(!_[_0x2484('0x69')](_0x1e1760['value'])&&fs[_0x2484('0x56')](_0x4e762d)){logger[_0x2484('0x6a')](_0x2484('0x6c')+_0x4e762d+_0x2484('0x6f'));fs[_0x2484('0x6d')](_0x4e762d);}return _0x1e1760;})[_0x2484('0x28')](function(_0x57725b){if(!_0x57725b)throw new InternalError();return _0x57725b['destroy']();})['then'](function(){_0x5e28d6[_0x2484('0x21')](0xcc)['end']();})[_0x2484('0x48')](handleError(_0x5e28d6,null));};function getBucketslist(_0x416d49,_0xadab46,_0x5df5e2){return new Promise(function(_0xaf6932,_0x224db5){var _0x4b8178=new AWS['S3']({'accessKeyId':_0xadab46,'secretAccessKey':_0x416d49,'region':_0x5df5e2});_0x4b8178['listBuckets']({},function(_0x29752a,_0x2bb16e){if(_0x29752a){return _0x224db5(_0x29752a);}else{return _0xaf6932(_0x2bb16e);}});});}function createBucket(_0x595212,_0x1f7887,_0x300f02,_0x335937){return new Promise(function(_0x7eb2ee,_0x4c8b18){var _0x4a05f5=new AWS['S3']({'accessKeyId':_0x1f7887,'secretAccessKey':_0x595212,'region':_0x300f02});_0x4a05f5['createBucket']({'Bucket':_0x335937},function(_0x1ee105,_0x353c74){if(_0x1ee105){return _0x4c8b18(_0x1ee105);}else{return _0x7eb2ee(_0x353c74);}});});}function uploadFile(_0x2c4e18,_0x33cdcd,_0x2b92c5,_0x4d88ed,_0x5713d1,_0x298342){return new Promise(function(_0x1269bb,_0x710f51){var _0x408648=new AWS['S3']({'accessKeyId':_0x33cdcd,'secretAccessKey':_0x2c4e18,'region':_0x2b92c5});_0x408648[_0x2484('0x70')]({'Bucket':_0x4d88ed,'Key':_0x5713d1,'Body':_0x298342},function(_0x1361f8,_0x736a71){if(_0x1361f8){return _0x710f51(_0x1361f8);}else{return _0x1269bb(_0x736a71);}});});}function startTranscribe(_0x354672,_0x5d6887,_0x23f716,_0x534667,_0x1d91cd,_0x42484d){return new Promise(function(_0x50c11a,_0x48bf08){var _0x4cb1c0=new AWS['TranscribeService']({'accessKeyId':_0x5d6887,'secretAccessKey':_0x354672,'region':_0x23f716});_0x4cb1c0[_0x2484('0x71')]({'TranscriptionJobName':_0x534667,'LanguageCode':_0x1d91cd,'Media':{'MediaFileUri':_0x42484d}},function(_0x13fb0c,_0x41b7a8){if(_0x13fb0c){return _0x48bf08(_0x13fb0c);}else{return _0x50c11a(_0x41b7a8);}});});}function transcribe(_0x5a21cb,_0x58cfc7,_0x339f7c,_0x3de704,_0xcaffd9,_0x42859f,_0x9c97b6){return new Promise(function(_0x15e5b5,_0xa967fc){var _0x228d1c={};logger[_0x2484('0x6a')](util['format'](_0x2484('0x72'),_0x5a21cb,_0xcaffd9));return uploadFile(_0x58cfc7,_0x339f7c,_0x3de704,_0xcaffd9,path[_0x2484('0x73')](_0x42859f),fs['readFileSync'](_0x42859f))['then'](function(_0xf96144){logger[_0x2484('0x6a')](util[_0x2484('0x33')](_0x2484('0x74'),_0x5a21cb,_0xcaffd9,_0xf96144[_0x2484('0x75')]));_0x228d1c[_0x2484('0x76')]=_0xf96144[_0x2484('0x77')];_0x228d1c[_0x2484('0x78')]=_0xf96144['Location'];logger['info'](util[_0x2484('0x33')]('[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request',_0x5a21cb));return startTranscribe(_0x58cfc7,_0x339f7c,_0x3de704,uuidv4(),_0x9c97b6,_0xf96144[_0x2484('0x75')]);})['then'](function(_0x43c418){logger[_0x2484('0x6a')](util[_0x2484('0x33')](_0x2484('0x79'),_0x5a21cb,_0x43c418['TranscriptionJob']['TranscriptionJobName']));_0x228d1c['transcribeName']=_0x43c418[_0x2484('0x7a')][_0x2484('0x7b')];_0x228d1c[_0x2484('0x7c')]=_0x43c418[_0x2484('0x7a')][_0x2484('0x7d')];return _0x15e5b5(_0x228d1c);})[_0x2484('0x48')](function(_0x51a280){return _0xa967fc(_0x51a280);});});}exports['runTranscribe']=function(_0x45d77f,_0x3b7de0,_0x4ae691){var _0x19e7a1;var _0x53f332;var _0x1518e6;var _0x1f8415=require(_0x2484('0x52'));return db[_0x2484('0x2e')][_0x2484('0x7e')]({'where':{'id':_0x45d77f['params']['id']}})[_0x2484('0x28')](function(_0x406abe){if(_0x406abe){var _0x345833=util['format'](_0x2484('0x55'),_0x406abe[_0x2484('0x54')]);if(fs['existsSync'](_0x345833)){cypher=!![];return _0x1f8415['decryptFile'](_0x345833,_0x406abe['value'],config['secrets'][_0x2484('0x59')])[_0x2484('0x28')](function(){return _0x406abe;});}return _0x406abe;}})[_0x2484('0x28')](function(_0x538d35){if(!_0x538d35){throw new db[(_0x2484('0x66'))][(_0x2484('0x67'))](_0x2484('0x7f'));}_0x53f332=_0x538d35;return db[_0x2484('0x80')]['findOne']({'where':{'id':0x1}});})[_0x2484('0x28')](handleEntityNotFound(_0x3b7de0,null))['then'](function(_0x3047b5){if(_0x3047b5){_0x19e7a1=_0x3047b5;if(!_0x19e7a1[_0x2484('0x81')]||!_0x19e7a1[_0x2484('0x82')]||!_0x19e7a1[_0x2484('0x83')]||!_0x19e7a1[_0x2484('0x84')]||!_0x19e7a1[_0x2484('0x76')]){throw new db[(_0x2484('0x66'))][(_0x2484('0x67'))]('Transcribe\x20not\x20configured');}if(_0x45d77f[_0x2484('0x4e')][_0x2484('0x85')]&&(!_0x19e7a1[_0x2484('0x86')]||!_0x19e7a1[_0x2484('0x87')]||!_0x19e7a1[_0x2484('0x88')]||!_0x19e7a1[_0x2484('0x84')]||!_0x19e7a1[_0x2484('0x76')])){throw new db[(_0x2484('0x66'))][(_0x2484('0x67'))](_0x2484('0x89'));}return db['CloudProvider']['findOne']({'where':{'id':_0x19e7a1[_0x2484('0x82')]}});}})[_0x2484('0x28')](function(_0x259ac8){if(!_0x259ac8){throw new db[(_0x2484('0x66'))][(_0x2484('0x67'))]('Cloud\x20Provider\x20not\x20available');}if(!_0x259ac8['data1']||!_0x259ac8[_0x2484('0x8a')]){throw new db[(_0x2484('0x66'))]['ValidationError'](_0x2484('0x8b'));}_0x1518e6=_0x259ac8;return getBucketslist(_0x1518e6[_0x2484('0x8c')],_0x1518e6[_0x2484('0x8a')],_0x19e7a1[_0x2484('0x83')]);})['then'](function(_0x2077b4){if(_0x2077b4&&_0x2077b4['Buckets']){var _0x1e6f81=_['find'](_0x2077b4[_0x2484('0x8d')],function(_0x249f1d){return _0x249f1d['Name']===_0x19e7a1[_0x2484('0x76')];});if(!_0x1e6f81){logger['info'](util[_0x2484('0x33')](_0x2484('0x8e'),_0x45d77f[_0x2484('0x4f')]['id'],_0x19e7a1[_0x2484('0x76')]));return createBucket(_0x1518e6[_0x2484('0x8c')],_0x1518e6[_0x2484('0x8a')],_0x19e7a1[_0x2484('0x83')],_0x19e7a1[_0x2484('0x76')]);}logger[_0x2484('0x6a')](util['format'](_0x2484('0x8f'),_0x45d77f[_0x2484('0x4f')]['id'],_0x19e7a1['bucket']));return;}})[_0x2484('0x28')](function(_0xdf6662){if(_0x53f332[_0x2484('0x7c')]===_0x2484('0x90')){return transcribe(_0x45d77f[_0x2484('0x4f')]['id'],_0x1518e6[_0x2484('0x8c')],_0x1518e6[_0x2484('0x8a')],_0x19e7a1[_0x2484('0x83')],_0x19e7a1[_0x2484('0x76')],_0x53f332[_0x2484('0x54')],_0x19e7a1[_0x2484('0x84')]);}else{logger['info'](util[_0x2484('0x33')](_0x2484('0x91'),_0x45d77f[_0x2484('0x4f')]['id']));return{'transcribeStatus':_0x2484('0x92')};}})[_0x2484('0x28')](function(_0x23a651){if(_0x23a651){_0x23a651[_0x2484('0x93')]=_0x45d77f[_0x2484('0x4e')][_0x2484('0x85')];return _0x53f332[_0x2484('0x94')](_0x23a651);}})[_0x2484('0x28')](respondWithResult(_0x3b7de0,null))[_0x2484('0x48')](handleError(_0x3b7de0,null));};function writeFile(_0x131891,_0x277f8a){return new Promise(function(_0x41e635,_0x47d272){fs['writeFile'](_0x277f8a,_0x131891,function(_0x2b57ef,_0x49f269){if(_0x2b57ef){return _0x47d272(_0x2b57ef);}else{return _0x41e635(_0x49f269);}});});}exports[_0x2484('0x95')]=function(_0xa778d4,_0xcdaa50,_0x50b479){return db[_0x2484('0x2e')][_0x2484('0x7e')]({'where':{'id':_0xa778d4[_0x2484('0x4f')]['id']}})[_0x2484('0x28')](handleEntityNotFound(_0xcdaa50))[_0x2484('0x28')](function(_0x23dc79){if(_0x23dc79&&_0x23dc79['fileText']){var _0x48de7a=_0x23dc79[_0x2484('0x96')];var _0x1082a5=config['root']+_0x2484('0x97')+_0x23dc79['id']+'.txt';if(fs['existsSync'](_0x1082a5)){return _0x1082a5;}return writeFile(_0x48de7a,_0x1082a5)[_0x2484('0x28')](function(){return _0x1082a5;});}else{throw new db[(_0x2484('0x66'))][(_0x2484('0x67'))](_0x2484('0x98'));}})[_0x2484('0x28')](function(_0x17603b){return _0xcdaa50[_0x2484('0x51')](_0x17603b);})['catch'](handleError(_0xcdaa50));};