Członkowie najwyższego poziomu org otrzymują plan właściciela platformy, omijanie bram rozliczeniowych
Członkowie orgów KamoCRM (najlepsi) orgien nie podlegają systemowi rozliczeniowemu – Otrzymaj matrycę funkcji planu OWNER_UNLIMITED (z Free as a) Defensywny upa...
Górny poziom org bypass + Free bazowy upadek dla lubgs bez subs
Kontrola uprawnień na poziomie org-a-gryki Przechadza się z subskrypcjami skierowanymi do orgi. Z nowym modelem target_org, orgs, który Nie masz jeszcze targeto...
Usuń zbędny tytuł historii pola z panelu historii
Tabeta już przekazuje kontekst – tytuł i podtytuł marnowały przestrzeń ekranu. Przycisk przeładowania przesunął się w linii do paska narzędzi.
Point createCustomer do /customers punktu końcowego zamiast ścieżki bazowej
Usuwanie odniesień odnośnych z okna dialogowego edycji AccountViewClient
Usuń rekwizyt układu powodując odbijanie ciała e-mail
Rekwizyt zewnętrzny motion.div walczył z wewnętrznym AnimatePresence Wysokość: "auto" animacja, tworzenie pętli sprzężenia zwrotnego FLIP na e-mailach Niestabil...
Rozwiązuj zduplikowane mapowanie kolumn przez nadpisujące kolumny wbudowanych do MAILING_
Aktualizacja RetailService i adaptery dostawców do usuwania kont i konwersji CurrencyType
Pominąć prefiks "Mój" w tytule konta podczas przeglądania innego członka
Zawsze pokaż przycisk Utwórz dokument na stronie menedżera doc
Usunięto getMemberId () > 0 osłony, która ukrywała przycisk podczas okno ładowania useUserInfo. Strona jest już za auth, więc nie Sprawdzanie członkostwa w poko...
Przywracanie importu organizacji usuniętego przez przypadek
Organizacja.id jest nadal potrzebny w ukrycieCreateDocument Ciało; tylko idocsUstany rozdają się powinien zostać usunięty.
Pokaż przycisk Utwórz dokument dla wszystkich zalogowanych użytkowników
Kontrola flagi org (isDocsEditor - isDocs - hasFeature DOCS) Zwrot był fałszywy, ponieważ funkcje org używają przestarzałych typów kluczy. Przycisk jest teraz w...
Usuń filtry poziomu pola w branży danych i wiersz filtra float
Wyjątknięte wszystkie filtry kolumnowe i wiersz wejściowy filtra pływającego, tak jak Siatka pokazuje tylko nagłówki kolumn i wiersze danych. Usunięto również f...
Przenieś przycisk Prześlij przycisk do paska narzędziowego DocManager
Wyzwalacz Upload był tylko w rekwizycie akcji strony /doc/manager, Uniedzira, gdy DocManager jest osadzony na innych stronach. Przesunięty Przycisk Prześlij bez...
Zezwalaj na przewijanie opcji przesyłania w osadzonej DocManager
Przelać pojemnik z kartą przelewał się: ukryty, przycinanie opcji pliku (opis, folder, typ doktowisza, poziom dostępu) w ograniczonym wysokości Wbudowane kontek...
Napraw błąd 400 i dodaj łączność podtabową z paramami URL
Napraw podwójny--? błąd w MediaStream, gdzie feedEndpoint już zawierał zapytanie Params, ale zamieścił ?page?... zamiast &page..., powodując Zniekształcony adre...
Uczyń "All Leads" prawdziwym elementem menu z ikonami w filtrze agenta
- Wymień element o pozycji o pozycji o pozycji o pozycji _ALL__, więc rozwijaj się Nigdy nie pokazuje pustki, gdy All Leads jest wybierany - Dodaj ikonę grupy...
Spożywać tajny, tak X-Internal-Auth mecze usług downstream
DaemonService -> Konwersja Service . Zwrot 401 Nieupoważnione, ponieważ DaemonService stemplował ją X-Internal-Auth nagłówek z INTERNAL_AUTH_SECRET podczas konw...
Użyj "CreationTimestamp(źródło-DB) na "?
DB jest pojedynczym źródłem prawdy dla znaczników czasu w tej bazie kodu. A w tym, że w tym, pocy w tym, w tym, w tym, z w tym, że posą o. w posą o. w tym w, w ...
Pozwól DB wypełnić - przez Generated (INSERT)
INSERT zawiodły: Wartość null w kolumnie "date_created" narusza ograniczenie nienulegające KolumnDefault tylko deklaruje domyślność DB dla nowych wierszy; Hi...
Rzuć [ze-internal-custom] _X. catch-all, który zepsuł połączenia softphone
Połów-wszystkie exten > _X.,1 w [od-internal-custom] przechwytywał każdy Pokrętło wewnętrzne — softfony zaczęły zgłaszać "telefon nie jest zarejestrowany" / Roz...
Włącz JPA repos dla commerce + e-mail + pakiety dao.repositories
ConversionSunkuj nowy pod CrashLoopBackOff z tym samym błędem DaemonService Przeciśnięcie wcześniej: Parametr 0 konstruktora w wymaganym I fasoli typu - któ...
Carve /api/voip/recordings/' z przedmącnika VOIP
Połówek /api/o- w APIGatewayController śledził Dedykowany VoipRecordingUploadStroller POST /api/voip/recordings/upload mapowanie, gdy Spring rozwiązała mapowani...
Napisuj zarządzane pliki konfigowe 0644, aby teraszowy demon mógł je odczytać
Kapsuła kamo-asterisk działa jako korzeń i pisze do hosta - Asterisk wewnątrz FreePBX str działa jako "asterisk" użytkownika i nie mógł odczytać 0640 root: root...
Użyj składni kompatybilnej z envsubst ? $-VAR w szablonie konfig + ponowne upomnienie na nieświeżych zastępach
Pods to CrashLoopBackOff z "błędami konfigowymi: Brakuje API_KEY lub zbyt krótki" Ponieważ szablon konfiskaty użyto dosłownych znaczników __API_KEY__, które env...
Spaku nieużywanego importu zegarka
uploader.go korzysta tylko z CallBatch (deklarowane w grouper.go w tym samym pakiecie), Nie wszystko bezpośrednio od wewnętrznego / obserwatora. I Go odrzuca ni...
Włącz JPA repos dla commerce + e-mail + pakiety dao.repositories
DaemonService rozbił się na starcie z: Parametr 0 konstruktora w wymaganym I fasolę typu - której nie można znaleźć. Niedawno dodana usługa kamo-shared-lib...
Capture newExtNumber jako finał dla schwytania lambda w MemberVoipConfigController
NowyExtNumber jest warunkowo przeniesiony do środka if (isVoipEnabled & & ...) Blok, co sprawia, że nie jest skutecznie ostateczny. Blok TeamMember Sync czyta J...
Aktualizacja OrgThemeProvisionTest dla kompilacji parametru opisuConfigJson
Cast voiceActivityDetection to ominięcie brakującego typu TS DOM
VoiceActivityDetection jest ważną własnością WebRTC MediaTrackConstraints, ale Jest nieobecny w DOM lib TypeScript, powodując błąd typu w czasie budowy.
Skonfiguruj STUN, aby przeglądarka ICE mogła zakończyć dwukierunkowo
Połączenia dwustronnej przeglądarki do przeglądarki w przeglądarce połączone w warstwie SIP, ale nie miały Dźwięki albo kierunek. Poczta głosowa (jednokierunkow...
Dźwięk na żywo, który przetrwa przerwy obciążenie, wyśrodkowany spinner, wychodzący pierścień
Trzy skoordynowane poprawki dla ścieżki audio w nazwie: 1. AbortError na remoteAudio.play() (widoczny w konsoli produkcyjnej jako "Życie play() zostało prze...
Hangup rozrywa wszystkie sesje na żywo, a nie tylko podstawowe
Obudowa samocalna pozostawiła sesję wycieknącą: wybierając własne rozszerzenie Tworzy sesję wychodzącą, a następnie Asterisk zapętla oddzwonienie jako sekundę S...
Natychmiastowe połączenie sprzężenia zwrotnego na wychodzącym pokrętło
Ten sam problem, jaki miał przycisk odpowiedzi przychodzące: kliknięcie Call wystartował z SIP INVITE w obie strony (1-3 sekundy), ale przycisk zachował swoje b...
Połączenie animacji + audio, które faktycznie odtwarza + odblokowanie dzwonka
Trzy skoordynowane poprawki dla ścieżki dyżurów wewnętrznych: 1. Wizualne opinie podczas przyjmowania. Clicking Answer pozostawił oba przyciski Responsywne,...
Montaż SoftphoneProvider powyżej ToolDock, dzięki czemu okna narzędziowe mogą go odczytać
Otwarcie wyskakującego okienka Softphone rozbiło stronę z "Ta strona nie mogła się załadować" Ponieważ okna narzędziowe mocują się wewnątrz ToolDock, który mies...
Użyj rekwizytu wielkości siatki, aby panele AV wypełniały rząd
MUI v7's Grid jest oparty na flexbox, więc gridColumn sx używałem Był no-op - przedmioty renderowane na naturalnej szerokości i pozostawione puste Przestrzeń po...
Migracja nieświeżych identyfikatorów dzwonka do niewykonania obciążenia
Jeśli zapisane preferencje AV użytkownika odnoszą się do dzwonka, który już nie Istnieje w katalogu (np. „klasyczny” z czasów, gdy katalog był przycięte), zakła...
Cyfry Dialpad rejestrują się teraz na urządzeniach dotykowych
Przyciski wybierania o nazwie e.preventDefault() zarówno w onTouchStart, jak i Na TouchEnd. To powstrzymuje przeglądarkę przed wystrzeleniem syntetycznego zdarz...
Przechowywaj przeglądarkę SIP WSS na stronie internal.kamocrm.com (prawdziwa certyfikacja)
Przeglądarki odmówiły połączenia WebSocket z . Z bliskim kodem 1006, ponieważ Traefik serwował swój samopodpisany domyślny certyfikat Dla tej nazwy hosta (nie p...
Osobna obecność na całym świecie dla marketingu live chat vs członków
Widget widżet publiczny utrzymuje org zastępczy jako requestorId; Obecność sesji medialnych dla tych rzędów. Wewnętrzne i inne bilety używają członka Obecność (...
Okresowy bidet o obecności STOMP dla wsparcia publicznego
Odśwież Redis TTL do obecności sesji publicznej, aby agenci zobaczyli dokładny stan online.
Globe wykorzystuje obecność sesji medialnych dla odwiedzających marketing
Poproś o publiczne sesje czatuj GUID w obecności migawki; potraktuj online, jeśli Członek sesji lub wniosku o udzielenie pomocy jest połączony. Uchwyt migawki k...
Śledź czat wsparcia publicznego przez sesję GUID w Redis
Odwiedzający marketing korzystają /ws/public-chat-native bez memberId; bilety nadal Odniesienie do członka podmiotu notariusza org jako requestor. Przyrost PRES...
Nie wycieraj zadania członka na syndykację dostawców, którzy nie mają metadanych
- bezwarunkowo przeredagowane PhoneExtension.assignedMemId z tym, co zwrócił dostawca. FreePBX (i każdy dostawca, który nie śledzi, który członek Kamo jest właś...
Pokaż nazwę dostawcy w trybie widoku + własne rozszerzenie w edycji rozwijanej
Dwa błędy na ;) 1. Widok zrzucił surowy UUID — "Instancja 32f520b0-347a-..." — ponieważ Lista instancji została załadowana tylko wewnątrz uchwytuVoipEdit()....
Serialize ExtensionDto.assignedMemId jako ciąg znaków
Przepełnia zakres bezpiecznych bezpieczników (np. 1168485658174423046 wycieczki w obie strony 1168485658174423000 po uderzeniu numeru JSON przeglądarki). Fronte...
Jak to, co widzisz żeglugę?
Wszystko to pojawia się w twoim miejscu pracy na własną rękę. Zacznij od bezpłatnego planu i przeczytaj tę stronę ponownie w miesiącu.
