d9ea6c28b13bf21575b733d90a91cafec55ba112
[motion2.git] / server / api / voiceRecording / voiceRecording.rpc.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 _0x2a07=['body','options','raw','where','attributes','limit','UpdateVoiceRecording','debug','CreateVoiceRecording','../../components/encryptor','Setting','findOne','callRecordingEncryption','create','existsSync','value','format','%s.cypher','encryptFile','secrets','recording','unlink','lodash','util','moment','bluebird','randomstring','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','request','then','VoiceRecording,\x20%s,\x20%s','request\x20sent','VoiceRecording,\x20%s,\x20%s,\x20%s','stringify','error','message','info','catch','VoiceRecording','update'];(function(_0x24061a,_0x1c9f4d){var _0x82054e=function(_0x2ec346){while(--_0x2ec346){_0x24061a['push'](_0x24061a['shift']());}};_0x82054e(++_0x1c9f4d);}(_0x2a07,0x74));var _0x72a0=function(_0x4828b1,_0x5c8cf3){_0x4828b1=_0x4828b1-0x0;var _0x1fec1b=_0x2a07[_0x4828b1];return _0x1fec1b;};'use strict';var _=require(_0x72a0('0x0'));var util=require(_0x72a0('0x1'));var moment=require(_0x72a0('0x2'));var BPromise=require(_0x72a0('0x3'));var rs=require(_0x72a0('0x4'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x72a0('0x5'))['db'];var utils=require(_0x72a0('0x6'));var logger=require(_0x72a0('0x7'))(_0x72a0('0x8'));var config=require(_0x72a0('0x9'));var jayson=require(_0x72a0('0xa'));var client=jayson[_0x72a0('0xb')][_0x72a0('0xc')]({'port':0x232a});function respondWithRpcPromise(_0x193e3b,_0x287b06,_0x21c819){return new BPromise(function(_0x2c04eb,_0x22270e){return client[_0x72a0('0xd')](_0x193e3b,_0x21c819)[_0x72a0('0xe')](function(_0x2bc45b){logger['info'](_0x72a0('0xf'),_0x287b06,_0x72a0('0x10'));logger['debug'](_0x72a0('0x11'),_0x287b06,_0x72a0('0x10'),JSON[_0x72a0('0x12')](_0x2bc45b));if(_0x2bc45b[_0x72a0('0x13')]){if(_0x2bc45b[_0x72a0('0x13')]['code']===0x1f4){logger[_0x72a0('0x13')](_0x72a0('0xf'),_0x287b06,_0x2bc45b[_0x72a0('0x13')][_0x72a0('0x14')]);return _0x22270e(_0x2bc45b[_0x72a0('0x13')][_0x72a0('0x14')]);}logger[_0x72a0('0x13')]('VoiceRecording,\x20%s,\x20%s',_0x287b06,_0x2bc45b['error'][_0x72a0('0x14')]);return _0x2c04eb(_0x2bc45b[_0x72a0('0x13')][_0x72a0('0x14')]);}else{logger[_0x72a0('0x15')](_0x72a0('0xf'),_0x287b06,_0x72a0('0x10'));_0x2c04eb(_0x2bc45b['result'][_0x72a0('0x14')]);}})[_0x72a0('0x16')](function(_0x16ac70){logger[_0x72a0('0x13')](_0x72a0('0xf'),_0x287b06,_0x16ac70);_0x22270e(_0x16ac70);});});}exports['UpdateVoiceRecording']=function(_0x100d8f){var _0x42e9ec=this;return new Promise(function(_0x131b73,_0x5b63c8){return db[_0x72a0('0x17')][_0x72a0('0x18')](_0x100d8f[_0x72a0('0x19')],{'raw':_0x100d8f[_0x72a0('0x1a')]?_0x100d8f['options'][_0x72a0('0x1b')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x100d8f['options']?_0x100d8f[_0x72a0('0x1a')][_0x72a0('0x1c')]||null:null,'attributes':_0x100d8f[_0x72a0('0x1a')]?_0x100d8f['options'][_0x72a0('0x1d')]||null:null,'limit':_0x100d8f[_0x72a0('0x1a')]?_0x100d8f[_0x72a0('0x1a')][_0x72a0('0x1e')]||null:null})['then'](function(_0x38a7ba){logger[_0x72a0('0x15')](_0x72a0('0x1f'),_0x100d8f);logger[_0x72a0('0x20')](_0x72a0('0x1f'),_0x100d8f,JSON[_0x72a0('0x12')](_0x38a7ba));_0x131b73(_0x38a7ba);})['catch'](function(_0x4dd1a6){logger[_0x72a0('0x13')](_0x72a0('0x1f'),_0x4dd1a6[_0x72a0('0x14')],_0x100d8f);_0x5b63c8(_0x42e9ec[_0x72a0('0x13')](0x1f4,_0x4dd1a6[_0x72a0('0x14')]));});});};exports[_0x72a0('0x21')]=function(_0xa5bda0){var _0x15922a=this;return new Promise(function(_0xee99e2,_0x12dcc9){var _0x4f9718=require(_0x72a0('0x22'));var _0x553641;return db[_0x72a0('0x23')][_0x72a0('0x24')]({'attributes':['id',_0x72a0('0x25')],'where':{'id':0x1},'raw':!![]})[_0x72a0('0xe')](function(_0x432179){_0x553641=_0x432179;return db[_0x72a0('0x17')][_0x72a0('0x26')](_0xa5bda0[_0x72a0('0x19')]);})['then'](function(_0x41efc1){if(_0x553641[_0x72a0('0x25')]&&fs[_0x72a0('0x27')](_0x41efc1[_0x72a0('0x28')])){var _0x13c04=util[_0x72a0('0x29')](_0x72a0('0x2a'),_0x41efc1['value']);return _0x4f9718[_0x72a0('0x2b')](_0x41efc1[_0x72a0('0x28')],_0x13c04,config[_0x72a0('0x2c')][_0x72a0('0x2d')])[_0x72a0('0xe')](function(){fs[_0x72a0('0x2e')](_0x41efc1[_0x72a0('0x28')]);logger[_0x72a0('0x15')]('CreateVoiceRecording\x20file\x20encrypted');return _0x41efc1;});}return _0x41efc1;})[_0x72a0('0xe')](function(_0x1fb485){logger[_0x72a0('0x15')]('CreateVoiceRecording',_0xa5bda0);logger[_0x72a0('0x20')]('CreateVoiceRecording',_0xa5bda0,JSON[_0x72a0('0x12')](_0x1fb485));_0xee99e2(_0x1fb485);})[_0x72a0('0x16')](function(_0x1d02c4){logger[_0x72a0('0x13')](_0x72a0('0x21'),_0x1d02c4[_0x72a0('0x14')],_0xa5bda0);_0x12dcc9(_0x15922a[_0x72a0('0x13')](0x1f4,_0x1d02c4[_0x72a0('0x14')]));});});};