Built motion from commit d5e4af8c.|2.6.23
[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 _0x967b=['[RUNTRANSCRIPT][%d]\x20Sending\x20transcribe\x20request','TranscriptionJobName','TranscriptionJob','transcribeStatus','TranscriptionJobStatus','runTranscribe','findOne','Voice\x20Recording\x20not\x20found','Setting','transcribeAccountId','transcribeRegion','language','runSentiment','sentiment','sentimentRegion','Sentiment\x20Analysis\x20not\x20configured','CloudProvider','Cloud\x20Provider\x20not\x20available','data2','data1','Buckets','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20not\x20available','[RUNTRANSCRIPT][%d]\x20Bucket\x20%s\x20available','NEW','IN_PROGRESS','tempSentiment','writeFile','downloadTranscribe','fileText','root','/server/files/transcribes/transcribe_','.txt','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','aws-sdk','ioredis','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','save','update','then','stack','name','send','index','map','VoiceRecording','rawAttributes','type','key','differenceBy','query','filters','model','attributes','fields','length','hasOwnProperty','sort','pick','where','VIRTUAL','filter','options','include','rows','catch','show','params','keys','includeAll','merge','create','body','find','describe','download','../../components/encryptor','uniqueid','value','%s.cypher','existsSync','decryptFile','secrets','recording','Sequelize','VoiceRecording\x20not\x20found','filename','extname','unlink','message','Not\x20found','downloads','sequelize','MD5','token','$and','push','format','ValidationError','destroy','isNil','Entity\x20not\x20found','info','File:\x20\x22','unlinkSync','.cypher','listBuckets','createBucket','upload','TranscribeService','[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'];(function(_0x331c1e,_0x337bc7){var _0x11feea=function(_0x27c013){while(--_0x27c013){_0x331c1e['push'](_0x331c1e['shift']());}};_0x11feea(++_0x337bc7);}(_0x967b,0xb4));var _0xb967=function(_0x4c445a,_0x4ee80f){_0x4c445a=_0x4c445a-0x0;var _0x2f611c=_0x967b[_0x4c445a];return _0x2f611c;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xb967('0x0'));var zipdir=require(_0xb967('0x1'));var jsonpatch=require(_0xb967('0x2'));var rp=require(_0xb967('0x3'));var moment=require(_0xb967('0x4'));var BPromise=require(_0xb967('0x5'));var Mustache=require(_0xb967('0x6'));var util=require(_0xb967('0x7'));var path=require(_0xb967('0x8'));var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb967('0x9'));var _=require(_0xb967('0xa'));var squel=require(_0xb967('0xb'));var crypto=require(_0xb967('0xc'));var jsforce=require(_0xb967('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xb967('0xe'));var Papa=require(_0xb967('0xf'));var AWS=require(_0xb967('0x10'));var uuidv4=require('uuid/v4');var Redis=require(_0xb967('0x11'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xb967('0x12'));var logger=require(_0xb967('0x13'))(_0xb967('0x14'));var utils=require(_0xb967('0x15'));var config=require(_0xb967('0x16'));var licenseUtil=require(_0xb967('0x17'));var db=require(_0xb967('0x18'))['db'];function respondWithStatusCode(_0x22db59,_0x58fe27){_0x58fe27=_0x58fe27||0xcc;return function(_0x2fcd4f){if(_0x2fcd4f){return _0x22db59[_0xb967('0x19')](_0x58fe27);}return _0x22db59[_0xb967('0x1a')](_0x58fe27)[_0xb967('0x1b')]();};}function respondWithResult(_0x1c093d,_0x2e5692){_0x2e5692=_0x2e5692||0xc8;return function(_0x508bbe){if(_0x508bbe){return _0x1c093d[_0xb967('0x1a')](_0x2e5692)[_0xb967('0x1c')](_0x508bbe);}};}function respondWithFilteredResult(_0x19938b,_0x58b2f4){return function(_0xed7d9d){if(_0xed7d9d){var _0xbeea4c=typeof _0x58b2f4[_0xb967('0x1d')]===_0xb967('0x1e')&&typeof _0x58b2f4[_0xb967('0x1f')]===_0xb967('0x1e');var _0x18f4b3=_0xed7d9d[_0xb967('0x20')];var _0xb391a0=_0xbeea4c?0x0:_0x58b2f4['offset'];var _0x519550=_0xbeea4c?_0xed7d9d[_0xb967('0x20')]:_0x58b2f4[_0xb967('0x1d')]+_0x58b2f4[_0xb967('0x1f')];var _0xb1d3ca;if(_0x519550>=_0x18f4b3){_0x519550=_0x18f4b3;_0xb1d3ca=0xc8;}else{_0xb1d3ca=0xce;}_0x19938b[_0xb967('0x1a')](_0xb1d3ca);return _0x19938b[_0xb967('0x21')](_0xb967('0x22'),_0xb391a0+'-'+_0x519550+'/'+_0x18f4b3)[_0xb967('0x1c')](_0xed7d9d);}return null;};}function patchUpdates(_0x5d2f42){return function(_0x56ab03){try{jsonpatch[_0xb967('0x23')](_0x56ab03,_0x5d2f42,!![]);}catch(_0x579ae4){return BPromise['reject'](_0x579ae4);}return _0x56ab03[_0xb967('0x24')]();};}function saveUpdates(_0x4d6a5f,_0x8c8205){return function(_0x29c53b){if(_0x29c53b){return _0x29c53b[_0xb967('0x25')](_0x4d6a5f)[_0xb967('0x26')](function(_0x179ca4){return _0x179ca4;});}return null;};}function removeEntity(_0x347883,_0x45f28e){return function(_0x5eb7bf){if(_0x5eb7bf){return _0x5eb7bf['destroy']()[_0xb967('0x26')](function(){_0x347883['status'](0xcc)[_0xb967('0x1b')]();});}};}function handleEntityNotFound(_0x409835,_0x337122){return function(_0x2e852c){if(!_0x2e852c){_0x409835[_0xb967('0x19')](0x194);}return _0x2e852c;};}function handleError(_0x5f1dce,_0x554e82){_0x554e82=_0x554e82||0x1f4;return function(_0x1c605b){logger['error'](_0x1c605b[_0xb967('0x27')]);if(_0x1c605b['name']){delete _0x1c605b[_0xb967('0x28')];}_0x5f1dce['status'](_0x554e82)[_0xb967('0x29')](_0x1c605b);};}exports[_0xb967('0x2a')]=function(_0x422950,_0x1034cd){var _0x2cc0e7={},_0xd0c518={},_0x4f6b2f={'count':0x0,'rows':[]};var _0x500bb1=_[_0xb967('0x2b')](db[_0xb967('0x2c')][_0xb967('0x2d')],function(_0x2d4034){return{'name':_0x2d4034['fieldName'],'type':_0x2d4034[_0xb967('0x2e')][_0xb967('0x2f')]};});_0xd0c518['model']=_[_0xb967('0x30')](_[_0xb967('0x2b')](_0x500bb1,'name'),['format']);_0xd0c518[_0xb967('0x31')]=_['keys'](_0x422950[_0xb967('0x31')]);_0xd0c518[_0xb967('0x32')]=_['intersection'](_0xd0c518[_0xb967('0x33')],_0xd0c518[_0xb967('0x31')]);_0x2cc0e7[_0xb967('0x34')]=_['intersection'](_0xd0c518[_0xb967('0x33')],qs[_0xb967('0x35')](_0x422950[_0xb967('0x31')][_0xb967('0x35')]));_0x2cc0e7[_0xb967('0x34')]=_0x2cc0e7[_0xb967('0x34')][_0xb967('0x36')]?_0x2cc0e7[_0xb967('0x34')]:_0xd0c518[_0xb967('0x33')];if(!_0x422950[_0xb967('0x31')][_0xb967('0x37')]('nolimit')){_0x2cc0e7['limit']=qs[_0xb967('0x1f')](_0x422950['query'][_0xb967('0x1f')]);_0x2cc0e7[_0xb967('0x1d')]=qs['offset'](_0x422950['query'][_0xb967('0x1d')]);}_0x2cc0e7['order']=qs['sort'](_0x422950[_0xb967('0x31')][_0xb967('0x38')]);_0x2cc0e7['where']=qs[_0xb967('0x32')](_[_0xb967('0x39')](_0x422950[_0xb967('0x31')],_0xd0c518[_0xb967('0x32')]),_0x500bb1);if(_0x422950[_0xb967('0x31')]['filter']){_0x2cc0e7[_0xb967('0x3a')]=_['merge'](_0x2cc0e7[_0xb967('0x3a')],{'$or':_[_0xb967('0x2b')](_0x500bb1,function(_0x107781){if(_0x107781['type']!==_0xb967('0x3b')){var _0x560d86={};_0x560d86[_0x107781[_0xb967('0x28')]]={'$like':'%'+_0x422950[_0xb967('0x31')][_0xb967('0x3c')]+'%'};return _0x560d86;}})});}_0x2cc0e7=_['merge']({},_0x2cc0e7,_0x422950[_0xb967('0x3d')]);var _0x4825db={'where':_0x2cc0e7[_0xb967('0x3a')]};return db[_0xb967('0x2c')][_0xb967('0x20')](_0x4825db)[_0xb967('0x26')](function(_0x4d2a38){_0x4f6b2f[_0xb967('0x20')]=_0x4d2a38;if(_0x422950[_0xb967('0x31')]['includeAll']){_0x2cc0e7[_0xb967('0x3e')]=[{'all':!![]}];}return db[_0xb967('0x2c')]['findAll'](_0x2cc0e7);})[_0xb967('0x26')](function(_0x298172){_0x4f6b2f[_0xb967('0x3f')]=_0x298172;return _0x4f6b2f;})[_0xb967('0x26')](respondWithFilteredResult(_0x1034cd,_0x2cc0e7))[_0xb967('0x40')](handleError(_0x1034cd,null));};exports[_0xb967('0x41')]=function(_0x5580a5,_0x262db9){var _0xab8cde={'raw':![],'where':{'id':_0x5580a5[_0xb967('0x42')]['id']}},_0x4697bc={};_0x4697bc[_0xb967('0x33')]=_[_0xb967('0x43')](db[_0xb967('0x2c')][_0xb967('0x2d')]);_0x4697bc[_0xb967('0x31')]=_['keys'](_0x5580a5[_0xb967('0x31')]);_0x4697bc['filters']=_['intersection'](_0x4697bc['model'],_0x4697bc[_0xb967('0x31')]);_0xab8cde[_0xb967('0x34')]=_['intersection'](_0x4697bc[_0xb967('0x33')],qs['fields'](_0x5580a5[_0xb967('0x31')]['fields']));_0xab8cde['attributes']=_0xab8cde[_0xb967('0x34')][_0xb967('0x36')]?_0xab8cde[_0xb967('0x34')]:_0x4697bc['model'];if(_0x5580a5[_0xb967('0x31')][_0xb967('0x44')]){_0xab8cde[_0xb967('0x3e')]=[{'all':!![]}];}_0xab8cde=_[_0xb967('0x45')]({},_0xab8cde,_0x5580a5[_0xb967('0x3d')]);return db['VoiceRecording']['find'](_0xab8cde)[_0xb967('0x26')](handleEntityNotFound(_0x262db9,null))[_0xb967('0x26')](respondWithResult(_0x262db9,null))[_0xb967('0x40')](handleError(_0x262db9,null));};exports['create']=function(_0x136a94,_0x5d7095){return db[_0xb967('0x2c')][_0xb967('0x46')](_0x136a94[_0xb967('0x47')],{})[_0xb967('0x26')](respondWithResult(_0x5d7095,0xc9))[_0xb967('0x40')](handleError(_0x5d7095,null));};exports[_0xb967('0x25')]=function(_0x1cf40f,_0x22f7ed){if(_0x1cf40f[_0xb967('0x47')]['id']){delete _0x1cf40f[_0xb967('0x47')]['id'];}return db['VoiceRecording'][_0xb967('0x48')]({'where':{'id':_0x1cf40f['params']['id']}})['then'](handleEntityNotFound(_0x22f7ed,null))[_0xb967('0x26')](saveUpdates(_0x1cf40f[_0xb967('0x47')],null))['then'](respondWithResult(_0x22f7ed,null))[_0xb967('0x40')](handleError(_0x22f7ed,null));};exports[_0xb967('0x49')]=function(_0x399ddb,_0x57d603){return db[_0xb967('0x2c')][_0xb967('0x49')]()['then'](respondWithResult(_0x57d603,null))[_0xb967('0x40')](handleError(_0x57d603,null));};exports[_0xb967('0x4a')]=function(_0x38f27d,_0x208a1e,_0x1170c9){var _0x52b2a6=require(_0xb967('0x4b'));var _0x2a2d4a=![];var _0x11551f={};if(_0x38f27d['query'][_0xb967('0x2e')]&&_0x38f27d[_0xb967('0x31')][_0xb967('0x2e')]===_0xb967('0x4c')){_0x11551f[_0xb967('0x4c')]=_0x38f27d[_0xb967('0x42')]['id'];}else{_0x11551f['id']=_0x38f27d[_0xb967('0x42')]['id'];}return db['VoiceRecording']['find']({'where':_0x11551f,'attributes':['id',_0xb967('0x4d')],'raw':!![]})[_0xb967('0x26')](handleEntityNotFound(_0x208a1e,null))[_0xb967('0x26')](function(_0x16b39a){if(_0x16b39a){var _0x575223=_0x16b39a[_0xb967('0x4d')];var _0x4694cd=util['format'](_0xb967('0x4e'),_0x575223);if(fs[_0xb967('0x4f')](_0x4694cd)){_0x2a2d4a=!![];return _0x52b2a6[_0xb967('0x50')](_0x4694cd,_0x575223,config[_0xb967('0x51')][_0xb967('0x52')])[_0xb967('0x26')](function(){return _0x16b39a;});}return _0x16b39a;}})[_0xb967('0x26')](function(_0x40ad68){if(_0x40ad68){var _0x11e5f5=_0x40ad68[_0xb967('0x4d')];if(!fs['existsSync'](_0x11e5f5)){throw new db[(_0xb967('0x53'))]['ValidationError'](_0xb967('0x54'));}if(_0x40ad68['filename']){return _0x208a1e['download'](_0x11e5f5,_0x40ad68[_0xb967('0x55')]+path[_0xb967('0x56')](_0x11e5f5),function(){if(_0x2a2d4a){fs[_0xb967('0x57')](_0x11e5f5);}});}else{return _0x208a1e['download'](_0x11e5f5,function(_0x511b41){if(_0x2a2d4a){fs[_0xb967('0x57')](_0x11e5f5);}});}}})[_0xb967('0x40')](function(_0x24099d){if(_0x24099d[_0xb967('0x58')]===_0xb967('0x54')){_0x208a1e[_0xb967('0x1a')](0x194)[_0xb967('0x29')](_0xb967('0x59'));}else{return handleError(_0x208a1e,null);}});};exports[_0xb967('0x5a')]=function(_0x3f7b9,_0x51f63e,_0x318c81){var _0x5e3e2e=require(_0xb967('0x4b'));var _0x2dd4e7=![];var _0x3ebeb2={'$and':[db[_0xb967('0x5b')]['where'](db[_0xb967('0x5b')]['fn'](_0xb967('0x5c'),db['sequelize']['col']('uniqueid')),_0x3f7b9[_0xb967('0x31')][_0xb967('0x5d')])]};if(_0x3f7b9['query'][_0xb967('0x2e')]&&_0x3f7b9[_0xb967('0x31')][_0xb967('0x2e')]===_0xb967('0x4c')){_0x3ebeb2[_0xb967('0x5e')][_0xb967('0x5f')]({'uniqueid':_0x3f7b9['params']['id']});}else{_0x3ebeb2[_0xb967('0x5e')][_0xb967('0x5f')]({'id':_0x3f7b9[_0xb967('0x42')]['id']});}return db[_0xb967('0x2c')][_0xb967('0x48')]({'where':_0x3ebeb2,'attributes':['id',_0xb967('0x4d')],'raw':!![]})[_0xb967('0x26')](handleEntityNotFound(_0x51f63e,null))[_0xb967('0x26')](function(_0x3f236d){if(_0x3f236d){var _0x3398e1=util[_0xb967('0x60')](_0xb967('0x4e'),_0x3f236d[_0xb967('0x4d')]);if(fs[_0xb967('0x4f')](_0x3398e1)){_0x2dd4e7=!![];return _0x5e3e2e[_0xb967('0x50')](_0x3398e1,_0x3f236d[_0xb967('0x4d')],config[_0xb967('0x51')][_0xb967('0x52')])[_0xb967('0x26')](function(){return _0x3f236d;});}return _0x3f236d;}})[_0xb967('0x26')](function(_0x5ee055){if(_0x5ee055){if(!fs['existsSync'](_0x5ee055[_0xb967('0x4d')])){throw new db[(_0xb967('0x53'))][(_0xb967('0x61'))](_0xb967('0x54'));}if(_0x5ee055[_0xb967('0x55')]){return _0x51f63e['download'](_0x5ee055[_0xb967('0x4d')],_0x5ee055[_0xb967('0x55')]+path[_0xb967('0x56')](_0x5ee055[_0xb967('0x4d')]),function(){if(_0x2dd4e7){fs[_0xb967('0x57')](_0x5ee055[_0xb967('0x4d')]);}});}else{return _0x51f63e[_0xb967('0x4a')](_0x5ee055[_0xb967('0x4d')],function(_0x3e5362){if(_0x2dd4e7){fs[_0xb967('0x57')](_0x5ee055[_0xb967('0x4d')]);}});}}})['catch'](handleError(_0x51f63e,null));};exports[_0xb967('0x62')]=function(_0x5a61c3,_0x587410){return db[_0xb967('0x2c')][_0xb967('0x48')]({'where':{'id':_0x5a61c3[_0xb967('0x42')]['id']}})[_0xb967('0x26')](function(_0x3a8a4b){if(_[_0xb967('0x63')](_0x3a8a4b)){throw new ReferenceError(_0xb967('0x64'));}return _0x3a8a4b;})[_0xb967('0x26')](function(_0x20cd9d){var _0x123360=_0x20cd9d[_0xb967('0x4d')];logger[_0xb967('0x65')]('cancellazione\x20fisica\x20documento\x20%s',_0x123360);if(!_[_0xb967('0x63')](_0x20cd9d[_0xb967('0x4d')])&&fs[_0xb967('0x4f')](_0x123360)){logger['info'](_0xb967('0x66')+_0x123360+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs[_0xb967('0x67')](_0x123360);}_0x123360=_0x123360+_0xb967('0x68');if(!_['isNil'](_0x20cd9d['value'])&&fs[_0xb967('0x4f')](_0x123360)){logger[_0xb967('0x65')]('File:\x20\x22'+_0x123360+'\x22\x20trovato\x20eseguo\x20la\x20cancellazione');fs['unlinkSync'](_0x123360);}return _0x20cd9d;})[_0xb967('0x26')](function(_0x32f895){if(!_0x32f895)throw new InternalError();return _0x32f895[_0xb967('0x62')]();})[_0xb967('0x26')](function(){_0x587410[_0xb967('0x1a')](0xcc)[_0xb967('0x1b')]();})['catch'](handleError(_0x587410,null));};function getBucketslist(_0x17dbcd,_0x5b704b,_0x11971e){return new Promise(function(_0x51ea1d,_0x1afb7c){var _0x2100f6=new AWS['S3']({'accessKeyId':_0x5b704b,'secretAccessKey':_0x17dbcd,'region':_0x11971e});_0x2100f6[_0xb967('0x69')]({},function(_0x240619,_0x310933){if(_0x240619){return _0x1afb7c(_0x240619);}else{return _0x51ea1d(_0x310933);}});});}function createBucket(_0x5118fa,_0x1bd914,_0xfcc2fc,_0x3d544f){return new Promise(function(_0x2c51a4,_0x36801f){var _0x437596=new AWS['S3']({'accessKeyId':_0x1bd914,'secretAccessKey':_0x5118fa,'region':_0xfcc2fc});_0x437596[_0xb967('0x6a')]({'Bucket':_0x3d544f},function(_0x4c89d4,_0x24344e){if(_0x4c89d4){return _0x36801f(_0x4c89d4);}else{return _0x2c51a4(_0x24344e);}});});}function uploadFile(_0x3ccee9,_0x41857f,_0x3cab2e,_0x1677b8,_0x1112b0,_0x4b1d9a){return new Promise(function(_0x2b01e0,_0x18b9b9){var _0x29061f=new AWS['S3']({'accessKeyId':_0x41857f,'secretAccessKey':_0x3ccee9,'region':_0x3cab2e});_0x29061f[_0xb967('0x6b')]({'Bucket':_0x1677b8,'Key':_0x1112b0,'Body':_0x4b1d9a},function(_0x8f405,_0x269d62){if(_0x8f405){return _0x18b9b9(_0x8f405);}else{return _0x2b01e0(_0x269d62);}});});}function startTranscribe(_0xb00276,_0xd872cb,_0x3bb3f7,_0x17a5ba,_0x237d01,_0x1c9dc7){return new Promise(function(_0x1e99e0,_0x41b99a){var _0x44b62c=new AWS[(_0xb967('0x6c'))]({'accessKeyId':_0xd872cb,'secretAccessKey':_0xb00276,'region':_0x3bb3f7});_0x44b62c['startTranscriptionJob']({'TranscriptionJobName':_0x17a5ba,'LanguageCode':_0x237d01,'Media':{'MediaFileUri':_0x1c9dc7}},function(_0x46b4fd,_0x157e11){if(_0x46b4fd){return _0x41b99a(_0x46b4fd);}else{return _0x1e99e0(_0x157e11);}});});}function transcribe(_0x481d89,_0x16431d,_0x3be720,_0x245c38,_0x337f45,_0x2271f0,_0x2e0ae5){return new Promise(function(_0x5a6a4a,_0x556b5b){var _0x2f2056={};logger['info'](util[_0xb967('0x60')](_0xb967('0x6d'),_0x481d89,_0x337f45));return uploadFile(_0x16431d,_0x3be720,_0x245c38,_0x337f45,path[_0xb967('0x6e')](_0x2271f0),fs['readFileSync'](_0x2271f0))[_0xb967('0x26')](function(_0x39d468){logger['info'](util[_0xb967('0x60')](_0xb967('0x6f'),_0x481d89,_0x337f45,_0x39d468[_0xb967('0x70')]));_0x2f2056[_0xb967('0x71')]=_0x39d468[_0xb967('0x72')];_0x2f2056[_0xb967('0x73')]=_0x39d468[_0xb967('0x70')];logger[_0xb967('0x65')](util[_0xb967('0x60')](_0xb967('0x74'),_0x481d89));return startTranscribe(_0x16431d,_0x3be720,_0x245c38,uuidv4(),_0x2e0ae5,_0x39d468[_0xb967('0x70')]);})['then'](function(_0x3190e7){logger['info'](util['format']('[RUNTRANSCRIPT][%d]\x20Transcription\x20job\x20%s\x20created',_0x481d89,_0x3190e7['TranscriptionJob'][_0xb967('0x75')]));_0x2f2056['transcribeName']=_0x3190e7[_0xb967('0x76')][_0xb967('0x75')];_0x2f2056[_0xb967('0x77')]=_0x3190e7[_0xb967('0x76')][_0xb967('0x78')];return _0x5a6a4a(_0x2f2056);})[_0xb967('0x40')](function(_0x3897a5){return _0x556b5b(_0x3897a5);});});}exports[_0xb967('0x79')]=function(_0x54e026,_0x49742a,_0x36fde5){var _0x1ca9c2;var _0x35cb5b;var _0x5384aa;var _0x42f59f=require('../../components/encryptor');return db[_0xb967('0x2c')][_0xb967('0x7a')]({'where':{'id':_0x54e026['params']['id']}})['then'](function(_0x3040d5){if(_0x3040d5){var _0x2629c7=util[_0xb967('0x60')](_0xb967('0x4e'),_0x3040d5[_0xb967('0x4d')]);if(fs[_0xb967('0x4f')](_0x2629c7)){cypher=!![];return _0x42f59f[_0xb967('0x50')](_0x2629c7,_0x3040d5['value'],config['secrets']['recording'])[_0xb967('0x26')](function(){return _0x3040d5;});}return _0x3040d5;}})[_0xb967('0x26')](function(_0x131251){if(!_0x131251){throw new db[(_0xb967('0x53'))][(_0xb967('0x61'))](_0xb967('0x7b'));}_0x35cb5b=_0x131251;return db[_0xb967('0x7c')][_0xb967('0x7a')]({'where':{'id':0x1}});})[_0xb967('0x26')](handleEntityNotFound(_0x49742a,null))[_0xb967('0x26')](function(_0x3eb9dd){if(_0x3eb9dd){_0x1ca9c2=_0x3eb9dd;if(!_0x1ca9c2['transcribe']||!_0x1ca9c2[_0xb967('0x7d')]||!_0x1ca9c2[_0xb967('0x7e')]||!_0x1ca9c2[_0xb967('0x7f')]||!_0x1ca9c2[_0xb967('0x71')]){throw new db[(_0xb967('0x53'))][(_0xb967('0x61'))]('Transcribe\x20not\x20configured');}if(_0x54e026['body'][_0xb967('0x80')]&&(!_0x1ca9c2[_0xb967('0x81')]||!_0x1ca9c2['sentimentAccountId']||!_0x1ca9c2[_0xb967('0x82')]||!_0x1ca9c2['language']||!_0x1ca9c2[_0xb967('0x71')])){throw new db[(_0xb967('0x53'))][(_0xb967('0x61'))](_0xb967('0x83'));}return db[_0xb967('0x84')][_0xb967('0x7a')]({'where':{'id':_0x1ca9c2['transcribeAccountId']}});}})[_0xb967('0x26')](function(_0x8cb66d){if(!_0x8cb66d){throw new db[(_0xb967('0x53'))][(_0xb967('0x61'))](_0xb967('0x85'));}if(!_0x8cb66d['data1']||!_0x8cb66d[_0xb967('0x86')]){throw new db[(_0xb967('0x53'))][(_0xb967('0x61'))]('Cloud\x20Provider\x20not\x20configured');}_0x5384aa=_0x8cb66d;return getBucketslist(_0x5384aa[_0xb967('0x87')],_0x5384aa[_0xb967('0x86')],_0x1ca9c2[_0xb967('0x7e')]);})[_0xb967('0x26')](function(_0x5df14a){if(_0x5df14a&&_0x5df14a['Buckets']){var _0x3a30a7=_[_0xb967('0x48')](_0x5df14a[_0xb967('0x88')],function(_0x1cb46e){return _0x1cb46e['Name']===_0x1ca9c2[_0xb967('0x71')];});if(!_0x3a30a7){logger[_0xb967('0x65')](util[_0xb967('0x60')](_0xb967('0x89'),_0x54e026[_0xb967('0x42')]['id'],_0x1ca9c2[_0xb967('0x71')]));return createBucket(_0x5384aa['data1'],_0x5384aa[_0xb967('0x86')],_0x1ca9c2[_0xb967('0x7e')],_0x1ca9c2[_0xb967('0x71')]);}logger[_0xb967('0x65')](util[_0xb967('0x60')](_0xb967('0x8a'),_0x54e026[_0xb967('0x42')]['id'],_0x1ca9c2[_0xb967('0x71')]));return;}})[_0xb967('0x26')](function(_0x58f898){if(_0x35cb5b[_0xb967('0x77')]===_0xb967('0x8b')){return transcribe(_0x54e026[_0xb967('0x42')]['id'],_0x5384aa['data1'],_0x5384aa[_0xb967('0x86')],_0x1ca9c2[_0xb967('0x7e')],_0x1ca9c2['bucket'],_0x35cb5b[_0xb967('0x4d')],_0x1ca9c2['language']);}else{logger[_0xb967('0x65')](util[_0xb967('0x60')]('[RUNTRANSCRIPT][%d]\x20Transcript\x20action\x20already\x20requested',_0x54e026[_0xb967('0x42')]['id']));return{'transcribeStatus':_0xb967('0x8c')};}})[_0xb967('0x26')](function(_0x3a780b){if(_0x3a780b){_0x3a780b[_0xb967('0x8d')]=_0x54e026[_0xb967('0x47')][_0xb967('0x80')];return _0x35cb5b['updateAttributes'](_0x3a780b);}})['then'](respondWithResult(_0x49742a,null))[_0xb967('0x40')](handleError(_0x49742a,null));};function writeFile(_0x292688,_0x28dc09){return new Promise(function(_0x65ec0c,_0x69827e){fs[_0xb967('0x8e')](_0x28dc09,_0x292688,function(_0x5b34b7,_0x40e249){if(_0x5b34b7){return _0x69827e(_0x5b34b7);}else{return _0x65ec0c(_0x40e249);}});});}exports[_0xb967('0x8f')]=function(_0x34af77,_0x524aaf,_0x3b0298){return db[_0xb967('0x2c')][_0xb967('0x7a')]({'where':{'id':_0x34af77[_0xb967('0x42')]['id']}})[_0xb967('0x26')](handleEntityNotFound(_0x524aaf))[_0xb967('0x26')](function(_0x513f87){if(_0x513f87&&_0x513f87[_0xb967('0x90')]){var _0xdee939=_0x513f87[_0xb967('0x90')];var _0xcf225e=config[_0xb967('0x91')]+_0xb967('0x92')+_0x513f87['id']+_0xb967('0x93');if(fs[_0xb967('0x4f')](_0xcf225e)){return _0xcf225e;}return writeFile(_0xdee939,_0xcf225e)[_0xb967('0x26')](function(){return _0xcf225e;});}else{throw new db['Sequelize'][(_0xb967('0x61'))]('Transcript\x20not\x20available');}})['then'](function(_0x2be47a){return _0x524aaf[_0xb967('0x4a')](_0x2be47a);})['catch'](handleError(_0x524aaf));};