变更记录
什么是新的。
平台的每一个改进,随着它的出货。
· kamo-shared-library
质量审查、满意度检查和知识库缺口实体;调整中学到的指导方针(SIE9)
AiQualitySettings, AiQualityReview, AiCsatCheck, AiCsatOptOut 和 AiKbGap 声明 kamoai-service 的表 **************** (应用; kamoai-service 通过 JDBC 读写它们,没有 储存库) KamoInitializer AiTuningAxis.GUIDANCE 和 AiTuningKind.LEARNED (附加) 包含一个可重新创建的模块 从CP15调整建议中主管的更正中学到的工作描述指南。
· kamo-shared-library
每周红队的 AiRehearsalTrigger.SCHEDULED (SIE3)
· kamo-shared-library
在语音通知行中支持组织的 SI 调用语言、清晰语音和中继 (SIE8)
声明列 **************** (kamoai-service) 添加,所以 KamoInitializer 可以重新创建它们。
· kamo-internal
客户传递 — 客户 SI 交给一个人,与他们已经说的一切 (SIE7)
等待/我的/被占用/完成的计数;每个传递显示 客户需求,SI做了什么,下一步,最好的时间,如何 到达他们(电话号码/电子邮件地址 ) , 并打开,他们的整个线程 通过电话,电子邮件,文本,聊天和会议。 I'll Take It (先到先得, 首先服务 ) , 放回,标记完成并附上一条备忘录 彩带,共享头像,动画与减少的运动荣誉; 活在 在SI菜单下,为那些看见或听见的人提供了一个简单的方法 监督 SI;警报的链接可打开任何一个。 帮助主题 + 帮助中心 条款。
· MCPGatewayService
Handoff_to_person — SI 将对话传递给一个人(SIE7)
一个回电话(也"尽快有人是免费的 " ) 或排队的地方 下一个免费的人,在任何渠道,所以客户永远不会重复 客户是从哪里来的? 客户是谁? 人们都知道,这是个不错的选择 SEND_INTERNAL_MESSAGE,所以在未经验证的通道上开放;CP07计划 将其作为对组织的披露。 新的前缀 handoff_; guards, 短语,ArgRefs和黄金文件携带一个工具。
· kamo-internal
网站和社会档案上的一个线索
联系人卡片和新的潜在客户表单需要任意数量的网站(一个 + 添加另一个)和一个字段 LinkedIn, Facebook, Instagram, X, TikTok, YouTube, WhatsApp, Messenger 和 Telegram。 一个句柄,一个数字 或粘贴的链接都有效;潜在客户视图将每个链接显示为在新标签中打开的链接 他们只能看到蒙版联系人信息,而蒙版保存从不会清除他们。
· kamo-shared-library
网站和社会档案上的一个线索
引线上两列文本(每行一列网站,SOCIAL_PROFILES JSON)暴露为列表和地图 LeadDTO、CreateLeadRequest 和 UpdateLeadRequest;null 将其保持不变,空值将其清除。 LeadWebPresence 修剪、去重和边界化它们,并且只保留已知的网络 信息;记录在潜在客户历史记录中。 DDL(添加剂)已经手动应用。
· kamo-internal
可配置的跟踪链接,成员链接和其他站点的跟踪脚本
- 营销 → 跟踪代码 → 链接设置 (新页面, MANAGE_REFERRAL_CODES ) : 切换标准 关闭页面,添加组织自己的链接,并命名营销网站每个链接指向(所以一个组织 其公共站点不是 www.<console apex>,例如 Kamo Universe , 复制正确的链接 ) 跟踪参数从不在任何地方键入;它是在复制或预览链接时附加的。 - 获取链接选择器合并标准 + org + 成员自己的链接,成员可以添加或删除 他们自己的(粘贴到网站上的 URL 存储为其路径 ) 。 - 相同的页面生成一个复制粘贴脚本的网站 Kamo 不主机:同样的cookies,同样的 自我排除,相同的有效载荷,发送到带有组织密钥的公共信标 对抗假冒的浏览器。 - 全面的营销跟踪代理现在转发 PUT (它只知道 GET/POST/PATCH/DELETE ) 。 - API 密钥可以在设置 → 安全中给予营销跟踪范围。 - 代码条,抽屉式导航栏和预览链接尊重组织的名称网站。 需要 MediaService da07f59(链接端点;已创建表)和字典字符串 (12346cb5 ) , 两者都在原产地。
· kamo-asterisk-support
在通道的混音旁边录制通道的每一侧
业主 2026-11-06 : " 任何时候你有单独的音频通道,请确保抄录 这样它就能够进一步说明谁在说话 。 " 一个单声道MixMonitor混合双方,所以没有录制举行了一方单独(测量: 多轨调用的每个轨道转录到相同的词语 ) 。 [kamo-record] 现在也会写入 MixMonitor 的 r ( ) 和 t ( ) 文件, {stem } . rx.wav (该文件是 说着,我就跨出车外,头也不回地走进家门 他们的呼叫和脚都保持不变,清单文件也保持不变 ConversionService (3ff1cc4) 将每一侧的文件转录到一个文件夹 对方的身体,对方的眼睛,对方的眼睛,对方的眼睛 并将这些文件作为额外轨道保留;它从不将它们混入主轨道。
· kamo-internal
版本历史记录、保存前测试和职位描述的角色模板(SIE6)
- 每个职位描述编辑器上的版本历史抽屉(SI,组织,角色,部门,职位, 团队,人物 ) : 时间线与谁/何时/如何,每节改变药丸,普通语言差异,比较任何两个, 个性和声音过滤器,测试此版本(CP15排练版本 ) , 一键恢复与 注意;品牌颜色通过ApprovalBrandScope,角色带在当前版本上,减少了运动。 - 保存前测试:通过练习对话对编辑器未保存的更改进行测试(PersonalityRehearseDialog 获得一个草案只模式 ) 。 - 角色模板画廊(内置 + 您的组织)在一个SI的职务说明卡和雇佣 摘要:一步提供工作描述,工具规则,个性,权利和声音;保存为角色模板。 - BFF路线,帮助文章和帮助链接。
· kamo-shared-library
客户线程和传递实体 (SIE7)
ai_customer_touch (客户对话线程的一个行,跨越 ai_handoff(一个SI的通道,由每个CP07身份的哈希键)和ai_handoff(一个SI的 对话交给一个人:回调,队列,热转移 ) , 宣布 KamoInitializer 可以重新创建它们。 手动应用 DDL: kamoai-service **************** (已应用; kamoai-service 通过 JDBC 写入它们,没有存储库 ) 。
· kamo-internal
SI 指挥中心和一个可搜索的活动线索
SIE4. 工作人员中心在指挥中心上打开:四个实时人物(正在工作、等待 关于人们,今天的问题,花本周)和一张卡片每SI与其状态,它在做什么, 批准/消息/身份验证等待,问题,花费,质量,健康,暂停(与 表格视图是W1名单网格。 新的表格视图是W1名单网格 Activity Trail 选项卡显示 /api/kamoai/trail:将 SI 在一个时间线上所做的每个日志分组 按日期,搜索,SI / 类型 / 期间过滤器,例行检查默认隐藏,显示更多, CSV导出,以及一个详细的抽屉式导出栏(如何从决策记录中决定,批准历史, 在两个屏幕上以及在中心的帮助提示中提供首次帮助;简单的语言, org 品牌颜色、角色丝带、共享头像、尊重减少运动的运动。 @kamo/kamoai-核心 0.3.0版本。
· kamo-internal
记录作为定时的回合,说谁说话和从那一刻起播放
用户报告 2026-11-06. 一个共享视图,CallTranscriptTurns,适用于每个位置 读取录音的转录:通话记录的转录面板、媒体播放器、 softphone 的历史记录和语音邮件行,以及潜在客户的通话历史记录(未显示任何通话) 每轮都显示其发言人(我们的成员与照片和共享的 个人资料卡,另一方通过链接的潜在客户的姓名或电话号码,或 发言人 1/2 当声音分开说,但没有命名)和一个时间,发挥 从那里开始录制。 回合制播放使用共享媒体播放器窗口:显示该回合的打开的播放器 录制需要一个 media-player:seek 请求并跳到那里;否则一个新窗口 玩家在该点打开 **************** 该玩家标记的回合是 一个比定时回合更老的转录仍然像以前一样,没有任何变化 帮助: 呼叫记录 文章解释了扬声器和从某一时刻开始播放。 需要 kamo-翻译-字典 3aac0ff8 和 voipservice bf3d2b0.
· SecurityService
职位描述和个性化的版本历史记录,一键恢复,SI 角色模板(SIE6)
- charter_revisions:组织、角色、部门、职位、团队或成员章程的每个保存都是版本 (谁,什么时候,如何,每个部分计数 ) , 在写入提交后由 ONE CharterHistory 记录; 首次更改保留一个 BASELINE,而通过未记录路径的更改被抓取为 OUTSIDE。 - 合并:编辑器保存通过一个CharterLayerWriter (验证,写入,记录,宣布 ) ; 始终允许添加/删除,生成的个性,雇佣播种, 简报职责,层对话和团队保存记录通过同一记录器。 - /api/security/charter/history:列表,一个版本,比较任意两个(普通语言的差异 ) , 恢复 (与编辑图层相同的权限;删除不再适用的内容;保留楼层职责;审计) AI_CONFIGURATION_APPLIED;记录为 RESTORE 版本 ) 。 - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 和组织自有的模板(来自 SI 的设置;存档 ) , 只需一步即可应用:工作说明、工具规则、 个性和风格(模板版本,可恢复 ) , 权利(组织角色,只有申请人拥有的权利, 说着,她就站起来,走回了自己的房间。
· kamo-internal
SI 状态 — 每个 SI 路径的运行状况、与 Acknowledge 发生的事件以及谁正在待命(SIE1)
/settings/ai?tab=si-status: 一个英雄,回答"一切正常吗 ? " 在 状态的颜色(动画,减少运动尊重 ) , 每个SI路径一张卡片(电话 呼叫,会议,聊天,网站聊天,电子邮件,文本,工作队列,工具,总结, 审批、身份验证、密码保管库、SI 提供商) 因为,一个24小时的季节条,并在一个点击,14天和计数。 事件:开放和最近, 确认和标记已解决, Kamo 平台通知, 以及一个时间线抽屉式导航栏,显示谁被告知了如何(共享头像 ) 与每人应用程序和电话/文本中断/电子邮件,升级时间, '谁听到什么时候'预览,当没有人在呼叫时的备用人员,以及发送 用于Chrome的组织品牌颜色,用于状态的语义颜色, 角落丝带、首次使用欢迎卡、帮助提示和帮助中心文章 * * * * * * * * * * * * * * * * * * * * * * 数据:通过 /api/kamoai BFF 获取 kamoai-service /api/kamoai/si-status。
· kamo-internal
我的个人资料 电子邮件签名卡 (UPDATE_OWN_SIGNATURE)
成员可以选择打印自己的签名详细信息,或者返回到公司默认值 没有权限;服务器(EmailService /api/email/member-signature)决定并执行。
· EmailService
会员可以选择打印哪些签名细节 (UPDATE_OWN_SIGNATURE)
/api/email/member-signature GET/PUT/DELETE;编辑器缩小组织的 USER 范围,并与发件人的 USER 范围切换 写入需要 UPDATE_OWN_SIGNATURE ;成员可以通过 UPDATE_OWN_SIGNATURE 来执行写入操作 只关掉公司打印的东西。 表 **************** 应用于 2026-11-06.
· kamo-shared-library
CharterRevision 和 SiRoleTemplate 实体用于职位描述历史记录和 SI 角色模板(SIE6)
声明以便 KamoInitializer 可以重新创建 charter_revisions (每个章程的仅附加版本历史) si_role_templates(组织自己的 SI 角色模板 ) 。 SecurityService 读取和写入 两者都使用 JDBC; DDL 应用(securityservice ****************
· SecurityService
管理员模板授予 UPDATE_OWN_SIGNATURE
团队成员从 TEAM_MEMBER_ROLE_DEFAULT_GRANTS(共享库)获取;授予所有管理员角色获取 在权限同步上,并且管理员模板播种它。
· kamo-shared-library
UPDATE_OWN_SIGNATURE (696 ) , 默认情况下为团队成员打开
成员自己决定其电子邮件签名打印的详细信息。 独立 root;团队成员角色 默认通过 **************** 分类计数移动 (441 / 150 根 / 101 独立 ) 。
· VOIPService
将录音的转录作为定时回合提供
媒体播放器和通话记录读取的录制元数据现在携带 transcriptTurns (每个回合的开始,结束,文本和演讲者:我们的一个成员通过id, 另一方,或日记标签)和 transcriptSource, 从 RECORDINGS.TRANSCRIPT_TURNS 对于较老的读者来说,纯文字抄本保持不变, 读取被审计为与之前一样读取的转录。 用户报告 2026-11-06. 需要 kamo-shared-library e1a4a4ee。
· kamo-shared-library
录音保持其抄录作为定时轮与扬声器
RECORDINGS.TRANSCRIPT_TURNS (TEXT, 无效; DDL 由手动应用 2026-11-06) 保留 当然,这种说法是不正确的,因为这种说法是不正确的 TRANSCRIPT 对于每个老读者来说都很重要。 RecordingMetadata 负责转换, **************** 让 ConversionService 命名一个通道的 在录音存储之前,您可以通过 业主报告 2026-11-06: 抄录不涵盖整个通话,不能说谁 说着就又走进去。
· MediaService
用于跟踪代码的组织和会员登陆链接
GET **************** 返回组织的链接配置和调用者自己的配置 额外的链接; PUT /links/org (MANAGE_REFERRAL_CODES) 和 PUT /links/me (VIEW_REFERRAL_CODES) 保存 组织和成员仅来自会话。 每个文档都是按字段重建的: 目的地必须是站点路径或 http(s) URL,并且自动管理的折扣 / mrt_self 参数被剥离,因此跟踪参数永远不会是成员类型。 表格是手动创建的:**************** (已经应用到 作为所有者的群集 ) 。
· KlusterServices
SI 基础设施警报和 LiveKit 警报页面 SI 值班人员 (SIE1)
**************** (手动应用,不重新启动 ) : 黑盒子 探测器的jicofo,语调,会议耳朵, FreePBX的控制台, 工具平面, aiservice 和 kamoai-service;jicofo的指标(视频桥数 ) ; 基础设施: 语音工作者, PBX, 会议, 没有视频 桥, 会议耳朵, 工具平面, 提供商网关, EmailService, VOIPService, MediaService,不健康的组件和网站聊天的入口点。 每 规则包含 namespace=kamo 和 si_path,因此 kamoai-service 的 AlertmanagerConfig si-alerts 向 SysAdmin 发送邮件,并打开一个分页到平台的 PLATFORM 事件 组织的待命人员。 livekit/60-monitoring.yaml (TPLKLEAK 的 ) : 每 LiveKit 个警报是 si_path=calls 和 livekit-alerts 还调用了 oncall webhook(载体机密:一个 在命名空间 livekit, SECRETS.md 中的 kamo/kamoai-internal-auth ) 。 No LiveKit roll: 只改变了监控文件。
· MCPGatewayService
每个SI通道有一个策略决策点,并有一个可解释的决策记录(SIE2)
PolicyDecisionPoint 按照相同的顺序回答 Tool Plane 管道提出的每个授权问题: 可见性 + 权利楼层, 没有不服从命令和代理指挥链, 会议发言人 权力,有条件的权利,宪章禁止和结果(CharterPolicy.explain名称的规则,包括 '批准并始终允许' 站立权限 ) , 身份护卫和什么提升它, 批准. 每个调用的审计行都包含一个 kamo.si.decision/v1 记录 (decision_record / decision_outcome / decided_by ) , 可通过现有的 I2 audit read 和 /audit/decisions/{id }读取。 会议线路每次读取一次(身份保护、订单、代理共享一次读取 ) 。 行为不变:来自 b64fb8a 的黄金文件(图表矩阵、目录、360 场景)都匹配。
· kamo-internal
"实时更改"窗格显示最新的十个
仍然加载三十, 所以功能和修复标签有十个自己的显示; 一个活的到来 将最旧的文件推出窗格。 所有较旧的文件都放在 /changelog 中。
· kamo-shared-library
SI 事件、待命名单和设置、健康样本实体(SIE1)
五个 SIE1 表(si_incidents、si_incident_events、si_oncall_members、si_incidents_events) si_oncall_settings, si_health_samples) 声明,以便 KamoInitializer 可以重新创建 手工应用DDL: kamoai-service **************** (已经应用;kamoai-service 通过 JDBC 写入它们,没有存储库 ) 。
· kamo-internal
实时更改 — launchpad 组件和 /changelog 页面
每个变化的平台船舶, 活: 新条目在第二次他们被发送, 每个徽章滑动 当 CI 报告构建和部署时,会填充,并且推送会以爆发的方式到达 在列表上方的车道上骑行。 - Widget (changelog.live ) : 默认情况下在每个启动板和可移动; 所有/功能/修复, 运输通道,一个详细的抽屉与变化的旅程和什么与它一起运输。 - /changelog:总数,运输现在,过去24小时,然后整个历史 — 搜索,产品, 状态,类型和日期过滤器,按成员的日期分组,随着他们的滚动加载,带有一个 过滤列表无法放置的到达者的"新变化"药丸。 - 由 /topic/platform/changelog 供给;重新连接时和标签返回时重新读取。 - 帮助:实时更改文章(getting-started/live-changes)和两个帮助标记。
· MediaService
没有客户端可以 SEND 到 /topic/platform/changelog
实时更改广播到每个会话;伪造的帧将放置从未发生过的更改 通过平台中继,SecurityService 是唯一的写入者。
· SecurityService
实时更改 — 部署跟踪、实时帧和成员的提要
- push webhook 将每次向 main 的 push 记录为 CommitDeployment,并用它来标记提交, 然后在事务提交后将新条目发布到 security.platform.changelog 中。 - ChangelogDeploymentTracker 通过 Forgejo 的 CI 状态跟踪每个在飞行中的推送(构建,然后 在单个租赁下,每隔10秒发布一次,发布每次移动,并标记之前的推送 当同一个项目在稍后的项目登陆的时候,同一个项目将会生效。 - **************** 包含公共变更记录的条目 通过 VIEW_LIVE_CHANGES 进行封装,读取来自其部署的内容,并且可以搜索和过滤 member_rights_applied 当会话在权限之前。 - 默认情况下,VIEW_LIVE_CHANGES 和除了REQUIRED以外的所有角色的权限都是开启的。
