4f887158cb85b150e36a4b01bb00185ccfd5356e
[motion2.git] / server / api / chatProactiveAction / chatProactiveAction.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 _0x323b=['crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','count','set','apply','reject','save','update','then','destroy','error','stack','name','send','show','keys','rawAttributes','query','filters','model','attributes','intersection','fields','length','includeAll','include','merge','options','ChatProactiveAction','catch','create','body','find','params','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra'];(function(_0x2cfb58,_0x3d9412){var _0xd99951=function(_0x329afa){while(--_0x329afa){_0x2cfb58['push'](_0x2cfb58['shift']());}};_0xd99951(++_0x3d9412);}(_0x323b,0x1ad));var _0xb323=function(_0x223de8,_0x159864){_0x223de8=_0x223de8-0x0;var _0x5eb782=_0x323b[_0x223de8];return _0x5eb782;};'use strict';var emlformat=require(_0xb323('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xb323('0x1'));var jsonpatch=require(_0xb323('0x2'));var rp=require(_0xb323('0x3'));var moment=require('moment');var BPromise=require(_0xb323('0x4'));var Mustache=require(_0xb323('0x5'));var util=require(_0xb323('0x6'));var path=require(_0xb323('0x7'));var sox=require(_0xb323('0x8'));var csv=require(_0xb323('0x9'));var ejs=require(_0xb323('0xa'));var fs=require('fs');var fs_extra=require(_0xb323('0xb'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xb323('0xc'));var jsforce=require(_0xb323('0xd'));var deskjs=require(_0xb323('0xe'));var toCsv=require(_0xb323('0x9'));var querystring=require('querystring');var Papa=require(_0xb323('0xf'));var Redis=require(_0xb323('0x10'));var authService=require(_0xb323('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0xb323('0x12'));var hardwareService=require(_0xb323('0x13'));var logger=require(_0xb323('0x14'))(_0xb323('0x15'));var utils=require(_0xb323('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xb323('0x17'));var db=require(_0xb323('0x18'))['db'];function respondWithStatusCode(_0x4c1bf1,_0x2f03f0){_0x2f03f0=_0x2f03f0||0xcc;return function(_0x524bf7){if(_0x524bf7){return _0x4c1bf1[_0xb323('0x19')](_0x2f03f0);}return _0x4c1bf1[_0xb323('0x1a')](_0x2f03f0)[_0xb323('0x1b')]();};}function respondWithResult(_0x51117c,_0x3a4c5f){_0x3a4c5f=_0x3a4c5f||0xc8;return function(_0x18c341){if(_0x18c341){return _0x51117c[_0xb323('0x1a')](_0x3a4c5f)[_0xb323('0x1c')](_0x18c341);}};}function respondWithFilteredResult(_0x41a47d,_0x57e9a0){return function(_0xb56df2){if(_0xb56df2){var _0xb3dd4=typeof _0x57e9a0[_0xb323('0x1d')]===_0xb323('0x1e')&&typeof _0x57e9a0['limit']===_0xb323('0x1e');var _0x3bc40f=_0xb56df2['count'];var _0x16d415=_0xb3dd4?0x0:_0x57e9a0[_0xb323('0x1d')];var _0x42a063=_0xb3dd4?_0xb56df2[_0xb323('0x1f')]:_0x57e9a0[_0xb323('0x1d')]+_0x57e9a0['limit'];var _0x3efcf7;if(_0x42a063>=_0x3bc40f){_0x42a063=_0x3bc40f;_0x3efcf7=0xc8;}else{_0x3efcf7=0xce;}_0x41a47d[_0xb323('0x1a')](_0x3efcf7);return _0x41a47d[_0xb323('0x20')]('Content-Range',_0x16d415+'-'+_0x42a063+'/'+_0x3bc40f)[_0xb323('0x1c')](_0xb56df2);}return null;};}function patchUpdates(_0x5d5f32){return function(_0x2fc9a5){try{jsonpatch[_0xb323('0x21')](_0x2fc9a5,_0x5d5f32,!![]);}catch(_0x7357b5){return BPromise[_0xb323('0x22')](_0x7357b5);}return _0x2fc9a5[_0xb323('0x23')]();};}function saveUpdates(_0x4afcd0,_0x5318a2){return function(_0x16b127){if(_0x16b127){return _0x16b127[_0xb323('0x24')](_0x4afcd0)[_0xb323('0x25')](function(_0x5e1d88){return _0x5e1d88;});}return null;};}function removeEntity(_0x25ab3c,_0x14b549){return function(_0x2b5ea2){if(_0x2b5ea2){return _0x2b5ea2[_0xb323('0x26')]()[_0xb323('0x25')](function(){_0x25ab3c['status'](0xcc)[_0xb323('0x1b')]();});}};}function handleEntityNotFound(_0x5ea703,_0x361d76){return function(_0x1aa17d){if(!_0x1aa17d){_0x5ea703['sendStatus'](0x194);}return _0x1aa17d;};}function handleError(_0x486a86,_0x5b44be){_0x5b44be=_0x5b44be||0x1f4;return function(_0x444c1d){logger[_0xb323('0x27')](_0x444c1d[_0xb323('0x28')]);if(_0x444c1d[_0xb323('0x29')]){delete _0x444c1d[_0xb323('0x29')];}_0x486a86[_0xb323('0x1a')](_0x5b44be)[_0xb323('0x2a')](_0x444c1d);};}exports[_0xb323('0x2b')]=function(_0x428c5a,_0x305563){var _0x38a533={'raw':!![],'where':{'id':_0x428c5a['params']['id']}},_0x45bd66={};_0x45bd66['model']=_[_0xb323('0x2c')](db['ChatProactiveAction'][_0xb323('0x2d')]);_0x45bd66[_0xb323('0x2e')]=_['keys'](_0x428c5a[_0xb323('0x2e')]);_0x45bd66[_0xb323('0x2f')]=_['intersection'](_0x45bd66[_0xb323('0x30')],_0x45bd66['query']);_0x38a533[_0xb323('0x31')]=_[_0xb323('0x32')](_0x45bd66[_0xb323('0x30')],qs[_0xb323('0x33')](_0x428c5a[_0xb323('0x2e')][_0xb323('0x33')]));_0x38a533[_0xb323('0x31')]=_0x38a533[_0xb323('0x31')][_0xb323('0x34')]?_0x38a533['attributes']:_0x45bd66['model'];if(_0x428c5a[_0xb323('0x2e')][_0xb323('0x35')]){_0x38a533[_0xb323('0x36')]=[{'all':!![]}];}_0x38a533=_[_0xb323('0x37')]({},_0x38a533,_0x428c5a[_0xb323('0x38')]);return db[_0xb323('0x39')]['find'](_0x38a533)['then'](handleEntityNotFound(_0x305563,null))[_0xb323('0x25')](respondWithResult(_0x305563,null))[_0xb323('0x3a')](handleError(_0x305563,null));};exports[_0xb323('0x3b')]=function(_0x4668c9,_0x31e9ac){return db[_0xb323('0x39')]['create'](_0x4668c9[_0xb323('0x3c')],{})['then'](respondWithResult(_0x31e9ac,0xc9))[_0xb323('0x3a')](handleError(_0x31e9ac,null));};exports[_0xb323('0x24')]=function(_0x301c70,_0x1b8616){if(_0x301c70[_0xb323('0x3c')]['id']){delete _0x301c70[_0xb323('0x3c')]['id'];}return db[_0xb323('0x39')][_0xb323('0x3d')]({'where':{'id':_0x301c70[_0xb323('0x3e')]['id']}})['then'](handleEntityNotFound(_0x1b8616,null))[_0xb323('0x25')](saveUpdates(_0x301c70[_0xb323('0x3c')],null))[_0xb323('0x25')](respondWithResult(_0x1b8616,null))[_0xb323('0x3a')](handleError(_0x1b8616,null));};exports['destroy']=function(_0x187805,_0x5cb95e){return db[_0xb323('0x39')]['find']({'where':{'id':_0x187805['params']['id']}})[_0xb323('0x25')](handleEntityNotFound(_0x5cb95e,null))['then'](removeEntity(_0x5cb95e,null))[_0xb323('0x3a')](handleError(_0x5cb95e,null));};