Salta al contenuto
KAMOUniverse

Changelog

Cosa c'è di nuovo.

Ogni miglioramento alla piattaforma, come si spedisce.

  1. · kamo-internal

    Procedura guidata di iscrizione con lo script di consenso, connessione-a-dispositivo, ingresso del tempo e la consegna di fatturazione

  2. · kamo-internal

    La scheda Monitoraggio, la coda di monitoraggio pratica e l'interruttore di monitoraggio remoto dell'organizzazione

  3. · kamo-internal

    Monitoraggio remoto filo nel grafico, la coda di pratica, il conteggio della testata, il sommario del grafico e il tour dei pazienti

  4. · DaemonService

    DaemonService effettua il monitoraggio remoto vicino/no-data orariamente, la riconciliazione ogni 15 minuti, l'escalation all'erta ogni 5

  5. · kamo-shared-library

    Iot.alarm notice modello email

  6. · kamo-shared-library

    SP06 logica di allarme — ISA-18.2 macchina di stato, escalation, soppressione, programma, inondazione

  7. · kamo-shared-library

    Logica della regola SP06 — matematica del loop, impronte digitali, chiavi di fuoco, templating, motivi

  8. · kamo-shared-library

    Logica della regola SP06 — solare, orari, giorni del sito, condizioni, trigger

  9. · kamo-shared-library

    SP06 vocabolario, entità e repository di sola lettura

    25 enums (costituiti per nome), IotServiceJobOrigin (SP13 navi su di esso), 17 entità corrispondenti alla SP06 DDL e loro repository di sola lettura; IotActivityKind += AUTOMATION ENABLED, AUTOMATION DISABLED (SP11-D6).

  10. · MediaService

    Eventi di sistema di endpoint e server (IoT SP04)

    POST Non e' vero. IoTService pubblica la carta IOT SHARE in un membro biglietto di supporto o conversazione Exec2Exec come l'evento di sistema del partecipante, attraverso l'evento di un sistema scrittore (ora anche rispondere al messaggio memorizzato id). X-Internal-Auth = IOT INTERNAL AUTH SECRET (Secret iot-internal-auth, già montato per SP01 STOMP authz), tempo costante; 503 bianco, 403 mismatch. Un biglietto Live Support (visitatore) è rifiutato 409 SESSION TYPE; una carta non può trasportare chiave che lo scrittore possiede. Ogni percorso di scrittura del cliente ora rifiuta il testo che parses come evento di sistema con 400 SISTEM EVENT RESERVED: invio dei membri, modifica dei messaggi (in o fuori di un evento di sistema), Exec2Exec post, sito web visitatore inviare, bug-report commento, e inoltro (un evento di sistema non è inoltrabile; si rifiuta un commento forgiato). Una carta di consenso non deve essere forgiabile da un partecipante.

  11. · EmailService

    NoReplySubsystem.IOT, il campione di anteprima e specchioToPush

    IoT Dispositivi SP06: lettere di allarme (iot.alarm notice) audit sotto IOT; l'anteprima del modello ha valori del campione; POST /api/internal/notificazioni prende uno specchio facoltativoToPush (false = solo campana, nessuna pressione del telefono). I produttori che non lo inviano si comportano esattamente come prima. Inoltre mappa due modelli canonici la guardia ************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** su principale: LEADS Disponibile -> LEADS, SUSPICIOUS SIGNIN DETECTED -> SECURITY ALERTS.

  12. · KBService

    Endpoint compito interno per l'automazione IoT

    POST /internal/checklists/iot/tasks: un compito per conto del proprietario di un'automazione, nella casella di posta dell'assegno (SP06 CREATE TASK). Le note devono essere accese, l'aggiudicatario ammissibile; un id proposto ha detto a un retried eseguire il suo compito esiste.

  13. · kamo-internal

    Impostazioni → Telefono → Non bloccare, accanto a Non contattare

    Proprietario 2026-10-15: "Rimuovilo e aggiungilo ad una lista di non blocco". L'organizzazione è propria numeri e linee di personale, che la lista non-contatto non blocca mai e nessun opt-out mette Ci penso io. - Nuova scheda do-not-block (MANAGE VOIP SETTINGS tramite VOIPService, impostazioniMenu sub entry, no admin-bar link): suggerimenti dei numeri, numeri principali e personale dell'organizzazione linee (genti, etichetta, la cui linea, già protetta o ancora nella lista dei non contatti), ciascuno con Proteggi, che apre solo la finestra di dialogo aggiungere preriempita; filtro canale (calls, testi, e-mail, ogni canale), ricerca, aggiungere con una nota, rimuovere con un motivo richiesto, e la storia, dove un opt-out ha tenuto fuori la lista non-contatto mostra come "Opt-out non registrato" con la sua fonte e ciò che è stato detto. Ogni numero e indirizzo è un PhoneNumber / EmailAddress. - Non contattare: la finestra di dialogo aggiungi mostra il rifiuto do-not-block del server come scritto; un importa nomi gli indirizzi che ha lasciato fuori perché sono protetti. - Chiavi: kamo-traslazione-dizionario (pushed first). Test: DoNotBlockTab.test.tsx (5), DoNotContactTab.test.tsx (caso di importazione RED, quindi GREEN), impostazioniMenuTabCoverage (RED con la scheda e nessuna voce del menu, quindi GREEN), il 20 guardie di sorgente e check-i18n-keys --require-messages; tsc sui file cambiati.

  14. · EmailService

    Viene notato un disiscrizione da uno degli indirizzi protetti dell'organizzazione, non elencati

    Proprietario 2026-10-15: l'elenco non-blocco accanto alla lista non-contatto. DoNotContactEmailBeans dichiara DoNotBlockList e lo consegna al DoNotContactList: un protetto l'indirizzo non è mai soppresso dall'elenco non-contatto e EmailDoNotContactMirror aggiunge per un disiscrizione di uno lascia una nota SKIPPED nella storia di non bloccare invece. Test: DoNotContactEmailWiring Test (nuovo; RED: i vecchi fagioli non si sono compilati contro il nuovo condiviso-lib), DoNotContactSuppressionTest, EmailDoNotContactMirrorTest, DisclosureLedgerWiring Prova.

  15. · kamo-shared-library

    L'elenco non-blocco, la lista dei permessi accanto all'elenco non-contatto

    Proprietario 2026-10-15: "rimuoverlo e aggiungerlo ad una lista di non blocco" (la società la linea principale era stata messa nella lista non-contatto da una chiamata di prova). Per una numeri e linee di personale dell'organizzazione, quindi una chiamata di prova o una frase misheard Non li blocca mai. - DO NOT BLOCK (unique ORG ID, CHANNEL, ADDRESS; CHANNEL CALL | SMS | EMAIL | ALL, ALL = chiamate e testi di un numero di telefono, e-mail di un indirizzo) e l'append-only DO NOT BLOCK EVENT trail (ADDED, REMOVED con il suo motivo richiesto, SKIPPED). - DoNotBlockList: aggiungere (idempotent; rifiutato mentre la lista non-contatto detiene il indirizzo su un canale coperto: rimuoverlo prima, con un motivo), rimuovereById (ragione di 3+ caratteri), protezione/iProtetto, ricerca, storia, attività, voci Per, registrato. - DoNotContact La lista ora prende il DoNotBlockList (modifica del costruttore; VOIPService, EmailService e kamoai-service dichiarano entrambi i fagioli nella stessa spinta): trovare/iBlocked/filterBlocked non bloccare mai un indirizzo protetto sui suoi canali; aggiungere() di un indirizzo protetto SKIPS un opt-out automatico (VOICE OPT OUT, SMS STOP, EMAIL UNSUBSCRIBE) con una nota SKIPPED e Aggiunto (null, falso, tenutoBy), e REFUSEs a person's add (MANUAL, IMPORT) con campo doNotBlock e la frase "{address} è nell'elenco non-blocco per {channel} ({nota}), quindi non può essere aggiunto alla lista di non contatto. Togliere Impostazioni -> Telefono - > Non bloccare prima." DDL: voipservice ****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** Test: DoNotBlockListTest (7, RED: non compilato su origine/principe), DoNotContactListTest, E' il momento giusto. (entrambi i ricercatori dei repository), SharedLibBeanSafety Prova.

  16. · VOIPService

    Impostazioni → Telefono → Non bloccare — le API, i suggerimenti e i testi STOP che saltano le linee proprie dell'azienda

    Proprietario 2026-10-15: "Rimuovilo e aggiungilo ad una lista di non blocco". La lista dei permessi accanto l'elenco non-contatto, per i numeri e le linee del personale dell'organizzazione. - DDL. (DO NOT BLOCK, DO NOT BLOCK EVENT append-only for kamo app), applicato 2026-10-18 04:16Z; re-run è un no-op. - DoNotContactBeans dichiara DoNotBlockList in comune e lo consegna al DoNotContactList (VoipRepositoryScanTest pin entrambi i repository). - /api/voip/do-not-block (MANAGE VOIP SETTINGS, come amministratore do-not-contact): elenco e ricerca, aggiungi {channel CALL|SMS|EMAIL|ALL, indirizzo, nota}, POST /{id}/remove con un ragione, storia, attività (con ogni opt-out ha tenuto fuori l'elenco), e /suggestions: i numeri dell'organizzazione, i numeri principali del telefono-server e le linee del personale da VOIP NUMBER OWNERSHIP (da ORG ID), una riga per numero con ciò che protegge o elencalo. I suggerimenti non aggiungono nulla. - Non contattare: l'aggiunta di un indirizzo protetto risponde al campo 409 doNotBlock con la frase dell'elenco; un nome di importazione quelli separati (Addresses protetti). - Un testo STOP da un numero protetto non è elencato (l'elenco condiviso salta e nota); la linea di log dice così. Test: DoNotBlockControllerTest, DoNotBlockSuggestionsTest, DoNotContactControllerTest, VoipRepositoryScanTest (RED: non ha compilato contro il nuovo condiviso-lib), SmsKeywordServiceTest, SmsGatewayTest... VoipMessageServiceKeywordTest, InternoAuthFilterKamoaiTest — 98 verde.

  17. · EmailService

    Portare il tipo RPM ALERT su REVIEW CLINICAL RESULTS e elencarlo dopo LEAD CALLBACK

  18. · kamo-shared-library

    Condivisione di enum, tipi di attività SHARE *, DomainAliasType. IO

  19. · KlusterServices

    Pre-problemi iot

    iot entra in BROWSER ONLY ALIASES e STATIC DOMAINS su entrambi gli apexe della piattaforma in modo da la prima quota il destinatario non incontra mai un certificato mancante; il monitoraggio/ viene applicato a mano (vedi runbook, Task 34).

  20. · SecurityService

    Gli endpoint di monitoraggio remoto SP12, il gestore del portale dei dispositivi di collegamento e le loro guardie

  21. · SecurityService

    Iscrizione SP12, consenso, pausa/resume/end/revoke e il link di collegamento

  22. · SecurityService

    SP12 tempo di gestione del monitoraggio remoto

  23. · SecurityService

    Limiti della clinica SP12 e della lista di lavoro allerta

  24. · SecurityService

    Anteprima di fatturazione SP12 RPM e il bollo di bozza

  25. · SecurityService

    Il monitoraggio SP12 legge, il link del portale e le letture di casa tenute fuori dalla finestra recente del grafico

  26. · SecurityService

    SP12 basi di monitoraggio remoto — cancello di scrittura, accesso, audit, client IoT, unisci gancio

  27. · kamo-internal

    Le chiamate di un run dicono quando il SI ha agito in ordine di un compagno di squadra, e con quale dei loro diritti

    La No Insubordination Rule (proprietario 2026-10-15): uno strumento chiamato SI fatto su ordine diretto del compagno di squadra porta il base dell'ordine, il compagno di squadra e i diritti che hanno prestato (kamoai-service W4 file di audit). Il cassetto di corsa aggiunge Su ordine di {name}, con i loro diritti: ..." a tale chiamata (runs.onOrderOf / onOrderOfUnnamed, dizionario e3ba7e79). Test: RunDetailOrderLine.test.tsx (3).

  28. · MCPGatewayService

    La No Insubordination Rule — un SI effettua l'ordine diretto del compagno di squadra sui loro diritti

    Proprietario 2026-10-15, raffinato lo stesso giorno: "Dove applicarsi a qualsiasi membro del team. Ma solo perché un membro della squadra (umano) o SI) ha più diritti, non significa che significa automaticamente il SI che stanno parlando per assumere i loro diritti. Ha essere una richiesta diretta o qualcosa simile a un ordine. In caso contrario, il SI dovrebbe rafforzare che non hanno quel livello di privilegio." Un punto di delega (OrderDelegation): per la chiamata o la lista degli strumenti di un SI in esecuzione, l'ordine è la richiesta che il SI ha citato, altrimenti il messaggio o l'attività che ha risvegliato l'esecuzione, verificata come le richieste di SP95 sono (solo chat di chat o attività, indirizzate al SI, entro l'ora, tra le sveglie della corsa, nessun contenuto esterno letto), da qualsiasi membro del team, una persona o un altro SI (RequestVerifier.verifyOrder / inferOrderFromRun), e solo quando le sue parole sono un ordine (Ordine diretto) o è un compito assegnato al SI. SecurityService poi minge il SI un ordine-scopio *** per la corsa; la chiamata funziona come lo stesso SI con quel preside, così i diritti controllano qui e ogni servizio a valle vedono l'unione. Una domanda, notizie o chat non presta nulla, e il rifiuto dei DIRITTI poi dice al SI di dire chiaramente che manca quel livello di accesso. - Divulgazione (CP07): il run legge per il richiedente (OrderPrincipal), e la condivisione continua porta il richiedente VERIFIED REQUEST Grant, giudicato dalla propria autorità di rilascio. - Audit: authority basis REQUESTED BY TEAM MEMBER ORDER, on behalf of member id, mutuato rights (DDL) E' una domanda. - strumenti/list nomina l'ordine in meta[com.kamocrm/orderedBy] così il runtime non mantiene mai quella lista. - Una sessione d'ordine presentata per qualsiasi altra esecuzione non è sessione; nulla è prestato su una sessione prestante. - Scambiato: il kill switch e si ferma alla porta, il charter, il controsoffitto di rischio, PHI, limiti, il cancello di accesso e la lista non-contatto. Test: ToolCallPipelineOrderTest (13; 9 RED senza il punto della delegazione), DirectOrderTest, OrderPrincipalTest, RichiestaVerifierTest (+2), CallerContextFactoryTest (+1); con ToolCallPipeline*, McpServerController*, AudienceFilter*, ReadAudience*, DisclosureGate*, *Audit*, ToolListParity*, PhonePack*, *Coverage*: 300+ verde.

  29. · SecurityService

    La No Insubordination Rule — l'ordine diretto di un compagno di squadra conferisce ad un SI i loro diritti per tale esecuzione

    Proprietario 2026-10-15, raffinato lo stesso giorno: qualsiasi membro del team (una persona o un altro SI) che dà un ordine diretto i loro diritti per il lavoro che lo svolge; parlare con il SI non presta nulla. # POST # (KAMOAI segreto interno) minge il SI un ordine-scopio *** per uno run: i propri diritti UNIONE del richiedente, meno il pavimento SI (AiRightsFloor) e le proprie righe NUKE esplicite del SI, chiuso sulla gerarchia dei diritti. Una persona presta i propri diritti di sessione dal vivo; un SI presta i propri diritti di rappresentanza solo, calcolato dalle sue file, quindi nulla è prestato in transito. La sessione è la SI (memberID, attoreType AI), vive 15 minuti, trasporta un blocco di delegazione {basis REQUESTED BY TEAM MEMBER ORDER, richiedenteMemberId, runId, OrderRef, preso in prestitoRights}, e non inizia nulla un sign-in inizia. Lo scambio si ferma (interruttore di scatto, org pausa, il La pausa o il pensionamento di SI, un'appartenenza inattiva, nessun supervisore) lo rifiutano, e sono letti di nuovo una volta che esiste. A il cambiamento dei diritti del SI termina una sessione piuttosto che riscriverla. La seduta in piedi del SI non ha mai un diritto. Test: OrderDelegationServiceTest (8), KSessionServiceIdentityTest (12), AiSessionExchangeServiceTest, AiRightsChangeListenerTest, PostAuth********: 51 green.

  30. · kamo-internal

    Impostazioni → Telefono → Non contattare, e il softphone avvisa prima di chiamare un numero elencato

    Proprietario 2026-10-15: una lista non-contatto a livello aziendale per organizzazione, portata per canale. - Impostazioni → Telefono → Non contattare (MANAGE VOIP SETTINGS, impostazioniMenu sub entry, no collegamento a barra di amministrazione): la modalità di chiamata (caldo e comporre su conferma, il default, o blocco), filtro canale, ricerca, aggiungere, importare (paste or .csv/.txt, fino a 1000), rimuovere con un ragione necessaria, e la storia (ogni aggiungere e rimuovere, da chi, perché). - Il softphone: SoftphoneContext consegna ad ogni consumatore un quadrante custodito, così ogni chiamata della persona (chiamata della finestra Softphone, e ogni chiamata altrove, che lo apre preriempita; anche il quadrante esterno JustCall) chiede GET /api/voip/do-not-contact/check Prima. Un numero elencato mostra "{number} chiesto di non essere chiamato su {date}" con Annullare / Chiamare comunque, o, quando l'organizzazione blocca, OK solo. Solo il CALL conta. Un controllo che fallisce i quadranti (una chiamata SI fallisce in kamoai-service). - Keys: kamo-translation-dictionary 7b74200b (pushed first). Test: DoNotContactTab.test.tsx, DoNotContactDialGuard.test.tsx, doNotContactDial.test.ts (RED su origine/principale, GREEN qui), impostazioni di copertura del menu; le 20 guardie di origine e check-i18n-keys --require-messages contro il dizionario spinto.

Il tuo universo ti sta aspettando.

Aggiungi i prodotti quando sei pronto: nessuna migrazione, nessun nuovo login, nessuna richiesta di pagamento.

Gratis per sempre — nessuna carta di credito richiesta