577844c21ced62bfb51d3ab0772b86b6d46befbd
[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 _0x29d4=['keys','intersection','attributes','fields','includeAll','include','merge','find','body','catch','destroy','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','undefined','count','offset','set','Content-Range','apply','reject','update','then','end','stack','name','send','show','params','model','ChatProactiveAction','rawAttributes','query'];(function(_0x2641f9,_0x26715f){var _0x585741=function(_0x2d1462){while(--_0x2d1462){_0x2641f9['push'](_0x2641f9['shift']());}};_0x585741(++_0x26715f);}(_0x29d4,0x1a1));var _0x429d=function(_0x397e5f,_0x454c8f){_0x397e5f=_0x397e5f-0x0;var _0x5302b8=_0x29d4[_0x397e5f];return _0x5302b8;};'use strict';var emlformat=require(_0x429d('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x429d('0x1'));var jsonpatch=require(_0x429d('0x2'));var rp=require(_0x429d('0x3'));var moment=require(_0x429d('0x4'));var BPromise=require(_0x429d('0x5'));var Mustache=require('mustache');var util=require(_0x429d('0x6'));var path=require(_0x429d('0x7'));var sox=require(_0x429d('0x8'));var csv=require(_0x429d('0x9'));var ejs=require(_0x429d('0xa'));var fs=require('fs');var fs_extra=require(_0x429d('0xb'));var _=require(_0x429d('0xc'));var squel=require(_0x429d('0xd'));var crypto=require('crypto');var jsforce=require(_0x429d('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x429d('0x9'));var querystring=require(_0x429d('0xf'));var Papa=require(_0x429d('0x10'));var Redis=require('ioredis');var authService=require(_0x429d('0x11'));var qs=require(_0x429d('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x429d('0x13'));var logger=require(_0x429d('0x14'))(_0x429d('0x15'));var utils=require('../../config/utils');var config=require(_0x429d('0x16'));var licenseUtil=require(_0x429d('0x17'));var db=require(_0x429d('0x18'))['db'];function respondWithStatusCode(_0x1cb1cf,_0x4843af){_0x4843af=_0x4843af||0xcc;return function(_0x1c542c){if(_0x1c542c){return _0x1cb1cf[_0x429d('0x19')](_0x4843af);}return _0x1cb1cf[_0x429d('0x1a')](_0x4843af)['end']();};}function respondWithResult(_0x315d8d,_0x5dc247){_0x5dc247=_0x5dc247||0xc8;return function(_0x5c32ab){if(_0x5c32ab){return _0x315d8d[_0x429d('0x1a')](_0x5dc247)[_0x429d('0x1b')](_0x5c32ab);}};}function respondWithFilteredResult(_0x1bfbdb,_0x2ee97b){return function(_0x8c8a15){if(_0x8c8a15){var _0x2363a0=typeof _0x2ee97b['offset']===_0x429d('0x1c')&&typeof _0x2ee97b['limit']===_0x429d('0x1c');var _0x35830e=_0x8c8a15[_0x429d('0x1d')];var _0x2dc57a=_0x2363a0?0x0:_0x2ee97b['offset'];var _0x240a7d=_0x2363a0?_0x8c8a15[_0x429d('0x1d')]:_0x2ee97b[_0x429d('0x1e')]+_0x2ee97b['limit'];var _0x329d67;if(_0x240a7d>=_0x35830e){_0x240a7d=_0x35830e;_0x329d67=0xc8;}else{_0x329d67=0xce;}_0x1bfbdb[_0x429d('0x1a')](_0x329d67);return _0x1bfbdb[_0x429d('0x1f')](_0x429d('0x20'),_0x2dc57a+'-'+_0x240a7d+'/'+_0x35830e)[_0x429d('0x1b')](_0x8c8a15);}return null;};}function patchUpdates(_0x4534bd){return function(_0x5a4093){try{jsonpatch[_0x429d('0x21')](_0x5a4093,_0x4534bd,!![]);}catch(_0x165e4d){return BPromise[_0x429d('0x22')](_0x165e4d);}return _0x5a4093['save']();};}function saveUpdates(_0x1492f1,_0x13fc71){return function(_0x452572){if(_0x452572){return _0x452572[_0x429d('0x23')](_0x1492f1)[_0x429d('0x24')](function(_0x1023e6){return _0x1023e6;});}return null;};}function removeEntity(_0x4c6d89,_0x28f84e){return function(_0x3a9a75){if(_0x3a9a75){return _0x3a9a75['destroy']()[_0x429d('0x24')](function(){_0x4c6d89[_0x429d('0x1a')](0xcc)[_0x429d('0x25')]();});}};}function handleEntityNotFound(_0x11c423,_0x5d2e06){return function(_0x3b12f6){if(!_0x3b12f6){_0x11c423[_0x429d('0x19')](0x194);}return _0x3b12f6;};}function handleError(_0x387639,_0x3896ee){_0x3896ee=_0x3896ee||0x1f4;return function(_0x3e4e73){logger['error'](_0x3e4e73[_0x429d('0x26')]);if(_0x3e4e73[_0x429d('0x27')]){delete _0x3e4e73[_0x429d('0x27')];}_0x387639[_0x429d('0x1a')](_0x3896ee)[_0x429d('0x28')](_0x3e4e73);};}exports[_0x429d('0x29')]=function(_0x2351c9,_0xdc7bf9){var _0x2ceb54={'raw':!![],'where':{'id':_0x2351c9[_0x429d('0x2a')]['id']}},_0x50ef02={};_0x50ef02[_0x429d('0x2b')]=_['keys'](db[_0x429d('0x2c')][_0x429d('0x2d')]);_0x50ef02[_0x429d('0x2e')]=_[_0x429d('0x2f')](_0x2351c9[_0x429d('0x2e')]);_0x50ef02['filters']=_[_0x429d('0x30')](_0x50ef02[_0x429d('0x2b')],_0x50ef02[_0x429d('0x2e')]);_0x2ceb54[_0x429d('0x31')]=_[_0x429d('0x30')](_0x50ef02[_0x429d('0x2b')],qs['fields'](_0x2351c9['query'][_0x429d('0x32')]));_0x2ceb54[_0x429d('0x31')]=_0x2ceb54['attributes']['length']?_0x2ceb54[_0x429d('0x31')]:_0x50ef02['model'];if(_0x2351c9[_0x429d('0x2e')][_0x429d('0x33')]){_0x2ceb54[_0x429d('0x34')]=[{'all':!![]}];}_0x2ceb54=_[_0x429d('0x35')]({},_0x2ceb54,_0x2351c9['options']);return db[_0x429d('0x2c')][_0x429d('0x36')](_0x2ceb54)['then'](handleEntityNotFound(_0xdc7bf9,null))['then'](respondWithResult(_0xdc7bf9,null))['catch'](handleError(_0xdc7bf9,null));};exports['create']=function(_0x5bb435,_0x43427b){return db['ChatProactiveAction']['create'](_0x5bb435[_0x429d('0x37')],{})[_0x429d('0x24')](respondWithResult(_0x43427b,0xc9))[_0x429d('0x38')](handleError(_0x43427b,null));};exports[_0x429d('0x23')]=function(_0xea0212,_0x1a5d80){if(_0xea0212['body']['id']){delete _0xea0212[_0x429d('0x37')]['id'];}return db[_0x429d('0x2c')][_0x429d('0x36')]({'where':{'id':_0xea0212[_0x429d('0x2a')]['id']}})[_0x429d('0x24')](handleEntityNotFound(_0x1a5d80,null))[_0x429d('0x24')](saveUpdates(_0xea0212[_0x429d('0x37')],null))[_0x429d('0x24')](respondWithResult(_0x1a5d80,null))[_0x429d('0x38')](handleError(_0x1a5d80,null));};exports[_0x429d('0x39')]=function(_0x3d1c5d,_0x1e3924){return db[_0x429d('0x2c')][_0x429d('0x36')]({'where':{'id':_0x3d1c5d[_0x429d('0x2a')]['id']}})[_0x429d('0x24')](handleEntityNotFound(_0x1e3924,null))['then'](removeEntity(_0x1e3924,null))['catch'](handleError(_0x1e3924,null));};