bbe8de6b17cd6abc3ab956570dc72cb71e257daa
[motion2.git] / server / api / UserWhatsappInteraction / UserWhatsappInteraction.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 _0xeec8=['get','UserWhatsappInteractions','UserProfileResource','destroy','end','error','stack','name','index','map','UserWhatsappInteraction','type','key','keys','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','filter','VIRTUAL','merge','options','count','includeAll','include','findAll','catch','show','params','find','create','body','user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','html-pdf','zip-dir','fast-json-patch','request-promise','mustache','util','path','ejs','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','offset','set','Content-Range','json','reject','save','update','then'];(function(_0x3d7c37,_0x36d7dd){var _0x43c181=function(_0x21ced9){while(--_0x21ced9){_0x3d7c37['push'](_0x3d7c37['shift']());}};_0x43c181(++_0x36d7dd);}(_0xeec8,0x16b));var _0x8eec=function(_0x3f64cb,_0x254bf8){_0x3f64cb=_0x3f64cb-0x0;var _0x5bc509=_0xeec8[_0x3f64cb];return _0x5bc509;};'use strict';var pdf=require(_0x8eec('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x8eec('0x1'));var jsonpatch=require(_0x8eec('0x2'));var rp=require(_0x8eec('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x8eec('0x4'));var util=require(_0x8eec('0x5'));var path=require(_0x8eec('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x8eec('0x7'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x8eec('0x8'));var deskjs=require('desk.js');var toCsv=require(_0x8eec('0x9'));var querystring=require(_0x8eec('0xa'));var Papa=require(_0x8eec('0xb'));var Redis=require(_0x8eec('0xc'));var authService=require(_0x8eec('0xd'));var qs=require(_0x8eec('0xe'));var as=require(_0x8eec('0xf'));var hardwareService=require(_0x8eec('0x10'));var logger=require(_0x8eec('0x11'))(_0x8eec('0x12'));var utils=require('../../config/utils');var config=require(_0x8eec('0x13'));var licenseUtil=require(_0x8eec('0x14'));var db=require(_0x8eec('0x15'))['db'];function respondWithStatusCode(_0xf7803e,_0x4b36d4){_0x4b36d4=_0x4b36d4||0xcc;return function(_0x37dbfe){if(_0x37dbfe){return _0xf7803e[_0x8eec('0x16')](_0x4b36d4);}return _0xf7803e[_0x8eec('0x17')](_0x4b36d4)['end']();};}function respondWithResult(_0x103d4e,_0x829c84){_0x829c84=_0x829c84||0xc8;return function(_0x2ae9cf){if(_0x2ae9cf){return _0x103d4e['status'](_0x829c84)['json'](_0x2ae9cf);}};}function respondWithFilteredResult(_0x24c98a,_0x3f94c7){return function(_0x5e6cad){if(_0x5e6cad){var _0xe82849=_0x5e6cad['count'],_0x210b70=_0x3f94c7[_0x8eec('0x18')],_0x382464=_0x3f94c7[_0x8eec('0x18')]+_0x3f94c7['limit'],_0x202659;if(_0x382464>=_0xe82849){_0x382464=_0xe82849;_0x202659=0xc8;}else{_0x202659=0xce;}_0x24c98a[_0x8eec('0x17')](_0x202659);return _0x24c98a[_0x8eec('0x19')](_0x8eec('0x1a'),_0x210b70+'-'+_0x382464+'/'+_0xe82849)[_0x8eec('0x1b')](_0x5e6cad);}return null;};}function patchUpdates(_0x5457d8){return function(_0x450ca4){try{jsonpatch['apply'](_0x450ca4,_0x5457d8,!![]);}catch(_0x581436){return BPromise[_0x8eec('0x1c')](_0x581436);}return _0x450ca4[_0x8eec('0x1d')]();};}function saveUpdates(_0x3a544c,_0x192a59){return function(_0x154f2d){if(_0x154f2d){return _0x154f2d[_0x8eec('0x1e')](_0x3a544c)[_0x8eec('0x1f')](function(_0x168135){return _0x168135;});}return null;};}function removeEntity(_0x528540,_0x5e46e5){return function(_0x2bcbb3){if(_0x2bcbb3){return _0x2bcbb3['destroy']()['then'](function(){var _0x19d13b=_0x2bcbb3[_0x8eec('0x20')]({'plain':!![]});var _0x34c44d=_0x8eec('0x21');return db[_0x8eec('0x22')][_0x8eec('0x23')]({'where':{'type':_0x34c44d,'resourceId':_0x19d13b['id']}})[_0x8eec('0x1f')](function(){return _0x2bcbb3;});})[_0x8eec('0x1f')](function(){_0x528540[_0x8eec('0x17')](0xcc)[_0x8eec('0x24')]();});}};}function handleEntityNotFound(_0x15e355,_0x52f57d){return function(_0x268172){if(!_0x268172){_0x15e355[_0x8eec('0x16')](0x194);}return _0x268172;};}function handleError(_0x1e5b2b,_0x3047cb){_0x3047cb=_0x3047cb||0x1f4;return function(_0x104465){logger[_0x8eec('0x25')](_0x104465[_0x8eec('0x26')]);if(_0x104465[_0x8eec('0x27')]){delete _0x104465[_0x8eec('0x27')];}_0x1e5b2b[_0x8eec('0x17')](_0x3047cb)['send'](_0x104465);};}exports[_0x8eec('0x28')]=function(_0x166e26,_0x5a7e31){var _0x48e665={},_0x2b4800={},_0x5e5929={'count':0x0,'rows':[]};var _0xdf1cdf=_[_0x8eec('0x29')](db[_0x8eec('0x2a')]['rawAttributes'],function(_0x27881b){return{'name':_0x27881b['fieldName'],'type':_0x27881b[_0x8eec('0x2b')][_0x8eec('0x2c')]};});_0x2b4800['model']=_['map'](_0xdf1cdf,_0x8eec('0x27'));_0x2b4800['query']=_[_0x8eec('0x2d')](_0x166e26[_0x8eec('0x2e')]);_0x2b4800[_0x8eec('0x2f')]=_[_0x8eec('0x30')](_0x2b4800[_0x8eec('0x31')],_0x2b4800[_0x8eec('0x2e')]);_0x48e665[_0x8eec('0x32')]=_[_0x8eec('0x30')](_0x2b4800[_0x8eec('0x31')],qs['fields'](_0x166e26[_0x8eec('0x2e')][_0x8eec('0x33')]));_0x48e665[_0x8eec('0x32')]=_0x48e665[_0x8eec('0x32')][_0x8eec('0x34')]?_0x48e665[_0x8eec('0x32')]:_0x2b4800[_0x8eec('0x31')];if(!_0x166e26[_0x8eec('0x2e')][_0x8eec('0x35')](_0x8eec('0x36'))){_0x48e665[_0x8eec('0x37')]=qs[_0x8eec('0x37')](_0x166e26[_0x8eec('0x2e')][_0x8eec('0x37')]);_0x48e665[_0x8eec('0x18')]=qs[_0x8eec('0x18')](_0x166e26[_0x8eec('0x2e')][_0x8eec('0x18')]);}_0x48e665[_0x8eec('0x38')]=qs[_0x8eec('0x39')](_0x166e26[_0x8eec('0x2e')][_0x8eec('0x39')]);_0x48e665[_0x8eec('0x3a')]=qs['filters'](_['pick'](_0x166e26[_0x8eec('0x2e')],_0x2b4800[_0x8eec('0x2f')]),_0xdf1cdf);if(_0x166e26[_0x8eec('0x2e')][_0x8eec('0x3b')]){_0x48e665[_0x8eec('0x3a')]=_['merge'](_0x48e665[_0x8eec('0x3a')],{'$or':_[_0x8eec('0x29')](_0xdf1cdf,function(_0xcf50b1){if(_0xcf50b1[_0x8eec('0x2b')]!==_0x8eec('0x3c')){var _0x2bc13c={};_0x2bc13c[_0xcf50b1[_0x8eec('0x27')]]={'$like':'%'+_0x166e26[_0x8eec('0x2e')][_0x8eec('0x3b')]+'%'};return _0x2bc13c;}})});}_0x48e665=_[_0x8eec('0x3d')]({},_0x48e665,_0x166e26[_0x8eec('0x3e')]);var _0x529b18={'where':_0x48e665[_0x8eec('0x3a')]};return db[_0x8eec('0x2a')][_0x8eec('0x3f')](_0x529b18)[_0x8eec('0x1f')](function(_0x10c9a8){_0x5e5929[_0x8eec('0x3f')]=_0x10c9a8;if(_0x166e26[_0x8eec('0x2e')][_0x8eec('0x40')]){_0x48e665[_0x8eec('0x41')]=[{'all':!![]}];}return db[_0x8eec('0x2a')][_0x8eec('0x42')](_0x48e665);})[_0x8eec('0x1f')](function(_0x3719b1){_0x5e5929['rows']=_0x3719b1;return _0x5e5929;})[_0x8eec('0x1f')](respondWithFilteredResult(_0x5a7e31,_0x48e665))[_0x8eec('0x43')](handleError(_0x5a7e31,null));};exports[_0x8eec('0x44')]=function(_0x48fb73,_0x4c1c48){var _0x4a9a7a={'raw':!![],'where':{'id':_0x48fb73[_0x8eec('0x45')]['id']}},_0x31f945={};_0x31f945['model']=_[_0x8eec('0x2d')](db[_0x8eec('0x2a')]['rawAttributes']);_0x31f945[_0x8eec('0x2e')]=_[_0x8eec('0x2d')](_0x48fb73['query']);_0x31f945[_0x8eec('0x2f')]=_[_0x8eec('0x30')](_0x31f945[_0x8eec('0x31')],_0x31f945[_0x8eec('0x2e')]);_0x4a9a7a[_0x8eec('0x32')]=_[_0x8eec('0x30')](_0x31f945[_0x8eec('0x31')],qs['fields'](_0x48fb73[_0x8eec('0x2e')][_0x8eec('0x33')]));_0x4a9a7a[_0x8eec('0x32')]=_0x4a9a7a[_0x8eec('0x32')][_0x8eec('0x34')]?_0x4a9a7a[_0x8eec('0x32')]:_0x31f945[_0x8eec('0x31')];if(_0x48fb73[_0x8eec('0x2e')]['includeAll']){_0x4a9a7a[_0x8eec('0x41')]=[{'all':!![]}];}_0x4a9a7a=_[_0x8eec('0x3d')]({},_0x4a9a7a,_0x48fb73[_0x8eec('0x3e')]);return db[_0x8eec('0x2a')][_0x8eec('0x46')](_0x4a9a7a)[_0x8eec('0x1f')](handleEntityNotFound(_0x4c1c48,null))['then'](respondWithResult(_0x4c1c48,null))[_0x8eec('0x43')](handleError(_0x4c1c48,null));};exports[_0x8eec('0x47')]=function(_0x4beaa1,_0x256db9){return db['UserWhatsappInteraction'][_0x8eec('0x47')](_0x4beaa1[_0x8eec('0x48')],{})[_0x8eec('0x1f')](function(_0x58a696){var _0x2fde16=_0x4beaa1[_0x8eec('0x49')][_0x8eec('0x20')]({'plain':!![]});if(!_0x2fde16)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x2fde16[_0x8eec('0x4a')]===_0x8eec('0x49')){var _0x1245c=_0x58a696['get']({'plain':!![]});var _0x3fb981=_0x8eec('0x21');return db[_0x8eec('0x4b')][_0x8eec('0x46')]({'where':{'name':_0x3fb981,'userProfileId':_0x2fde16[_0x8eec('0x4c')]},'raw':!![]})[_0x8eec('0x1f')](function(_0x3eb87d){if(_0x3eb87d&&_0x3eb87d[_0x8eec('0x4d')]===0x0){return db[_0x8eec('0x22')]['create']({'name':_0x1245c[_0x8eec('0x27')],'resourceId':_0x1245c['id'],'type':_0x3eb87d[_0x8eec('0x27')],'sectionId':_0x3eb87d['id']},{})[_0x8eec('0x1f')](function(){return _0x58a696;});}else{return _0x58a696;}})[_0x8eec('0x43')](function(_0x180d25){logger[_0x8eec('0x25')](_0x8eec('0x4e'),_0x180d25);throw _0x180d25;});}return _0x58a696;})[_0x8eec('0x1f')](respondWithResult(_0x256db9,0xc9))[_0x8eec('0x43')](handleError(_0x256db9,null));};exports[_0x8eec('0x1e')]=function(_0x13c7ea,_0x21afb8){if(_0x13c7ea['body']['id']){delete _0x13c7ea[_0x8eec('0x48')]['id'];}return db[_0x8eec('0x2a')]['find']({'where':{'id':_0x13c7ea[_0x8eec('0x45')]['id']}})[_0x8eec('0x1f')](handleEntityNotFound(_0x21afb8,null))[_0x8eec('0x1f')](saveUpdates(_0x13c7ea[_0x8eec('0x48')],null))[_0x8eec('0x1f')](respondWithResult(_0x21afb8,null))['catch'](handleError(_0x21afb8,null));};exports[_0x8eec('0x23')]=function(_0x55edd1,_0x4b5768){return db[_0x8eec('0x2a')]['find']({'where':{'id':_0x55edd1[_0x8eec('0x45')]['id']}})[_0x8eec('0x1f')](handleEntityNotFound(_0x4b5768,null))[_0x8eec('0x1f')](removeEntity(_0x4b5768,null))[_0x8eec('0x43')](handleError(_0x4b5768,null));};