チェンジログ
何が新しいの?
プラットフォームのすべての改良 それが出荷される
· kamo-register
カモ登録はソフトウェアのauthのロゴ+名前を表彰します
- DynamicMetaLoader: config.json からソフトウェア ID + auth セレクタを読み込み、解決 タブのタイトル, セッションへの永続的なロゴ/名前の状態 - brand.ts + ThemeLogo: ロゴを自動フォローし、ロゴのアイデンティティ(反応)を登録します - useAuthName: 名前のテキスト(landing + flow)を auth-name の ID に従って登録します。 テーマコンフィグ負荷の反応;会社に戻って落ちる
· kamo-login
Kamo-loginはソフトウェアのauthのロゴ+タブのタイトルを敬います
- DynamicMetaLoader: config.json からソフトウェア ID + auth セレクタを読み込み、タブを設定 解決された名前(authNameBrandSource)、persist auth-logo state から sessionStorage - Brand.ts + ThemeLogo:ログインロゴは、auth-logoアイデンティティ(企業/ソフトウェア)を自動フォローし、 テーマコンフィグ負荷で再解決、コールサイトの変更は必要ありません
· kamo-internal
LabelManager ソフトウェア ID UI + 内部タブのタイトル
- 会社案内:ソフトウェア名/短縮名+ログイン/登録名+タブタイトルセレクター - ブランディング:ソフトウェアフル/シンプルなロゴのアップロード、オーバーライドトグル、およびパー表面 アイデンティティセレクター(ウォーターマーク、navpri、ログイン/登録ロゴ) - 常時会社(文書/電子メール/インボイス/等)として伝達される強制法的表面 - レイアウト:内部ブラウザタブのタイトルは内部TabBrandSourceによって解決します
· kamo-internal
3段階のorgのオンボーディングガイダンス(作成→終了DNS→入力)
第一次ヒーローを1つのステージ・アウェア・ガイダンス・パネルに一般化 会員の所有組織+ DNSステータス(/api/security/org/my-networksから): create — は、子 org を所有しない → 起動最初のホワイトラベル org (/network/create) dns — 独自の 1, DNS が検証されていない → ドメインの設定を終了 (/setup/dns?orgId=.) 入る — 所有 1、DNS 完了 → 入る (enter-as OTK → 内部。<domain>) 2番目のorgを所有したら、パネルショーはありません。彼らはロープを知っている。 DNS ペンディング ネットワークページのルールを正確にミラーリングします(カスタムドメイン&ドメインSetupComplete===false; a *.kamocrm.com org は DNS を必要としません。 各ステージは、独自のアクセントファミリーを取得します (people/work/crm) アイコンとコピー。 CTA は create/dns と async のリンクです。 準備段階のアクションを入力します。 どのフェッチエラーでも安全(パネルなし).
· kamo-internal
二重会社/ソフトウェア解決者+配達+消費
- Organization.ts:OrgContextによるソフトウェアID + per-surfaceセレクターを提供 - ブランド.ts:************************************ (+ vitest, 8ケース) - ThemeLogo:ロゴソフトウェア/ロゴフルソフトウェアの変形 - NavPri: navpriロゴ+テキストは、内部ソフトウェアのロゴセレクターに従う - 背景透かし + 背景:透かしは、ソフトウェアのアイデンティティ(第2のパス)を表彰します
· SecurityService
ソフトウェアロゴのアップロードタイプ+ config.jsonベーク
- UploadLogo:明示的なオブジェクトキースイッチ******************** ソフトウェアのアップロードが会社のロゴ.svgをクローバーできないように、デフォルトを拒否することで - copyFolder:アップロードされたソフトウェアロゴをテンプレートのコピーに保存する - config.json:bakeソフトウェアID + ログイン/登録のためのauth-surfaceセレクター - test: UploadLogoObjectKeyTest, buildConfigJson ソフトウェアケース
· kamo-shared-library
組織にソフトウェアホワイトラベルブランディングカラムを追加する
· kamo-shared-library
パッチによる持続的なソフトウェアブランディングフィールド組織ホワイトリスト
· kamo-internal
プラットフォーム org でメンバーのためのファースト・オーガナイザー CTA ヒーロー
ホームランチャーパッドのトップでオンボーディングヒーローを表示 カモCRMプラットフォームメンバー(チームメンバーではありません)はまだ作成されていない人 初めてのホワイトレーベルの組織をスピンアップさせるための子の組織。 著名な CTA ボタンとインライン 'ここをクリック' は /network/create に両方のルートをリンクします。 上記の「My {branches}」の nav へのコピーポイント。 userInfo.memberType === MEMBER + Organization.isTopLevel に Gated; 滞在 /api/security/org/my-networks が子供を所有しないと非表示 org は、任意の fetch エラーで安全 (hidden) を失敗します。 楽器のフォロー パネルの設計言語(人のアクセント、ガラス、オペレータ ラベル、家 増加、減感を与える)。 自宅の下の文字列。 ファーストオーグ.
· VOIPService
TURN-REST 認証は、モバイルソフトフォンのエンドポイントを指しています
GET /api/voip/turn/credentials は、エピヘムアル・コールターン・クレジット (HMAC-SHA1 オーバー) "<expiry>:<memberId>" は、 共有静的 - 秒ret) なので、 ネイティブ/セルラー WebRTC は 47.181.8.84:3478 を通して中継できます。 同じX-***-SIPを経由してAuth endpoint は、secret が absent の場合、 設定された:false (STUN-only) を返します。 既存の *** (オプション) からのワイヤ KAMO TURN SECRET.
· SecurityService
/my-networksで1-orgプライマリカラー+ロゴURLを公開
それぞれの org 行がプライマリカラー (Organization.colors.colorPri, '#'-prefixed) を実行します。 config.json と派生するロゴUrl/logoSimpleUrl (theme.<domain>/public/) にマッチする ロゴおよび/orgの六角形のボーダー色.
· MediaService
サポート訪問者+チケットでWebチャット統合IDをスナップショット
CreateKeyHash(enabled-filtered) による WebChatIntegration の解決 一度にbootstrap()/AI-promptの決断と一貫して createSupportSession と publicChatVisitor の両方にその ID をスタンプ 本サイトのアトリビューションごとのサポートチケット Null/blank キーハッシュまたは マッチングを有効にしたインテグレーションは、null の列を残しません.
· AIService
統合型人工知能プロンプト+セッションアトリビューション
パーオーガニからパブリックチャットシステム・コマンド・ウォーターフォールをアップグレード per-integration: PublicAiChatController は、 APIService で転送される X-Public-Chat-Key-Hash ヘッダー (nullable) および 解決する********************に渡す ハッシュによるWebChatIntegrationは、そのaiSystemPromptを上好みます AiOrgSettingsのデフォルトは、一般的なプロンプトに戻ります。 ザ・オブ・ザ・ 解決する AiChatSession も webChatIntegrationId でスタンプ 鍵の回転を生き残る安定したアトリビューション。 降水量を静的、単体テストされた決議に抽出 ヘルパー(Integraation-wins/org-fallback/generic-fallback/blank) 取扱い).
· APIService
GET /api/public-chat/bootstrap ゲートウェイ ルート
既存の proxyWithAuth パイプラインを再利用する boottrap エンドポイントを追加します。 (キーバリデーション+オプトインオリジン+ PUBLIC CHATスコープ+レートリミット+ X-Public-Chat-Key-Hash と MediaService ブートストラップエンドポイントへのプロキシ.
· MediaService
パブリックチャット ブートストラップ config ソルバー
解決する内部 GET ************************ を追加 X-Public-Chat-Key-Hash による WebChatIntegration は、その解決を返す design/behavior config (WebChatDefaultConfig.merge 経由でデフォルトで埋め込まれる) なので、インテグレーション行のキーはまだ今日のウィジェットのようにレンダリングされます。 統合なしでアクティブなパブリックチャットApiKeyのorgに戻ってフォールズ 存在する; 404s キーハッシュがまったく解決しない場合.
· MediaService
WebChatIntegration CRUD(キー+統合、orgスコープ)
Phase-2 Web チャット設定タブの Org-facing 管理 API です。 お問い合わせ 作成します。, アンダーリーティングのパブリックチャットApiKeyをミントトします。 (同じキー-gen アプローチ WebChatIntegration 行と WebChatIntegration 行と 元のキーを一度戻して下さい。 list/get/update/delete は org-ownership です。 check; designConfig 時に (Task-5) ブートストラップキャッシュを更新する または変更を有効にします.
· kamo-shared-library
WEB CHAT INTEGRATION IDアトリビューションカラムをビジター/チケット/イベントに追加
· kamo-shared-library
WebChatIntegration のエンティティティティ + repo + DTO + デフォルトのデザインコンフィグ
· kamo-internal
ホーム+ NavPriに「コピロットモバイルアプリ」エントリポイントを追加
NavTopがリスニングする「オープン・インタラクション・センター」イベントを両方渡します セットアップモバイルアプリタブでインタラクションセンターを開くため。 ホームショー 壁紙コントロールの下にあるラベル付きピル; NavPriは、下のロゴアイコンを示しています トライアルピル(拡張時ラベル、崩壊時ツールチップ)。 両ゲート ALLOW MOBILE ACCESS 右にあります.
· kamo-internal
QR、単一行タブ、ロゴ左ヘッダー、10分コードをパスワードでゲート
- 会員は、パスワードを再入力する必要があります(/api/mobile-access-otkを介してサーバーを検証し、 QRが明らかにされる前に、OTKを成功にのみ差し込みます。 すでに署名されたコンピュータでそれをつかむ。 ・QR/OTKは10分(600秒)、カウントダウン後に再ロックします。 - タブラベルは1行に強制されます。ロゴはタイトルの左に移動し、垂直スペースを保存します。 'Configuring for' 丸薬を削除します.
· SecurityService
ポスト ******************** — ゲートモバイルコピロットQR
呼び出し元のパスワード(passwordEncoder)を指定します。 セッションにマッチする 何も変更することなくユーザ) モバイルアクセス otk BFF ルートで使用 パスワードを再確認した後にQRをセットアップするだけです.
· kamo-internal
セットアップモバイルアクセスタブ — QRをインストール+自動設定モバイルコピロ
NavTopPanel の新しい 3 番目のタブ (ALLOW MOBILE ACCESS 参照) : ブランド表示 QR は、短命の OTK ディープリンク (kamocopilot://configure) を符号化します。 自分の携帯電話でのメンバーとデフォルトは、現在のorgにアプリを. オートリフレッシュ OTK を expiry の前に; MUI のレイアウトを org の原色で磨いた。 追加する
· kamo-shared-library
Add モバイルコピローのALLOW MOBILE ACCESS(167)一般的な権利
新しい RoleRightType (serviceType=null → 一般グループ) は、'Setup Mobile Access' インタラクションセンタータブ。 RoleRightsSyncServiceは、すべての役割にそれをバックフィルします SecurityService の再起動で、ロールエディタで全般の権限下に表示されます.
· AIService
外部の公開プロンプト、プロバイダなしのヒューマンハンドオフ、アノンデイリーメッセージキャップ
· kamo-shared-library
公開Webチャットの引用語句のためのanonの使用法の計算の照会を加えて下さい
· APIService
パブリックセッションのエッジで*** PoWを確認します(ペイロード時に強制的に)
· MediaService
Bust APIService 鍵は、公開チャットキーのトグル/削除直後にキャッシュされます
· MediaService
パブリックチャットの訪問者+アトリビューションのチケットでキーハッシュを作成する
· kamo-shared-library
Add anon web-chat quota の web-chat 用の AiOrgSettings に publicDailyMessageCap を追加する
· kamo-shared-library
作成キーハッシュアトリビューションカラムをpublicChatVisitor + SupportTicketに追加
