Built motion from commit 85328c08.|2.5.50
[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 _0x60f6=['request\x20sent','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','ChatInteraction,\x20%s,\x20%s','message','result','catch','UpdateChatInteraction','ChatInteraction','update','options','raw','where','attributes','limit','debug','find','addTags','body','ids','omit','spread','AddTags','moment','bluebird','ioredis','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','redis','defaults','localhost','./chatInteraction.socket','request','then','info'];(function(_0x4544a7,_0x4a889b){var _0x3d2c1c=function(_0x4b129e){while(--_0x4b129e){_0x4544a7['push'](_0x4544a7['shift']());}};_0x3d2c1c(++_0x4a889b);}(_0x60f6,0x66));var _0x660f=function(_0x6efecb,_0xa11209){_0x6efecb=_0x6efecb-0x0;var _0x289d48=_0x60f6[_0x6efecb];return _0x289d48;};'use strict';var _=require('lodash');var util=require('util');var moment=require(_0x660f('0x0'));var BPromise=require(_0x660f('0x1'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x660f('0x2'));var db=require('../../mysqldb')['db'];var utils=require(_0x660f('0x3'));var logger=require(_0x660f('0x4'))(_0x660f('0x5'));var config=require(_0x660f('0x6'));var jayson=require(_0x660f('0x7'));var client=jayson['client']['http']({'port':0x232a});config[_0x660f('0x8')]=_[_0x660f('0x9')](config[_0x660f('0x8')],{'host':_0x660f('0xa'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x660f('0x8')]));require(_0x660f('0xb'))['register'](socket);function respondWithRpcPromise(_0x31228d,_0x348fe3,_0x55a4e4){return new BPromise(function(_0xdc57d0,_0xd3962f){return client[_0x660f('0xc')](_0x31228d,_0x55a4e4)[_0x660f('0xd')](function(_0x2f670f){logger[_0x660f('0xe')]('ChatInteraction,\x20%s,\x20%s',_0x348fe3,_0x660f('0xf'));logger['debug'](_0x660f('0x10'),_0x348fe3,_0x660f('0xf'),JSON[_0x660f('0x11')](_0x2f670f));if(_0x2f670f[_0x660f('0x12')]){if(_0x2f670f['error']['code']===0x1f4){logger[_0x660f('0x12')](_0x660f('0x13'),_0x348fe3,_0x2f670f[_0x660f('0x12')][_0x660f('0x14')]);return _0xd3962f(_0x2f670f[_0x660f('0x12')][_0x660f('0x14')]);}logger[_0x660f('0x12')](_0x660f('0x13'),_0x348fe3,_0x2f670f[_0x660f('0x12')][_0x660f('0x14')]);return _0xdc57d0(_0x2f670f[_0x660f('0x12')]['message']);}else{logger[_0x660f('0xe')]('ChatInteraction,\x20%s,\x20%s',_0x348fe3,'request\x20sent');_0xdc57d0(_0x2f670f[_0x660f('0x15')]['message']);}})[_0x660f('0x16')](function(_0x2346d7){logger[_0x660f('0x12')](_0x660f('0x13'),_0x348fe3,_0x2346d7);_0xd3962f(_0x2346d7);});});}exports[_0x660f('0x17')]=function(_0x36c988){var _0x1dbc56=this;return new Promise(function(_0xbcba,_0x3161b5){return db[_0x660f('0x18')][_0x660f('0x19')](_0x36c988['body'],{'raw':_0x36c988[_0x660f('0x1a')]?_0x36c988[_0x660f('0x1a')][_0x660f('0x1b')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x36c988['options']?_0x36c988['options'][_0x660f('0x1c')]||null:null,'attributes':_0x36c988[_0x660f('0x1a')]?_0x36c988['options'][_0x660f('0x1d')]||null:null,'limit':_0x36c988['options']?_0x36c988[_0x660f('0x1a')][_0x660f('0x1e')]||null:null})[_0x660f('0xd')](function(_0x293ba1){logger[_0x660f('0xe')](_0x660f('0x17'),_0x36c988);logger[_0x660f('0x1f')](_0x660f('0x17'),_0x36c988,JSON[_0x660f('0x11')](_0x293ba1));_0xbcba(_0x293ba1);})[_0x660f('0x16')](function(_0x1f7e1a){logger['error'](_0x660f('0x17'),_0x1f7e1a[_0x660f('0x14')],_0x36c988);_0x3161b5(_0x1dbc56['error'](0x1f4,_0x1f7e1a[_0x660f('0x14')]));});});};exports['AddTagsToChatInteraction']=function(_0x22d977){return new Promise(function(_0x22990a,_0x4e01c1){return db[_0x660f('0x18')][_0x660f('0x20')]({'where':_0x22d977['options']?_0x22d977[_0x660f('0x1a')][_0x660f('0x1c')]||null:null})[_0x660f('0xd')](function(_0x1a9570){if(_0x1a9570){return _0x1a9570[_0x660f('0x21')](_0x22d977[_0x660f('0x22')][_0x660f('0x23')],_[_0x660f('0x24')](_0x22d977['body'],[_0x660f('0x23'),'id'])||{});}})[_0x660f('0x25')](function(_0xa9f113){logger['info'](_0x660f('0x26'),_0x22d977);logger[_0x660f('0x1f')](_0x660f('0x26'),_0x22d977,JSON[_0x660f('0x11')](_0xa9f113));_0x22990a(_0xa9f113);})['catch'](function(_0x1576c1){logger[_0x660f('0x12')]('AddTags',_0x1576c1[_0x660f('0x14')],_0x22d977);_0x4e01c1(_this[_0x660f('0x12')](0x1f4,_0x1576c1[_0x660f('0x14')]));});});};