परिवर्तन लॉग
क्या नया है.
यह जहाज के रूप में, प्लेटफार्म के हर सुधार.
· SecurityService
Config.json में org विवरण शामिल करें
ConfigJson () बनाने के लिए विवरण फ़ील्ड जोड़ें और org.getDescription () पास करें। लिखने सेConfigFiles () तो थीम्ड config.json org का संचालन करता है एचटीएमएल मेटा टैग में उपयोग करने के लिए फ्रंटेंड का वर्णन।.
· kamo-internal
अनुरोधकर्ता चैट कनेक्शन द्वारा रंग टिकट सूची ग्लोब
· MediaService
टिकट सूची एजेंट के लिए अनुरोधकर्ता उपस्थिति लुकअप जोड़ें
· kamo-internal
इसमें शामिल हैंबाजार पॉपअप और कंपनीनाम से लीड करने के लिए कंपनी
मार्केट ऐड/एडिट पॉपअप (LeadMarketManager): - रेडियो नियंत्रण "ट्रैक कंपनी का नाम" / "व्यक्तिगत केवल" (आवश्यक) - नए बाजार पर सेट करने के लिए डिफ़ॉल्ट; संपादित करने पर पूर्व-भरने - बनाने / अद्यतन अनुरोध में शामिल होने के रूप में मान्य और भेजा गया लीड्स डेटाग्रिड (LeadManager): - कंपनी कॉलम कंपनी को दिखाता हैName लीड्स के लिए शामिल हैकंपनी बाजार - शो "नहीं निर्दिष्ट" जब शामिल हैCompany=true लेकिन नाम खाली है - बाजारों के लिए "-" दिखाता है जिसमें शामिल हैंCompany=false/null - त्वरित खोज (एजी ग्रिड क्विकफिल्टर) में स्वचालित रूप से कंपनी के मूल्यों को शामिल किया गया है लीड फॉर्म (CreateLeadClient): - सशर्त रूप से कंपनी प्रदान करता है नाम जब बाजार में शामिल हैCompany=true - फील्ड वैकल्पिक है (अधिकतम 50 chars), लीड्सएपीआई के माध्यम से पेलोड जमा करने में वायर्ड सुराग: कंपनी नाम निर्माण के माध्यम से मैप किया गया लीड और अद्यतन लीड अनुरोध
· InitializerService
सम्मिलित करें कंपनी और company name कॉलम जोड़ें
LeadCompanyColumnRunner (Order 40) idempotently adds: - lead markets.include company (BOOLEAN, nullable) - ट्रैक करता है कि क्या एक है बाजार की आवश्यकता होती है कंपनी का नाम लीड पर - lead.company name (VARCHAR(50), nullable) - स्टोर्स कंपनी का नाम जब बाजार में शामिल है तो प्रमुख स्तरकंपनी = ट्रूस
· SecurityService
एक्सपोज़ में शामिल हैंइनटेक-कॉन्फ़िग और मार्केट-कॉन्फ़िगेशन प्रतिक्रियाओं में कंपनी
दोनों ********** अब शामिल हैंCompany ध्वज इसलिए फ्रंटेंड जानता है कि क्या दिखाना है कंपनी का नाम लीड निर्माण पर क्षेत्र है।.
· kamo-shared-library
इसमें शामिल हैंलीडमार्क्ट और कंपनीनाम से लीड के लिए कंपनीनाम
- लीडमार्केट इकाई में शामिल हो जाता है कंपनी (बोलियन, nullable) - लीड इकाई को company name (स्ट्रिंग, मैक्स 50, nullable) मिलता है। - LeadMarketDTO, BuildLeadMarketRequest, UpdateLeadMarketRequest कैरी में शामिल हैंCompany - लीडडीटीओ कंपनी हैनाम और बेनकाबों में शामिल हैं MarketInfoDTO के अंदर कंपनी ********** कंपनी नाम - लीडमार्केट सर्विस तारों में शामिल हैंनिर्माण / अद्यतन करने पर कंपनी - लीडसर्विस वायर्स कंपनी ने इसे बनाने / अद्यतन करने पर नाम दिया और इसे बंधक प्रकार के रूपांतरणों में संरक्षित किया।
· kamo-internal
ऐड लीड उपशीर्षक में बिक्री प्रकार का रास्ता दिखाएं
बाजार की बिक्री प्रकार और उप-प्रकार को "Adding to" लाइन में जोड़ें फॉर्म ऐड मार्केट पॉपअप में इस्तेमाल किए गए लेबलों को प्रतिबिंबित करता है ************* जैसा जब एक उप-प्रकार होता है, तो "{Market} (Service > Residential Mortgage) को जोड़ना" जब केवल एक माता-पिता सेट हो जाता है, तो "{Market} (सेवा) में जोड़ना" सेट करें, और जब कोई बिक्री प्रकार निर्धारित नहीं होती है तो "{Market} में शामिल होना"।.
· kamo-internal
Unified PhoneSdk समर्थन रिंगसेंट्रल + sip.js (freePBX)
सॉफ्टफोन हुक ने बिना शर्त रिंगिस्टल-वेब-फोन को तत्काल करने के लिए इस्तेमाल किया, जो किसी भी FreePBX क्रेडेंशियल आकृति पर threw क्योंकि SDK को हार्ड-कोड किया गया है रिंगसेंट्रल का WSS प्रावधान प्रारूप। - न्यू फोनएसडीके इंटरफेस एक प्रदाता-एग्नोस्टिक सतह (स्टार्ट, स्टॉप) को परिभाषित करता है, **************** प्लस ************* के साथ PhoneSdkSession - रिंगसेंट्रलफोन एसडीके ने रिंगिस्टल-वेब-फोन को लपेटा, मौजूदा संरक्षण आरसी व्यवहार। - SipJsPhoneSdk sip.js (UserAgent + Registerer + Inviter/Invitation) लपेटता है। बातचीत करने वाले सहकर्मी कनेक्शन के माध्यम से दूरस्थ ऑडियो संलग्न करता है, समर्थन करता है In-dialog फिर से INVITE पकड़/unhold के लिए, और हस्तांतरण के लिए संदर्भित करता है। - buildPhoneSdk creds.provider (RING CENTRAL) से एडाप्टर को चुनता है, Free PBX. - usesoftphone अब एकीकृत SDK ड्राइव और वास्तविक SDK त्रुटि सतहों पंजीकरण में पाठसामान्य 'फोन एसडीके के बजाय त्रुटि विफल प्रारंभिक स्ट्रिंग। - adds sip.js@0.21.2 निर्भरता।.
· VOIPService
ब्राउज़र सॉफ्टफोन के लिए WSS-aware SIP क्रेडेंशियल
The /api/voip/sip/credentials endpoint अब रिटर्न credentials एक ब्राउज़र-साइड SIP स्टैक वास्तव में उपयोग कर सकते हैं: WSS परिवहन, सार्वजनिक डोमेन और एक wsServers URL। - SipController सदस्य के सदस्यVoipConfig को हल करता है, वीओआईपी को मान्य करता है। सक्षम और एक एक्सटेंशन सौंपा गया है, फिर सदस्य के विशिष्ट मार्गों पर जाता है उदाहरण (नहीं org प्राथमिक). जब सदस्य खाली क्रेडेंशियल के उत्पादन के बजाय विन्यस्त नहीं है। - SipInfo SIP-over-WebSocket के लिए wsServers हासिल; SipCredentials परिणाम लाभ प्रदाता तो फ्रंटेंड सही एसडीके एडाप्टर (RingCentral WebPhone) चुनता है FreePBX/KamoPBX के लिए SIP.js बनाम). - FreePBXProvider ने SIP डोमेन को कॉन्फ़िगर किया गया baseUrl और डिफ़ॉल्ट wsServers wss://<host>:8089/ws. प्रति इंस्टेंस ओवरराइड (SipDomain, sipWsServer, sipWsPort, sipTransport) configJson से पढ़ा जहां SIP एक अलग होस्टनाम पर समाप्त होता है या Traefik बंदरगाह 443 पर / ws पर TLS समाप्त होता है। - PhoneProviderफैक्टरी नए वैकल्पिक विन्यास जेसन क्षेत्रों और फ़ीड को पार करता है उन्हें FreePBXProvider पर एक SipTransportConfig रिकॉर्ड में शामिल किया गया। - रिंगसेंट्रलप्रोवाइडर अपने क्रेडेंशियल को प्रदाता = रिंग सेंट्रल के साथ टैग करता है।.
· KlusterServices
ब्राउज़र सॉफ्टफोन के लिए WSS WebRTC परिवहन जोड़ें
Asterisk's chan pjsip अब 0.0.0.0:8089 पर एक सादे WebSocket परिवहन को बांधता है। और Traefik पर टीएलएस समाप्त **************** (पोर्ट 443) इसलिए कामो-आंतरिक मौजूदा वाइल्डकार्ड पर ब्राउज़र सॉफ्टफोन पंजीकृत कर सकते हैं pod के अंदर certs के प्रबंधन के बिना cert। - configmap-k1m1.yaml: start.sh pjsip.transports custom.conf लिखते हैं। WS परिवहन और pjsip.endpoint custom post.conf webrtc=yes overrides के साथ मौजूदा एक्सटेंशन (8080, 2523) के लिए, डब्ल्यूएस परिवहन के लिए पिन किया गया। - service.yaml: freepbx सेवा पर बंदरगाह 8089 (sip-ws) को उजागर करें ताकि नया IngressRoute इसे लक्ष्य कर सकते हैं; फली होस्टनेटवर्क पर है इसलिए यह नक्शा होस्टनेटवर्क पर है। K1m1 होस्ट का पोर्ट 8089। - ingressroute-ws.yaml: HostRegexp + PathPrefix (Ws) प्राथमिकता 100 मार्गों पर WebSocket अपग्रेड to freepbx:8089 * बिना * kamo-middlewares श्रृंखला - उस श्रृंखला में संपीड़न शामिल है, जो एसआईपी ओवर-डब्ल्यूएस फ्रेम को भ्रष्ट करेगा।.
· SecurityService
राज्य की परवाह किए बिना सभी सदस्यों के लिए आईडी → नाम वापस आने वाले समापन बिंदु को जोड़ें / नाम दें
केवल सक्रिय TeamMembers के लिए उप-विभाग समापन बिंदु फिल्टर, लेकिन विस्तार कार्य आधार सदस्यों या निष्क्रिय सदस्यों को संदर्भित कर सकते हैं। उपयोग / नाम के लिए आईडी → नाम संकल्प जहां कवरेज गतिविधि राज्य से अधिक मामलों।.
· kamo-internal
सिंगल-लीड ऐड लीड फॉर्म ऑन / लीड्स / न्यू
Refactor Add lead from an in-page multi-tab pane into a समर्पित मार्ग पर / लीड्स / नया तो यह सीधे लिंक किया जा सकता है। वर्तमान बाज़ार पारित किया जाता है जैसा? MarketId= और पूर्व-चयनित। लीड मार्केट, विक्रेता और उत्पाद अब आवश्यक हैं; संपर्क के लिए कम से कम पहले / आखिरी / पहले की आवश्यकता होती है नाम और ईमेल या फोन में से एक। बंधक उप-प्रकार फ़ील्ड और किसी भी बाजार कस्टम-फॉर्म फ़ील्ड ध्वजांकित isDisplayOnIntake को इनलाइन प्रदान किया जाता है। पर सफलता, पुनर्निर्देशित करने के लिए /leads/view/{id}.
· SecurityService
************* समापन बिंदु
रिटर्न्स सेल्सटाइप, सबटाइप और कस्टमफॉर्म्स मार्केट द्वारा बाज़ार के लिए एड लीड फॉर्म उप-प्रकार के क्षेत्रों और सेवन कस्टम रूपों को प्रस्तुत कर सकता है पहले एक लीड बनाने के बिना।.
· kamo-internal
Intake toggle, ऑटो लॉक जब आवश्यक सक्षम है पर प्रदर्शन जोड़ें
· kamo-internal
जोड़ें isDisplayOnIntake to FormField typeScript type
· kamo-shared-library
Coerce isDisplayOnIntake=true जब हैRequired=true in CustomFormService
· kamo-shared-library
Add isDisplayOnIntake to make/update request DTOs
· kamo-shared-library
Expose isDisplayOnIntake in FormFieldDTO
· kamo-shared-library
IS DISPLAY ON INTAKE कॉलम को फॉर्मफील्ड इकाई में जोड़ें
· kamo-internal
अपने फोन सेटिंग पृष्ठ को निर्दिष्ट सदस्य नाम लिंक करें
· kamo-internal
सदस्य नाम प्रदर्शन जोड़ें और प्रति-इंस्टेंस एक्सटेंशन टैब पर बटन असाइन करें
· kamo-internal
सदस्य नाम दिखाएं और ऑर्ग-लेवल एक्सटेंशन टैब में अनसाइन एक्शन जोड़ें
· kamo-internal
असाइनमेंट प्रवर्तन के साथ प्रदाता + एक्सटेंशन चयनकर्ताओं के लिए वायर वीओआईपी कॉन्फ़िगरेशन
· kamo-internal
टाइप डीटीओ जोड़ें, एपीआई विधि को असाइन करें, और सदस्यता अपडेट करेंपर्मिशन टैब वीओआईपी प्रकार
· VOIPService
एडमिन असाइन के लिए VIPExtensionsController को DELETE असाइनमेंट एंडपॉइंट जोड़ें
· VOIPService
एक्सटेंशन असाइनमेंट के साथ सदस्य वीओआईपी विन्यास के लिए सदस्य वीओआईपी नियंत्रक जोड़ें
· kamo-shared-library
Add findByAssignedMemberId क्वेरी तरीकों to PhoneExtensionRepository
· kamo-internal
यूआरएल क्वेरी पैराम में Persist सक्रिय मेलबॉक्स
अब स्विचिंग मेलबॉक्स यूआरएल अद्यतन करता है (? मेलबॉक्सटाइप,? मेलबॉक्सआईडी,? मेलबॉक्स) इसलिए ब्राउज़र को ताज़ा करना उसी मेलबॉक्स को पुनर्स्थापित करता है। संदेश ब्राउज़र पढ़ा window.location.search in its lazy useState interminance. पहले रेंडर से पहले सक्रिय मेलबॉक्स, और यूआरएल अद्यतन को माध्यम से धक्का देता है हर मेलबॉक्स बदलते घटना पर रूटर। फ़ोल्डरसाइडबार पढ़ा जाता है GetAccessibleMailboxes के बाद एक ही यूआरएल params इसलिए ड्रॉपडाउन को हल करता है बहाल चयन को दर्शाता है।.
· kamo-marketing
Add Flowroute to integrations hub page

तुम्हारा ब्रह्मांड इंतजार कर रहा है.
मिनटों में मुफ्त शुरू करें. जब भी आप तैयार हों तो उत्पाद जोड़ें - कोई माइग्रेशन नहीं, कोई नया लॉगइन नहीं.
हमेशा के लिए मुफ्त - कोई क्रेडिट कार्ड की आवश्यकता नहीं