9aaab4191105b28cdcf73f4c07d67ca9e70c423c
[motion2.git] / server / api / chatInteraction / chatInteraction.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 _0x964b=['stringify','error','code','message','result','catch','UpdateChatInteraction','ChatInteraction','body','options','raw','attributes','limit','debug','AddTagsToChatInteraction','find','where','addTags','ids','omit','spread','AddTags','lodash','bluebird','randomstring','ioredis','../../config/logger','rpc','jayson/promise','client','http','redis','./chatInteraction.socket','register','request','then','info','ChatInteraction,\x20%s,\x20%s','ChatInteraction,\x20%s,\x20%s,\x20%s'];(function(_0x14bc97,_0x36f195){var _0xc4dbb7=function(_0x28c198){while(--_0x28c198){_0x14bc97['push'](_0x14bc97['shift']());}};_0xc4dbb7(++_0x36f195);}(_0x964b,0x8b));var _0xb964=function(_0xe657fd,_0x1d9425){_0xe657fd=_0xe657fd-0x0;var _0x2281c2=_0x964b[_0xe657fd];return _0x2281c2;};'use strict';var _=require(_0xb964('0x0'));var util=require('util');var moment=require('moment');var BPromise=require(_0xb964('0x1'));var rs=require(_0xb964('0x2'));var fs=require('fs');var Redis=require(_0xb964('0x3'));var db=require('../../mysqldb')['db'];var utils=require('../../config/utils');var logger=require(_0xb964('0x4'))(_0xb964('0x5'));var config=require('../../config/environment');var jayson=require(_0xb964('0x6'));var client=jayson[_0xb964('0x7')][_0xb964('0x8')]({'port':0x232a});config[_0xb964('0x9')]=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0xb964('0xa'))[_0xb964('0xb')](socket);function respondWithRpcPromise(_0x3b3953,_0x4365f3,_0x1389b1){return new BPromise(function(_0x4ecbd1,_0x156cdd){return client[_0xb964('0xc')](_0x3b3953,_0x1389b1)[_0xb964('0xd')](function(_0x59d9ff){logger[_0xb964('0xe')](_0xb964('0xf'),_0x4365f3,'request\x20sent');logger['debug'](_0xb964('0x10'),_0x4365f3,'request\x20sent',JSON[_0xb964('0x11')](_0x59d9ff));if(_0x59d9ff[_0xb964('0x12')]){if(_0x59d9ff[_0xb964('0x12')][_0xb964('0x13')]===0x1f4){logger[_0xb964('0x12')](_0xb964('0xf'),_0x4365f3,_0x59d9ff[_0xb964('0x12')][_0xb964('0x14')]);return _0x156cdd(_0x59d9ff[_0xb964('0x12')][_0xb964('0x14')]);}logger[_0xb964('0x12')](_0xb964('0xf'),_0x4365f3,_0x59d9ff['error'][_0xb964('0x14')]);return _0x4ecbd1(_0x59d9ff[_0xb964('0x12')][_0xb964('0x14')]);}else{logger['info'](_0xb964('0xf'),_0x4365f3,'request\x20sent');_0x4ecbd1(_0x59d9ff[_0xb964('0x15')][_0xb964('0x14')]);}})[_0xb964('0x16')](function(_0x37213e){logger[_0xb964('0x12')]('ChatInteraction,\x20%s,\x20%s',_0x4365f3,_0x37213e);_0x156cdd(_0x37213e);});});}exports[_0xb964('0x17')]=function(_0x221c26){var _0x176084=this;return new Promise(function(_0x5ae53f,_0x3c110d){return db[_0xb964('0x18')]['update'](_0x221c26[_0xb964('0x19')],{'raw':_0x221c26[_0xb964('0x1a')]?_0x221c26[_0xb964('0x1a')][_0xb964('0x1b')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x221c26[_0xb964('0x1a')]?_0x221c26['options']['where']||null:null,'attributes':_0x221c26[_0xb964('0x1a')]?_0x221c26[_0xb964('0x1a')][_0xb964('0x1c')]||null:null,'limit':_0x221c26[_0xb964('0x1a')]?_0x221c26[_0xb964('0x1a')][_0xb964('0x1d')]||null:null})[_0xb964('0xd')](function(_0x5b7ad2){logger[_0xb964('0xe')]('UpdateChatInteraction',_0x221c26);logger[_0xb964('0x1e')](_0xb964('0x17'),_0x221c26,JSON['stringify'](_0x5b7ad2));_0x5ae53f(_0x5b7ad2);})[_0xb964('0x16')](function(_0x37863e){logger['error'](_0xb964('0x17'),_0x37863e[_0xb964('0x14')],_0x221c26);_0x3c110d(_0x176084[_0xb964('0x12')](0x1f4,_0x37863e['message']));});});};exports[_0xb964('0x1f')]=function(_0x47b131){return new Promise(function(_0xfa879f,_0x44fa9a){return db['ChatInteraction'][_0xb964('0x20')]({'where':_0x47b131['options']?_0x47b131[_0xb964('0x1a')][_0xb964('0x21')]||null:null})['then'](function(_0x5bc1c2){if(_0x5bc1c2){return _0x5bc1c2[_0xb964('0x22')](_0x47b131[_0xb964('0x19')][_0xb964('0x23')],_[_0xb964('0x24')](_0x47b131[_0xb964('0x19')],[_0xb964('0x23'),'id'])||{});}})[_0xb964('0x25')](function(_0x207136){logger[_0xb964('0xe')]('AddTags',_0x47b131);logger[_0xb964('0x1e')](_0xb964('0x26'),_0x47b131,JSON[_0xb964('0x11')](_0x207136));_0xfa879f(_0x207136);})[_0xb964('0x16')](function(_0x5df19){logger[_0xb964('0x12')](_0xb964('0x26'),_0x5df19['message'],_0x47b131);_0x44fa9a(_this['error'](0x1f4,_0x5df19['message']));});});};