Built motion from commit 85328c08.|2.5.50
[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 _0x7880=['encryptFile','secrets','unlink','CreateVoiceRecording\x20file\x20encrypted','CreateVoiceRecording','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','request','VoiceRecording,\x20%s,\x20%s','request\x20sent','debug','VoiceRecording,\x20%s,\x20%s,\x20%s','error','code','message','info','result','catch','UpdateVoiceRecording','update','body','options','where','attributes','then','stringify','../../components/encryptor','Setting','findOne','callRecordingEncryption','create','existsSync','value','format','%s.cypher'];(function(_0x4ff09b,_0x53f67d){var _0x3f5c2e=function(_0x124592){while(--_0x124592){_0x4ff09b['push'](_0x4ff09b['shift']());}};_0x3f5c2e(++_0x53f67d);}(_0x7880,0x1f4));var _0x0788=function(_0x11cbb5,_0x390441){_0x11cbb5=_0x11cbb5-0x0;var _0x54b8d3=_0x7880[_0x11cbb5];return _0x54b8d3;};'use strict';var _=require('lodash');var util=require(_0x0788('0x0'));var moment=require(_0x0788('0x1'));var BPromise=require(_0x0788('0x2'));var rs=require(_0x0788('0x3'));var fs=require('fs');var Redis=require(_0x0788('0x4'));var db=require(_0x0788('0x5'))['db'];var utils=require('../../config/utils');var logger=require(_0x0788('0x6'))(_0x0788('0x7'));var config=require(_0x0788('0x8'));var jayson=require(_0x0788('0x9'));var client=jayson[_0x0788('0xa')][_0x0788('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x3f9cb8,_0x44bbb5,_0x3c29f3){return new BPromise(function(_0x422f8b,_0x55e48a){return client[_0x0788('0xc')](_0x3f9cb8,_0x3c29f3)['then'](function(_0xabaf81){logger['info'](_0x0788('0xd'),_0x44bbb5,_0x0788('0xe'));logger[_0x0788('0xf')](_0x0788('0x10'),_0x44bbb5,_0x0788('0xe'),JSON['stringify'](_0xabaf81));if(_0xabaf81[_0x0788('0x11')]){if(_0xabaf81[_0x0788('0x11')][_0x0788('0x12')]===0x1f4){logger[_0x0788('0x11')](_0x0788('0xd'),_0x44bbb5,_0xabaf81[_0x0788('0x11')][_0x0788('0x13')]);return _0x55e48a(_0xabaf81['error'][_0x0788('0x13')]);}logger[_0x0788('0x11')](_0x0788('0xd'),_0x44bbb5,_0xabaf81[_0x0788('0x11')]['message']);return _0x422f8b(_0xabaf81[_0x0788('0x11')]['message']);}else{logger[_0x0788('0x14')](_0x0788('0xd'),_0x44bbb5,_0x0788('0xe'));_0x422f8b(_0xabaf81[_0x0788('0x15')][_0x0788('0x13')]);}})[_0x0788('0x16')](function(_0x5e1a29){logger['error'](_0x0788('0xd'),_0x44bbb5,_0x5e1a29);_0x55e48a(_0x5e1a29);});});}exports[_0x0788('0x17')]=function(_0x5b2bdc){var _0x654e4b=this;return new Promise(function(_0x415f19,_0x17ae59){return db['VoiceRecording'][_0x0788('0x18')](_0x5b2bdc[_0x0788('0x19')],{'raw':_0x5b2bdc['options']?_0x5b2bdc[_0x0788('0x1a')]['raw']===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x5b2bdc[_0x0788('0x1a')]?_0x5b2bdc['options'][_0x0788('0x1b')]||null:null,'attributes':_0x5b2bdc[_0x0788('0x1a')]?_0x5b2bdc[_0x0788('0x1a')][_0x0788('0x1c')]||null:null,'limit':_0x5b2bdc[_0x0788('0x1a')]?_0x5b2bdc['options']['limit']||null:null})[_0x0788('0x1d')](function(_0x2a1460){logger[_0x0788('0x14')](_0x0788('0x17'),_0x5b2bdc);logger['debug']('UpdateVoiceRecording',_0x5b2bdc,JSON[_0x0788('0x1e')](_0x2a1460));_0x415f19(_0x2a1460);})[_0x0788('0x16')](function(_0x40309d){logger['error']('UpdateVoiceRecording',_0x40309d[_0x0788('0x13')],_0x5b2bdc);_0x17ae59(_0x654e4b[_0x0788('0x11')](0x1f4,_0x40309d['message']));});});};exports['CreateVoiceRecording']=function(_0x5a54a5){var _0x44798c=this;return new Promise(function(_0x57fda1,_0x286730){var _0x40e7a6=require(_0x0788('0x1f'));var _0x18fc0e;return db[_0x0788('0x20')][_0x0788('0x21')]({'attributes':['id',_0x0788('0x22')],'where':{'id':0x1},'raw':!![]})[_0x0788('0x1d')](function(_0x5b7594){_0x18fc0e=_0x5b7594;return db['VoiceRecording'][_0x0788('0x23')](_0x5a54a5[_0x0788('0x19')]);})['then'](function(_0x4aa48b){if(_0x18fc0e[_0x0788('0x22')]&&fs[_0x0788('0x24')](_0x4aa48b[_0x0788('0x25')])){var _0x436031=util[_0x0788('0x26')](_0x0788('0x27'),_0x4aa48b[_0x0788('0x25')]);return _0x40e7a6[_0x0788('0x28')](_0x4aa48b[_0x0788('0x25')],_0x436031,config[_0x0788('0x29')]['recording'])[_0x0788('0x1d')](function(){fs[_0x0788('0x2a')](_0x4aa48b[_0x0788('0x25')]);logger[_0x0788('0x14')](_0x0788('0x2b'));return _0x4aa48b;});}return _0x4aa48b;})[_0x0788('0x1d')](function(_0x26f584){logger[_0x0788('0x14')](_0x0788('0x2c'),_0x5a54a5);logger[_0x0788('0xf')]('CreateVoiceRecording',_0x5a54a5,JSON['stringify'](_0x26f584));_0x57fda1(_0x26f584);})['catch'](function(_0x5633da){logger['error']('CreateVoiceRecording',_0x5633da[_0x0788('0x13')],_0x5a54a5);_0x286730(_0x44798c[_0x0788('0x11')](0x1f4,_0x5633da[_0x0788('0x13')]));});});};