Перейти до вмісту
KAMOUniverse

Журнал змін

Что нового.

Все усовершенствования платформы, как только она будет запущена.

  1. · VOIPService

    Багатоінтенсивний провайдер рефактор + повний FreePBX + Flowroute SMS

    Зміна моделі ядра: один org → багато VoipProviderInstances (повідомлення: один за org). Кожен API провайдер тепер є екземпляром. Інтерфейс телефона: - Нові методи розширення/користувача/device CRUD + аудіо/транскрипція голосової пошти. - Нові прапори можливостей (підтримка, управління користувачем, управління пристроями, управління пристроями, JavaScript licenses API Веб-сайт Go1.13.8 ********************************************************************************************************************************************************************************************************************************************************************** (HTTP 501) так само не розбиваються. Frontend перевірить ймовірність () приховати / відключити дії на провайдер. - провайдерException (HTTP 502) для зовнішніх збоїв. ТелефонПровідувачФактори: ********************************************************************************************************************************************************************************************************************************************************************** заміна спадщини getProvider(Long orgId); getPrimaryForOrg(Long) зберігається для сайтів виклику спадщини (CallController, CapabilitiesController, SipController, webhook inbound). - КільцеЦентральні токени OAuth тепер об'єднані (orgId, провайдер, екземплярId) так один org може автентифікувати декілька незалежних розгортання RingCentral. - FreePBX будівництво читає config json → {baseUrl, клієнтId, клієнтSecret, ігноруватиSslErrors} і миттєво опрацьовує виділений FreePBXGraphQLClient. RingCentral (RingCentralProvider): - Конструктор приймає інстанції - Нові методи: listExtensions / СтворитиExtension / updateExtension / removeExtension; listUsers / Створитикористувач / UpdateUser / removeUser (RC моделі як тип=Поширення користувачів); listDevices / створюватиDevice / updateDevice / removeDevice; fetchVoicemailAudio (поточний вміст) і fetchVoicemailПерепис FreePBX (FreePBXProvider) — повна реалізація замінює держатель: - Клієнт-credentials OAuth2 токен кешування через FreePBXTokenCache (~1h TTL, авто-відновлення на 401, пер-вхід. - FreePBXGraphQLClient: GraphQL + REST транспортні засоби з додатковими Пропустити-SSL-verification для самопризначення на PBXs. - Розширення, Користувачі менеджера, пристрої Endpoint Manager, голосова пошта JavaScript licenses API Веб-сайт Go1.13.8 отримано з секрету pjsip, здоров'я через fetchAsteriskInfo. - СМС явно непідтриманий (здатність sms=false) — FreePBX не працює Перевізник SMS. Flowroute SMS (FlowrouteTextProvider): - Повідомлення v2.1 API з HTTP Basic (accessKey, секретKey). - переглядів: Здоров'я GET /numbers?limit=1. - Зареєстрований за допомогою BulkTextProviderFactory за допомогою нового значення FLOWROUTE. Контролери: - VoipInstanceController (відправлення від провайдераConfigController) — повний CRUD in /api/voip/instances with per-instance test/sync. Секрети червоної в GET Відповіді ('***'); об'єднання-оновлюється полями UI без клонування збережених облікових даних. - BulkTextInstanceController (відкладений від BulkTextConfigController) — дзеркало CRUD на /api/bulktext/instances з тестом / test-send / відправити. - OAuthController записується на екземпляр-scoped OAuth: початок, зворотний дзвінок, статус, Вимкніть всі дані - SmsController вирішує екземпляр від учасника. НаприкладІд → org первинний, прикріплює щоб закріпити розмови. - CallController / CapabilitiesController / SipController повернувся до org первинна активна екземпляр для кінцевих точок спадку. Послуги: - InstanceSyncService: швидке синхронізація кешу — розширення/users/devices/ голосові повідомлення, що копіюються від провайдера до місцевих таблиць, відсутні ряди м'яких позначених ЗНОВН. Кожна підступна загортати так, що одна непідтримана можливість не вдається весь синхронізація (наприклад, FreePBX no-SMS + має-випадки). - VoipMessageService: всі розмови / повідомлення пропагувати екземплярІд. Тести: передвиборчий VoipProviderConfig-специфічні тести, видалені (відкрито перейменувати типи; рерайтинг з точки зору дизайну §10 — TDD інфраструктура додається в цьому рефакторі. Побудує зелену з оновленим камо-шаредно-лібертовим.

  2. · InitializerService

    Багатоінтенсивна міграція телефону/SMS провайдера

    Запуски після Hibernate ddl-auto:update створюються нові столи (VOIP PROVIDER INSTANCE, BULK TEXT PROVIDER INSTANCE, PHONE EXTENSION, PHONE END USER, PHONE DEVICE, PHONE DEVICE, PHONE VOICEMAIL, SYSTEM CONFIGURATION) з перейменованих/нових суб’єктів у kamo-shared-library commit 232d731. Руки, які не можуть бути: - Скопіювати рядки з legacy voip provider config /сип text provider config в new * instance Столи, синтезування екземпляра name від типу провайдера. - Поверніть НЕ CONFIGURED (ordinal 0) ряди — відсутність тепер «не провайдер». - Поверніть зараз-empty Legacy * config таблиці. JavaScript licenses API Веб-сайт Go1.13.8 kamotokens.org oauth token, використовуючи один з найстаріших активних екземплярів org. - Rebuild org oauth token унікальний індекс від (org id, провайдер) до (org id, провайдер, екземпляр id) так багато прикладів RingCentral за роботу org. - Випадковий дитячий будинок унікальний індекси від voip conversations + таблиці екземплярів постачальників. - Посів системи конфігурація однотонного ряду (проміжок синхронізації імпульсу 10 хв за замовчуванням, Увімкнути true) — оператор платформи налаштовує це через налаштування нової платформи VOIP та SMS-повідомлення. Всі виписки idempotent; перенаправлення на вже привітному DB є безпечним. Замовити 20 — після SchemaCleanupRunner (1), ОрганізаціяTypeRemovalRunner (2), KamoCRMAgeReqUpdateRunner (10).

  3. · kamo-shared-library

    Багатоінтенсивний телефон / SMS провайдер schema base

    - Rename VoipProviderConfig → VoipProviderInstance; краплі UNIQUE(org id), add екземпляр name, config json, last sync at, last sync error. - Rename BulkTextProviderConfig → BulkTextProviderInstance; ж багатоінтенсивне лікування. - Нові суб'єкти: PhoneExtension, PhoneEndUser, PhoneDevice, PhoneVoicemail, SystemConfiguration. - Додати екземпляр id до IDVoipConfig, VoipConversation, OrgOAuthToken (багаторазове кільцеЦентральні екземпляри за org). - Нові рахунки: Статус на сервери, Статус на сервери - PhoneDeviceType, Статус на сервери ********************************************************************************************************************************************************************************************************************************************************************** (перевірити в ordinal 0 для збереження існуючих рядків під EnumType.ORDINAL). - Додати FLOWROUTE до BulkTextProviderType для нового провайдера Flowroute SMS. - Постачальник-абстракція ДТО (ExtensionDto, PhoneUserDto, DeviceDto, VoicemailEntryDto, InstanceHealthDto, Створення/оновлення запитів). Перший етап багатоінтенсивного телефону/SMS refactor — див. ************************************************************************************************************************************************************************************************************************************************ міграція KamoInitializer + рефактори служби для спостереження.

  4. · KlusterServices

    Розгортання FreePBX 17 + міст Jigasi SIP на k1m1 і k2m1

    FreePBX (tiredofit/freepbx:17-latest) працює з hostNetwork так SIP/RTP зберігає реальні IP-адреси клієнтів, закріплюється один-пер-нед через nodeSelector. СИП на 5060 UDP/TCP (5061 TLS), RTP діапазон 18000-18999 обраний для уникнення Janus (20000-20999), Котюрн (52000-65535), і WireGuard (51820-51821). Зустрічайте Jigasi додано як внутрішній міст кластеру SIP так FreePBX Відповісти на конференції Meet; Prosody тепер встановлює користувач jigasi від JIGASI XMPP PASSWORD. Адміністратор UI доступний через Traefik JavaScript licenses API Веб-сайт Go1.13.8 за допомогою автосертиту STATIC DOMAINS.

  5. · kamo-internal

    Платформа-адміністрування, пагінація, пошук, фільтри, логотипи org

    Платформа admins (top-level org owner) тепер див. кожен org в системі через систему новий /api/security/org/all-networks endpoint замість власних членств. Заголовок та оновлення субтитрів для відображення контексту адміністратора. Інші добавки: - Пігінація: клієнт-захід, за замовчуванням 25/сторінка, налаштування (10/25/50/100) - Живий пошук: фільтри за назвою, коротким заголовком або доменом в режимі реального часу - Фільтруючі чіпси: "Все", "Оргії я Власний", "DNS Not Yet Configured" - Обчислення результатів відображається поруч із вибраним користувачем сторінки - Кнопки номеру сторінок з розпадом еліпсу для великих сторінок - OrgLogo компонент консолідації логотипу (короткий логотип через GetOrgLogoUrl) для як поточного, так і для всіх карток org в списку - Кнопка ENTER правильно охороняється org.memberId (попередній запис користувача+члена) - ENTER AS SYSTEM MEMBER доступна для всіх орг, коли canEnterAsSystemMember

  6. · SecurityService

    Додати GET /api/security/org/all-networks для адміністраторів платформи

    Власники ТОП-рівневих орг тепер можуть обманювати всі організації в системі з інформація про членство відносно абонента. Orgs, де учасник має запис отримати isOwner/memberId populated; інші отримати членId: null, isOwner: false. Кінцева точка полягає в тому, що запобіжник є як у верхній частині, так і є власником.

  7. · kamo-internal

    Sub-tabs в редакторі безпеки + очищення

    - Security-model редактор на *********** тепер розбити в чотири субтабах: Загальні (Базова інформація, Видатність, Хто може створити, Налаштування платформи, Конфігурація доменів, торгові ринки), Censorship (alcohol/ тютюнові / вогнепальні + член + командно-членні вікові діапазони), Дозволені додатки, і За замовчуванням Роль безпеки. ********************************************************************************************************************************************************************************************************************************************************************** дозволяє адміністратору редагувати модель дозволитиRootSubdomains прапор і батьківські псевдоніми поряд з тим, що Параметри моделі. Попередньо це проживало всередині org-wide Subdomain Відділення спливаючі. - Піддомен Відділення спрощено лише на рівні org - GoDaddy credentials + майстер увімкнути. Пер-модель псевдоніми перенесли як діалогове вікно, так і його проп поверхня; SecurityRoleManager скидає екран тепер невикористані пропси занадто. - Видаліть всі посилання на командуMemberPayFeesНалаштування / PayFeesНалаштування / TriStateFeeOption — «Отримай самоплату Kamo Fees» виберіть на вибір модельний редактор і його чіп в таблиці моделей пішли, разом з Тип псевдонімів у використанніAppliedModel. - /settings/platform/events/settings/platform/plans сторінок вилучені (вони були зараховані за рахунок зарахування). Сторінка посадки, НалаштуванняStatusWindow субтопічний список та маршрут/icon скопіювати всі записи відповідності. - Manage Group sub-tab на**************** тепер Відобразити назву Групи за замовчуванням як поле для читання відключення (відправлення) раніше приховані повністю за допомогою інформаційної оповіщення, тому адміністратори можуть бачити Назва групи під час розуміння не може бути змінено.

  8. · kamo-internal

    Alias видимість UI + Subdomain Branches кнопка на сторінці галузевих типів

    СубдоменБранчесДіалог: - Редактор Alias замінив список чіпів з переліком рядків таблиці Реквізити користувачів та членів команди на alias — контроль адміністраторів типи творців див. кожен батько псевдонім /network/create - onUpdateModelSubdomainConfig підпис оновлено, щоб пройти повні псевдоніми об'єктів (alias, видиміToMembers, видиміToTeamMembers) замість звичайних рядків SecurityRoleManager: - fullSecurityModels State + loadFullSecurityModels мапа псевдонімів з ****************************************************************************************************************************************************************************************************************************************************************************** прапори - persistModelSubdomainConfig проходить повні об'єкти псевдонімів на задню Статус на сервери ****************************************************************************************************************************************************************************************************************************************************************************** - Додано кнопку Subdomain Branches (сторінка безпеки-roles) з ж SubdomainBranchesDialog, статус-fetch на mount, і модель перезавантаження коли діалог відкриває

  9. · SecurityService

    Фільтрування видимості Alias + автоперевірити субдомен власність

    Організатор: - Web-alias org створення сучасних автомарків власності JavaScript licenses API Веб-сайт Go1.13.8 Ми надаємо DNS від GoDaddy від їх імені - CUSTOM батьківAliasType тепер застосовує видимість творця (мірори /знімний фільтр, так що спинка не може обійтися) ВідділенняТипконтролер /виключний: - список батьків MEMBERS див. лише видиміToMembers=true aliases, TEAM MEMBERS див. лише видимийToTeamMembers=true aliases, OWNERS див. всі - Кожен псевдонім DTO тепер включає в себе видиміToMembers + видиміToTeamMembers прапори SecurityModelController: - processSubdomainBranchConfig зараз читає ****************************************************************************************************************************************************************************************************************************************************************************** від alias мапа об'єктів і дзвінків замінуВсі

  10. · kamo-shared-library

    Додати прапори видимості творця-типу

    Додати видиміToMembers / видиміToTeamМебери boolean стовпці до ChildOrgSecurityModelAlias тому адміністратори можуть обмежити, які батьківські псевдоніми з’являються до членів Команди при створенні дитячих орг. - Вхід: 2 @Builder. За замовчуванням справжні стовпчики з BOOL DEFAULT TRUE - SubdomainAliasDTO: виставити обидва прапори з -*************************************************************************************************************************************************************************************************************************************************************** перевантаження, що несе видимість; замінитиВсі (strings) делегатів до нього

  11. · kamo-internal

    Налаштування діалогового вікна, веб-алюзивний шлях, і панелі надання DNS

    Додає субдоменові відділення УІ по трьох поверхнях: - ******** новий "Subdomain Branches" button відкриває діалог для org-level увімкнути + GoDaddy creds, з Редактор з безпеки-моделей для дозволитиRootSubdomains + батьківські псевдоніми Універсальні інженерні рішення - /network/create: BasicsStep тепер гілки між привезено-сухе-домен шлях і шлях Камо (застосовується на батьківському прапорі, GoDaddy статус, і вибрані галузеві типи псевдонімів. Парент Аліас випадаючі списки ROOT (при дозволенні) плюс одномодові псевдоніми; жива допомога Оновлення попереднього перегляду як зміни користувачів - /setup/dns: новий DnsProvisioning Панель запилює колоду оргів і поверхні за рекордом GoDaddy статус з готелем Backed by Next.js BFF проксі маршрути під ****************

  12. · SecurityService

    Org-level config, клієнт GoDaddy і web-alias org створити шлях

    Провід нового підрозділу субдомену з кінцевим доходом: - SubdomainBranchesController for org-level включити + GoDaddy creds (live-verified) - GoDaddyDnsClient виконує idempotent CNAME оновлення та основні перевірки - ДнсПродакшн Послуга асинхронного субсету та записує рядки для OrgDnsProvisionLog - SecurityModelController надає можливістьRootSubdomains + псевдоніми[] на Створення / оновлення -*************************************************************************************************************************************************************************************************************************************************************** (useWebAlias + батькоAliasType + батьківAliasId + webAlias), комп’ютери отримано FQDN під кореневою зоною батьків, і вилікує DNS-додання після завершення операції - ФіліяТипконтролера /виключна кінцева точка виводить за ціною моделі і батьківсько-орговий субдомен-branches статус так що майстер може захопити UI

  13. · kamo-shared-library

    Додавання суб'єктів, cipher та alias/DNS-файлів

    Додатки для GoDaddy creds (AES-GCM зашифровані), the allowRootSubdomains прапор та колекція аліасів дитини на моделі безпеки, надання DNS Журнал аудиту та спільний помічник SecretCipher, який використовується компанією SecurityService для круглого столу зберігати ключі API без будь-якого повернення їх на фронтенд.

  14. · kamo-internal

    Префікс / suffix краплі, поштові скриньки доменні ворота, явний статус

    - Ім'я префікса і suffix тепер покривається з Ім'яPrefixType / Ім'яSuffixType каталоги, доставлені org-config кінцева точка. Відображення аббревіатури + повне ім'я за опцію. - поштова скринька електронної пошти "Продакшн" тепер вимкнена, якщо організація домену електронної пошти відповідає одному з перевірених поштових скриньок org домени (виписані з GET /api/email/domains). Чистий inline обміну повідомленнями пояснює, чи вимкнено його через відсутність електронної пошти, не перевірено домени налаштовані, або доменний невідповідний — і імена фактичних налаштовані домени, тому адміністратор знає, що використовувати. - Статус на сервери заблокувати стан життєвого циклу або подати. Редакція панелі відображаються "не встановлюються" до обраного статусу.

  15. · SecurityService

    Статус на сервери

    - GET ****** тепер повертає ім'яПрефікси і nameSuffixes, джерело від NamePrefixType and NameSuffixType Додати Учасник / Додати команду Учасника не потрібно їх жорсткого коду. - POST /create-team-член тепер відхиляє запит, що omits КомандаMembershipStatus (400). Попереднє безшумне зниження PROSPECT Після того, як телефоніст повинен вибрати стан життєвого циклу, явно так що команда Користувачі ніколи не вказані за замовчуванням.

  16. · kamo-internal

    Повна пропускна здатність, трипанель Додати список форм

    Реконструкція створення форми для використання всієї області контенту замість 1100px-широкий центрований стовпчик. - 3-колонний чуйний макет: липка ліва секція nav (md+), повна пропускна здатність форма (посередки), інформаційна панель на правому (xl+). - Сферні рядки тепер масштабуються для наявності ширини: розділ імен 5-ап на md+, контакт + рольові ряди підійти до 4-го поверху в точках розбиття хл. - Наклейка дна дії бара пропускає повну ширину зі статусом підказка і градієнтний первинний CTA. - Розділ nav використовує прокрутку-спрей, щоб виділити розділ користувача і підтримує клацання. - Полірований стиль картки — м'які кордони, тонкий підйомник, градієнт секція-голова ікони. - Нова права сповіщає картку у вигляді даних, що живуть (автар) ініціали, ім'я, ім'я користувача, електронна пошта, роль, статус чіпа) і показує готовий до створення індикатора після перевірки.

  17. · kamo-register

    Меж alias/email/name/phone в один крок "Мій профіль"

    Комбінувати раніше відокремлений "Мій електронної пошти та Alias", "Мій ім'я", і "Частина телефону" в один "Мій профіль" крок за 13+ реєстраторів, з alias + e-mail + правове ім'я, необхідне та номер телефону (перевірено через SMS при введенні). Під-13 реєстрантів тепер див. Одиночна назва "Мій Користувач Аліс" крок — без електронної пошти, правового імені або телефону. - Regery: спрощений список кроків, єдина ручкаНаступна перевірка, новий рендерStepContent випадків. Етап профілю внутрішньо прокручується так, що три зрізи вписуються в порт перегляду. - ЗареєструватиStatus отримує значення "REGISTERED" для доручень де немає електронної пошти, щоб перевірити — вони прямують прямо до Сторінка входу з ?registered=1 замість сторінки електронної пошти.

  18. · SecurityService

    Введіть номер мобільного, який Ви вказали при укладаннi договору з банком - для ідентифікації

    /api/security/register endpoint попередньо відхилено будь-який запит Відсутній email, ім'я або прізвище. Що зробив під-13 шлях (KIDS ONLY orgs, або All AGES з реєстрантом суб-13) неможливо — ті рахунки законно мають тільки псевдонім + пароль + слово насіння. Дійсність тепер вимагає alias + пароль на кожному шляху, і лікує e-mail + ім'я + прізвище, ім'я, як потрійний одномісний: поставка будь-який з них вимагає всіх трьох. Перевірка електронної пошти Ця електронна адреса захищена від спам-ботів, а саме: За умови, і статус відповіді "REGISTERED" (в існуючому стані) "EMAIL VERIFICATION REQUIRED" при відсутності електронної пошти для перевірки.

  19. · kamo-shared-library

    Додати ****** для вступних перевірок

  20. · kamo-internal

    Системна сторінка конфігурації користувачів + мережа ENTER AS SYSTEM MEMBER

    Адміністрування Платформи → Конфігурація, батько-орг-власник Сторінка, яка надає або відкликає дозвіл на ім’я платформи Управління Користувачем відділу, заголовок роботи або окремого члена команди. Зареєстровані в усіх трьох місцях навігації (Налаштування списку плиток сторінок, НалаштуванняStatusWindow маршрутів + субтопіка, і сама сторінка. Оновлення /мережа для використання нової /api/security/enter-as endpoint для існуюча кнопка ENTER, тому домен призначення отримує сеанс побудовано з цільового члена org (фіксуючи помилку, де джерело org's членID/orgID витік у нову сеансу. Додавання ENTER AS Система MEMBER на кнопці ENTER, що тільки надає після ****************************************************************************************************************************************************************************************************************************************************************************** підтверджує право абонента.

  21. · SecurityService

    Заповнення, потік вводу, захист від мутації, налаштування API

    Програмне забезпечення: SystemUserBackfillService працює на кожному Завантажувальний пристрій SecurityService (від DataLoader) для додавання стовпчика is system user і система user access таблиці, якщо відсутні, переконайтеся, що система єдинону Запис користувача існує, і створіть Адміністратор-роль TeamMember в кожному не входить до складу. Також працює на створитичасорізації, щоб нові організації отримали членство в системі просто не чекаючи наступного перезавантаження. Cross-org enter stream: замінює старий /api/generate-otk hand-off (який витік початково-оргової сесії абонента до домену призначення /api/security/enter-as. Новий кінцевий пункт будує свіжу *** об'ємом вказаний дійсний учасник, так що учасникID/orgID/rights завжди відповідає org вступають. Додати поле SUDO MEMBER ID до сеансу JSON так У зв'язку з тим, що Користувачі Системи неспроможні долучитися до користувачів оператора для проведення аудиту Охорони: SystemUserGuard відмовляється від будь-якої конфігурації API до системи Запис Користувача або будь-який з його членств (включений в членController, ********************************************************************************************************************************************************************************************************************************************************************** Приховати Система Користувача від GetMembersAndSubscribers, getTeamMembersAndContractors, і getMembersByDepartment endpointpoints так орендарів ніколи не бачить його у списку. Налаштування поверхні: SystemUserConfigController виводить CRUD на грант стіл для власників верхнього рівня та SystemUserCapabilityController повертає boolean сторінки /network, який використовує для прийняття рішення про те, чи можна зробити Кнопка ENTER AS SYSTEM MEMBER.

  22. · kamo-shared-library

    Додавання параметра системи користувача + доступність

    Вступає масштабну модель користувача платформи: прапорець користувача.isSystemUser (нетиповий частковий індекс застосовує єдинийтон), а також таблицю SystemUserAccess що записує, які відділи верхнього рівня, імена робочих місць або членів команди може знеособлювати Користувачу Системи, щоб ввести дитину. Рядки доступу Платформа-внутрішня (не записів RoleRightType), тому вони залишаються з поверхня прав на розрив.

  23. · kamo-register

    Додайте документи + заходи безпеки

    Вставте два нові кроки між паролем та відновленням облікового запису на 13+ реєстранти: фон-номерний крок (за бажанням, пропускний, з SMS-кодом верифікації) і етапу безпеки (обов'язково, 3 відмінних питання з відповідями. Під-13 реєстранти продовжують пропустити як і спираючись на їхнє слово для відновлення насіння. - FormPhoneКількість: idle -> вхід-код -> перевірена державна машина, Покроковий Capcha Віджет, що надає SMS-повідомлення, зміни-номер і пропускає доріжки. - FormSecurityQuestions: 3 краплі + відповіді, унікальність, що керуються, каталог fetched from the new public backendpoint. Статус на сервери Вправа, телефон + контроль якості - /api/безпека проксі тепер пересуває X-Forwarded-Host, так що задня може Вирішити org для вибору провайдера SMS.

  24. · SecurityService

    Збір телефону + питання безпеки під час реєстрації

    Перемістити телефон-номер і збір інформації про безпеку в самообслуговування реєстраційний потік (де вони були спочатку призначені) вимагає сторінки налаштувань поштового відправлення. - Нова реєстраціяPhoneService: генерує / перевіряє 6-цифрові SMS-коди через BulkTextSmsClient, 10-хвилинний TTL, 5-разовий ліміт швидкості за номер. - РеєстраціяПослуга тепер приймає записи реєстраторів з додатковою Випробувано Телефон та 3-й список заходів безпеки; шифруються з існуючим правилом відповідей-нормалізації. - /api/security/register приймає ******** і задає перевірений телефон з коду перед збереженням Користувача. - Нові публічні кінцеві точки POST /register/phone/initiate (Capcha-gated), POST /register/phone/verify, і GET **********************************************************************************************************************************************************************************************************************************************************

  25. · kamo-shared-library

    Додати реєстраційний телефон + репозиторій

    Новий стіл `Перереєстрація телефон коди` зберігає коди перевірки SMS-повідомлень видається при реєстрації самообслуговування перед Користувачем. Kept відокремлений від AccountVerificationCode, щоб уникнути перенесення NULL UserId на цьому столі.

  26. · kamo-internal

    Додати учасників / Додати сторінки Учасника

    - /рахунок: замініть одну неоднозначну кнопку з кнопками на вкладці Додайте <Member> на вкладці членів, додайте <Team> на вкладці членів команди. Кожна кнопка маршрутів для виділеної сторінки замість старої зламаної попадання до детальної інформації учасника. - Нові / налаштування/члени/нові та /settings/team-member/new page, як Повернувшись до спільної форми членства з пропорцією «варіант». - Форма - односторінкова, секційно-орієнтована верстка (ім'я, ідентичність, контакт, org поштова скринька, командно-членна роль/розміщення, огляд. Живий користувач-lookup Після того, як користувач вже існує або вже пов'язаний як учасник цього org. - Заслужений Вік РекТип org: якщо вимога дозволяє користувачам до 13, Особисті та організаційні поля електронної пошти приховані та імена користувачів стають первинний ідентифікатор. - Опціональна поштова скринька електронної пошти з питань організації "Продакшн" поштова скринька по електронній поштіПослуги та призначає її як первинна поштова скринька учасника. - Вкладка профілю на /settings/member/[id] тепер входить робоче місце, команда Статус на сервери до існуючого пункту PUT /api/security/members/{id}.

  27. · SecurityService

    Додати член / Додати потік створення команди

    - Новий учасникCreateController визначає: * GET ************************************************************************************************************************************************************************************************************************************************************* * GET ************************************************************************************************************************************************************************************************************************************************************* * POST /api/security/members/create — створення Учасника у співрозмовнику * POST************************************************************************************************************************************************************************************************************************************************************* Кафедра / назва роботи / місце роботи / статус членства / рівень безпеки - Використовує існуючий Користувач, коли він відповідає електронною поштою або ім'ям користувача; інакше створює чистий новий Користувач і надсилає шаблон EMAIL VERIFICATION. ВЕЛИКО шаблон завжди відправлений на створення. - Для оргів, чиї вікові дозволи на 13 користувачів, колекція електронної пошти пропущена і назва користувача стає первинним ідентифікатором. - Подовжує GET /members/{id}, щоб повернути місце + командаMembershipStatus + -ОрганізаціяОвнер для командМебер, і PUT на постійне місце, КомандаMembershipStatus та роботаTitleOfficial, коли запис є Командою - Замовлення ролі за замовчуванням + правоматеріалізація, делегована до Державної служби так, що всі нові країни-члени вже застосовані. - Виправлення EntitleService: boolean getter був засвідчений getIsOrganization Власник (Ломбок генерує -ОрганізаціяОвнер для примітивних болеанних полів).

  28. · kamo-shared-library

    Add AgeReqType.allowsUnder13() помічник

    Використовуються за допомогою додатку / Додати команду учасника, щоб пропустити збір електронної пошти для оргів, які мають потребу користувачів до 13 років (ALL AGES, KIDS ONLY, ALL COPPA GRADS.

  29. · kamo-internal

    Збудувати плани учасників та Billing навколо груп Billing

    - Сторінка учасників Плани & Вкладка Billing тепер прямо вирівняна з пульсируванням світіння і іконка StarRate на вкладці. Вимкнено при перегляді учасника Підписаний користувач OR підписаний користувач володіє org. Зміст розщеплення у чотири підпункти: Абонементи, вступи, Платіжна інформація, Манаж Груп. Розгортання-групи + "Add Billing Group" значок кнопки жити на правому підкабінному рядку; підбір групи приводить кожну панель. - Панель підписників показує одну картку на активний ринок (FREE DEFAULT) KamoCRM завжди присутній, з перепланом / скасуванням / реактивацією і занурення ліцензійної сітки. Автодеактивація пріоритетів Зменшення навантаження на місце. - Платіжні інформаційні панелі за допомогою StripeProvider + рефакторований платіжMethodForm, який прикріплює до вексельної групи (не старий клієнт-орг-рівень. - Керування групами, що редагує назву / вексельний контакт / дозвіл членів (Ліцензіар, менеджер з питань групового планування, canManageSubscription, canManageBilling) і додає/поставляє членів. За замовчуванням Група зчитування — її ротор є непристойним (хоча не у явній групі), і без назви або Допускається редагування дозволу. - /settings/account?tab=billing remove outright. Партнерство ПланКалкулатор знімається. Посилання всюди оновлено до нового учасника Плани та вкладки. - НалаштуванняStatusWindow + / посадка нав як обрізається (триходовий шлях синхронізація за правилом nav-sync. - BranchSetupManager отримує новий розділ "Торгові ринки" всередині редактор безпеки, використовуючи новий SecurityModelMarketController Прикріпити/детач SUBSCRIPTION ринки з пер-оскопом Public/Member/ Командно-імберні окуляри. ************************************************************************************************************************************************************************************************************************************************************************** повторити, щоб показати per-org Billing Групи + підписки на групи + MRR. /settings/platform/events /Налаштування/платформа/плани стають сторiнками-учасниками (старий зміст) ходять з чистого ріжуча. - Нові API проксі: /api/security/entitlements and ****************************************************************************************************************************************************************************************************************************************************************************** Новий гачок Вживає послуга безпеки Service EntitlementService для перегляду функцій УІ. Legacy споживчі файли (StatsManager, ОсобливостіManager, ФіліяSetupManager - це незбирач, доки їх підписка gating code is reworked to useEntitlements.

  30. · SecurityService

    Додати EntitleService + SecurityModel Торгівельні ринки

    - EntitleService computes per-member надає можливість об'єднання активного BillingGroupLicense Plan Особливості + KamoCRM Безкоштовна базова лінія. Кошик 15-хвилинні проекції в Redis, що зафіксовані на членІд. - EntitleInvalidationListener підписує на Kamo.entitlements.invalidate Редіс канал (MEMBER:/GROUP:/ORG: payloadloads) так BillingService мутації пропагувати відразу. - EntitleController at /api/security/entitlements exposes /me, *********** і cache-invalidation POST. - SecurityModelMarketController в **************** Прикріплює/детаческі торговіМаркети до ChildOrgSecurityModel і затискає the Громадський / Член / Командно-Меберський об'єм booleans.

Твій всесвіт чекає.

Почати безкоштовно за декілька хвилин. Додати продукти, коли ви будете готові — без перенесення, без нових реєстрацій.

Безкоштовно назавжди — не потрібна кредитна карта