0ec90e298e377ba2b11c17bea71f01987795e731
[motion2.git] / server / services / routing / server / applications / tag.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 _0xce20=['lodash','../../rpc/chatInteraction','../../rpc/openchannelInteraction','../../rpc/mailInteraction','../../rpc/faxInteraction','../../rpc/whatsappInteraction','../../../../config/logger','routing','number','TagId\x20is\x20a\x20string\x20and\x20it\x20is\x20required','consequence','length','error','[%s][TAG]\x20%s','map','message','join','info','[%s][TAG]\x20no\x20tags\x20saved,\x20force\x20next','next','channel','Interaction','interaction','then','[%s][TAG]\x20tag\x20\x22%s\x22\x20added\x20to\x20%s\x20interaction\x20%s','catch','stringify','finally','isObject','validate'];(function(_0x429adb,_0x285e05){var _0x175d9e=function(_0x5ec83c){while(--_0x5ec83c){_0x429adb['push'](_0x429adb['shift']());}};_0x175d9e(++_0x285e05);}(_0xce20,0x10d));var _0x0ce2=function(_0x4f9ff5,_0x2cad87){_0x4f9ff5=_0x4f9ff5-0x0;var _0x13988b=_0xce20[_0x4f9ff5];return _0x13988b;};'use strict';var schema=require(_0x0ce2('0x0'));var _=require(_0x0ce2('0x1'));var rpc={'chatInteraction':require(_0x0ce2('0x2')),'openchannelInteraction':require(_0x0ce2('0x3')),'smsInteraction':require('../../rpc/smsInteraction'),'mailInteraction':require(_0x0ce2('0x4')),'faxInteraction':require(_0x0ce2('0x5')),'whatsappInteraction':require(_0x0ce2('0x6'))};var logger=require(_0x0ce2('0x7'))(_0x0ce2('0x8'));var tag=schema({'tag':{'type':_0x0ce2('0x9'),'required':!![],'message':_0x0ce2('0xa')}});exports[_0x0ce2('0xb')]=function(_0xd81d11,_0x59cac4,_0x58fc79,_0x1b276b){return function(_0x481f4a){try{var _0x1f9d39={'tag':_0x59cac4[0x0]};var _0x1207bb=tag['validate'](_0x1f9d39,{'typecast':!![]});if(_0x1207bb[_0x0ce2('0xc')]){logger[_0x0ce2('0xd')](_0x0ce2('0xe'),_0xd81d11,_[_0x0ce2('0xf')](_0x1207bb,_0x0ce2('0x10'))[_0x0ce2('0x11')](',\x20'));logger[_0x0ce2('0x12')](_0x0ce2('0x13'),_0xd81d11);_0x481f4a[_0x0ce2('0x14')]();}else{var _0x3d842c={'ids':[_0x59cac4[0x0]]};if(rpc[_0x1b276b[_0x0ce2('0x15')]+_0x0ce2('0x16')]){rpc[_0x1b276b[_0x0ce2('0x15')]+_0x0ce2('0x16')]['addTags'](_0x1b276b[_0x0ce2('0x17')]['id'],_0x3d842c)[_0x0ce2('0x18')](function(_0x331dd8){logger[_0x0ce2('0x12')](_0x0ce2('0x19'),_0xd81d11,_0x59cac4[0x1],_0x1b276b[_0x0ce2('0x15')],_0x1b276b[_0x0ce2('0x17')]['id']);})[_0x0ce2('0x1a')](function(_0x389ff4){logger['error'](_0x0ce2('0xe'),_0xd81d11,JSON[_0x0ce2('0x1b')](_0x389ff4));logger['info']('[%s][TAG]\x20no\x20tags\x20saved,\x20force\x20next',_0xd81d11);})[_0x0ce2('0x1c')](function(){_0x481f4a['next']();});}}}catch(_0x476998){logger[_0x0ce2('0xd')]('[%s][TAG]\x20%s',_0xd81d11,_[_0x0ce2('0x1d')](_0x476998)?JSON[_0x0ce2('0x1b')](_0x476998):_0x476998);logger['info'](_0x0ce2('0x13'),_0xd81d11);_0x481f4a[_0x0ce2('0x14')]();}};};