Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / components / interaction / accept-message.js
diff --git a/server/components/interaction/accept-message.js b/server/components/interaction/accept-message.js
new file mode 100644 (file)
index 0000000..b6851bf
--- /dev/null
@@ -0,0 +1,18 @@
+// *************************************************************************
+// *                                                                       *
+// * xCALLY Motion -  The Omnichannel Contact Center                       *
+// * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
+// *                                                                       *
+// *************************************************************************
+// *                                                                       *
+// * Email: info@xcally.com                                                *
+// * Website: https://www.xcally.com                                       *
+// *                                                                       *
+// *************************************************************************
+// *                                                                       *
+// * The SOFTWARE PRODUCT is protected by copyright laws and international *
+// * copyright treaties, as well as other intellectual property laws and   *
+// * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
+// *                                                                       *
+// *************************************************************************
+var _0xe4cd=['stringify','error','code','message','result','catch','params','user','read','readAt','format','UserId','getAcceptParams','capitalize','Message','then','update','get','updateMessageById','Interaction','findOne','Interaction\x20with\x20id\x20','\x20not\x20found','updateInteractionById','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','query','SELECT','length','Contact\x20with\x20id\x20','User','agent','name','findAgentById','chat','ChatInteractionId','fax','FaxInteractionId','mail','MailInteractionId','OpenchannelInteractionId','sms','SmsInteractionId','whatsapp','WhatsappInteractionId','min','assign','interaction','formData','EventManager','acceptmessage','AcceptMessage','acceptMessage','newinteraction','opened','lodash','moment','../../mysqldb','../../errors/api','APINotFoundError','../../config/logger','client','http','request','info','%s,\x20%s,\x20%s','request\x20sent','debug','%s,\x20%s,\x20%s,\x20%s'];(function(_0x564b25,_0x4dc0b4){var _0xc3646c=function(_0x102ea5){while(--_0x102ea5){_0x564b25['push'](_0x564b25['shift']());}};_0xc3646c(++_0x4dc0b4);}(_0xe4cd,0x14b));var _0xde4c=function(_0x119d1f,_0x50b9df){_0x119d1f=_0x119d1f-0x0;var _0x40b75b=_0xe4cd[_0x119d1f];return _0x40b75b;};'use strict';var _=require(_0xde4c('0x0'));var moment=require(_0xde4c('0x1'));var jayson=require('jayson/promise');var db=require(_0xde4c('0x2'))['db'];var APINotFoundError=require(_0xde4c('0x3'))[_0xde4c('0x4')];var logger=require(_0xde4c('0x5'))('api');var rpcAmiClient=jayson[_0xde4c('0x6')][_0xde4c('0x7')]({'port':0x232a});var rpcRoutingClient=jayson[_0xde4c('0x6')]['http']({'port':0x232c});function respondWithRpcPromise(_0x1206a6,_0x8b989a,_0x414da7,_0x47b628,_0x520601){return new Promise(function(_0x185de3,_0xc89a47){return _0x520601[_0xde4c('0x8')](_0x8b989a,_0x47b628)['then'](function(_0x2353a4){logger[_0xde4c('0x9')](_0xde4c('0xa'),_0x1206a6,_0x414da7,_0xde4c('0xb'));logger[_0xde4c('0xc')](_0xde4c('0xd'),_0x1206a6,_0x414da7,'request\x20sent',JSON[_0xde4c('0xe')](_0x2353a4));if(_0x2353a4['error']){if(_0x2353a4[_0xde4c('0xf')][_0xde4c('0x10')]===0x1f4){logger[_0xde4c('0xf')](_0xde4c('0xa'),_0x1206a6,_0x414da7,_0x2353a4[_0xde4c('0xf')][_0xde4c('0x11')]);return _0xc89a47(_0x2353a4[_0xde4c('0xf')][_0xde4c('0x11')]);}logger[_0xde4c('0xf')](_0xde4c('0xa'),_0x1206a6,_0x414da7,_0x2353a4[_0xde4c('0xf')]['message']);return _0x185de3(_0x2353a4['error'][_0xde4c('0x11')]);}else{logger[_0xde4c('0x9')](_0xde4c('0xa'),_0x1206a6,_0x414da7,_0xde4c('0xb'));_0x185de3(_0x2353a4[_0xde4c('0x12')]['message']);}})[_0xde4c('0x13')](function(_0x17494a){logger[_0xde4c('0xf')]('%s,\x20%s,\x20%s',_0x1206a6,_0x414da7,_0x17494a);_0xc89a47(_0x17494a);});});}function getAcceptParams(_0x3b90e2){var _0x1066ba=_0x3b90e2[_0xde4c('0x14')]['id'];var _0x299772=_0x3b90e2['body'];delete _0x299772['id'];var _0x2a242c=_0x3b90e2[_0xde4c('0x15')]['get']({'plain':!![]});_0x299772[_0xde4c('0x16')]=!![];_0x299772[_0xde4c('0x17')]=moment()[_0xde4c('0x18')]('YYYY-MM-DD\x20HH:mm:ss');_0x299772[_0xde4c('0x19')]=_0x299772[_0xde4c('0x19')]||_0x2a242c['id'];return{'messageId':_0x1066ba,'payload':_0x299772,'user':_0x2a242c};}exports[_0xde4c('0x1a')]=getAcceptParams;function updateMessageById(_0x44ab1a,_0x12bd46,_0x1e849f){var _0x2dc2b1=_[_0xde4c('0x1b')](_0x44ab1a)+_0xde4c('0x1c');return db[_0x2dc2b1]['findOne']({'where':{'id':_0x12bd46,'UserId':null}})[_0xde4c('0x1d')](function(_0x4c294e){if(!_0x4c294e){throw new APINotFoundError('Message\x20with\x20id\x20'+_0x12bd46+'\x20not\x20found');}return _0x4c294e[_0xde4c('0x1e')](_0x1e849f);})[_0xde4c('0x1d')](function(_0x33215e){return _0x33215e[_0xde4c('0x1f')]({'plain':!![]});});}exports[_0xde4c('0x20')]=updateMessageById;function updateInteractionById(_0x367156,_0x1f32ea,_0x20cb5d){var _0x1fe97a=_['capitalize'](_0x367156)+_0xde4c('0x21');return db[_0x1fe97a][_0xde4c('0x22')]({'where':{'id':_0x1f32ea}})[_0xde4c('0x1d')](function(_0x46ebfc){if(!_0x46ebfc){throw new APINotFoundError(_0xde4c('0x23')+_0x1f32ea+_0xde4c('0x24'));}var _0x42b7c7=_0x46ebfc['read1stAt']||moment()[_0xde4c('0x18')]('YYYY-MM-DD\x20HH:mm:ss');return _0x46ebfc['update']({'UserId':_0x20cb5d,'read1stAt':_0x42b7c7});})[_0xde4c('0x1d')](function(_0x25363e){return _0x25363e[_0xde4c('0x1f')]({'plain':!![]});});}exports[_0xde4c('0x25')]=updateInteractionById;function findContactById(_0x173ef0){var _0x7bea44=_0xde4c('0x26')+_0x173ef0;return db[_0xde4c('0x27')][_0xde4c('0x28')](_0x7bea44,{'type':db[_0xde4c('0x27')]['QueryTypes'][_0xde4c('0x29')],'raw':!![]})[_0xde4c('0x1d')](function(_0x1dd30c){if(_0x1dd30c[_0xde4c('0x2a')]===0x0){throw new APINotFoundError(_0xde4c('0x2b')+_0x173ef0+_0xde4c('0x24'));}return _0x1dd30c[0x0];});}exports['findContactById']=findContactById;function findAgentById(_0xfe4729){return db[_0xde4c('0x2c')][_0xde4c('0x22')]({'where':{'id':_0xfe4729,'role':_0xde4c('0x2d')},'attributes':['id',_0xde4c('0x2e'),'fullname','email','internal'],'raw':!![]});}exports[_0xde4c('0x2f')]=findAgentById;function isNewInteraction(_0x4c3e7f,_0x239e34,_0x5c2321){var _0x3210b6=_[_0xde4c('0x1b')](_0x4c3e7f)+_0xde4c('0x1c');var _0x4647db={};switch(_0x4c3e7f){case _0xde4c('0x30'):_0x4647db[_0xde4c('0x31')]=_0x239e34;break;case _0xde4c('0x32'):_0x4647db[_0xde4c('0x33')]=_0x239e34;break;case _0xde4c('0x34'):_0x4647db[_0xde4c('0x35')]=_0x239e34;break;case'openchannel':_0x4647db[_0xde4c('0x36')]=_0x239e34;break;case _0xde4c('0x37'):_0x4647db[_0xde4c('0x38')]=_0x239e34;break;case _0xde4c('0x39'):_0x4647db[_0xde4c('0x3a')]=_0x239e34;break;}return db[_0x3210b6][_0xde4c('0x22')]({'where':_0x4647db,'attributes':[[db[_0xde4c('0x27')]['fn'](_0xde4c('0x3b'),db[_0xde4c('0x27')]['col']('id')),'id']],'raw':!![]})[_0xde4c('0x1d')](function(_0x57f6cb){return _0x5c2321===_0x57f6cb['id'];});}exports['isNewInteraction']=isNewInteraction;function sendAmiAcceptEvent(_0x21bb5c,_0x1da073){var _0x262e05=_[_0xde4c('0x1b')](_0x21bb5c)+_0xde4c('0x1c');var _0x1c9879=_0x1da073[_0xde4c('0x11')];if(_0x21bb5c==='chat'){Object[_0xde4c('0x3c')](_0x1c9879,JSON['parse'](_0x1da073[_0xde4c('0x3d')][_0xde4c('0x3e')]));}return respondWithRpcPromise(_0x262e05,_0xde4c('0x3f'),_0xde4c('0x3f'),{'event':_0xde4c('0x40'),'message':_0x1c9879},rpcAmiClient);}exports['sendAmiAcceptEvent']=sendAmiAcceptEvent;function sendRoutingAcceptEvent(_0x34936e,_0x3a7fa9){var _0x5501f1=_[_0xde4c('0x1b')](_0x34936e)+_0xde4c('0x1c');return respondWithRpcPromise(_0x5501f1,_0xde4c('0x41'),_0xde4c('0x42'),_0x3a7fa9,rpcRoutingClient);}exports['sendRoutingAcceptEvent']=sendRoutingAcceptEvent;function sendInteractionOpenedEvent(_0x19b725,_0xa6cc2d){var _0x46aa7e=_[_0xde4c('0x1b')](_0x19b725)+'Message';return respondWithRpcPromise(_0x46aa7e,'EventManager',_0xde4c('0x3f'),{'event':_0xde4c('0x43'),'message':Object[_0xde4c('0x3c')]({},_0xa6cc2d,{'event':_0xde4c('0x44')})},rpcAmiClient);}exports['sendInteractionOpenedEvent']=sendInteractionOpenedEvent;
\ No newline at end of file