Fermer un trou de la boîte à messagerie et six autres défauts d'équipe
L'examen contradictoire du 6df0008 a confirmé 24 conclusions. Les plus importantes: CRITIQUES - Tout membre peut supprimer le courrier d'un collègue. Les équip...
Microsoft Teams Phone en tant que fournisseur
Les équipes ne sont pas une API, donc le fournisseur colle trois plans de contrôle ensemble: Graphique, enregistrement de l'application et historique des app...
Persister la piste VOIP PHI à phi-access-log
Les enregistrements d'appel, l'audio de la messagerie vocale et les transcriptions ont été vérifiés dans le journal. qui maintient 14 jours contre une obligatio...
Scanner les référentiels partagés de l'AMF
MfaEnrollmentService est un service en kamo-shared-library, donc le caractère joker «ComponentScan("com.kamo") dans cette application le permet ou non Le servic...
Exiger de VEW-CALL-LOGS pour la lecture d'appels dans les orages de traitement de l'IPP
Enregistrement et lecture de messagerie vocale vérifiés et rien d'autre: tout membre de l'organisation de possession pourrait tirer n'importe quel appel, transc...
Enregistrement de l'enregistrement des appels, de la messagerie vocale et de l
L'enregistrement de la lecture n'a laissé aucune trace. Un appel enregistré est le PHI le plus dense la plate-forme stocke - la conversation insouciée - et "qui...
Engager des travaux en cours
Étapes et engagés en tant que tel, donc rien n'est laissé incomparable dans l'arbre de travail. 5 fichiers modifiés, 549 insertions, 2 suppressions(-)
Harden the kubectl téléchargement contre la sortie floconneuse [skip ci
dl.k8s.io sur la sortie du coureur chute par intermittence au moyen de transferts: curl: (56) OpenSSL SSL-read: déchiffrement raté ou mauvais enregistrement m...
Arrêtez d'épingler le secret wildcard-kamocrm-com expiré
wildcard-kamocrm-com était un secret multi-SAN hérité par ce qui est un orphelin. lorsque son certificat a été redémarré dans un secret par habitant. Rien ne l'...
TURN-REST critère d'identification pour le softphone mobile
GET /api/voip/tour/crétisants Monnaies de cochemins éphémères (HMAC-SHA1 sur "'expiry':'memberid'" avec le secret statique-statique partagé) donc natif/cellulai...
Accepter les jetons de flux X-z-z sur REST et les jetons de flux signés sur les points d'extrémité audio
OTKValidationPimité du filtre: X-OTK et X-z-jeton (GET, audio) chemins de streaming uniquement, vérifiés via shared StreamTokenCodec avec interne.auth.secret; l...
Garde/interne/voix avec InternalAuthFilter comme documenté - il a 401'd sur la session auth
VoipInternalSyncController a toujours documenté InternalAuthFilter comme sa garde, mais /interne/voip n'a jamais été dans les PREFIXES PROTECTED-PREFIXES ni exc...
Permettre aux administrateurs de connecter RingCentral au nom d'un membre
Le flux par membre de RingCentral était en libre-service, donc un administrateur de gestion Le profil d'un autre membre a vu "ils doivent le connecter eux-mêmes...
Pari pour ann rock d'OAuth et correctifs SIP pour téléphone portable
Corrections d'identifiants SIP pour le téléphone portable: - getSipCredentials: map outboundProxyBackup et stunServers (web-phone v2 needs pour le basculement...
Comparaison secrète interne-auth à temps constant (oracle de timing)
Remplacer String.equals par MessageDigest.isEqual donc latence de réponse ne peut pas f) L'octet-pare-byte-byte partagé X-Internal-Auth. Agrandir le balayage à ...
Retour de la transcription dans les métadonnées d'enregistrement pour le lecteur de téléphone mobile
Retour 200 allFalse pour les capacités d'orgage non config
GET /api/voip/capabilities a jeté ProviderNotConfiguredException (422) lorsqu'un org n'avait pas de fournisseur de téléphone, enregistrant une erreur de console...
Exclure /api/voip/sms/modlates du filtre de session OTK
Les critères d'extrémité du modèle de SMS doc-07 sont des appels internes sans session gardés par InternalAuthFilter (X-Internal-Auth), mais OTKValidationFilter...
Système de modèle de SMS Doc-07 - /api/voip/sms/modlats - Protection de segment GSM-7/UCS-2
- sur les entités SmsTemplate partagées : rend la primitive EXISTING BulkTextProvider (pas de seconde SmsSegmentCalculateur (GSM-7 160/153, UCS-2 70/67) et sms....
Pyms de fil en épaulement (INTERNAL-AUTH-SECRET) en déploiement [skip ci
Garde le nouveau point d'extrémité /api/bulktext/send. Partage la production existante valeur interne-aut (mlos-inter-auth-auth) donc SecurityService de récupér...
Mettre en œuvre POST /api/bulktext/sender des SMS transactionnels internes
BulkTextSmsClient de SecurityService (récupération de mots de passe et compte SMS) a toujours postulé à /api/bulktext/send, Mais le contrôleur n'a jamais été co...
Migrate à k1m1 (clone-registry-kubeconfig from k1m1, goutte k2m1, kubectl installation simple)
Bump for kamo-shared-library 1.5.0 snapshot refresh (catalogue des programmes M2)
La concourbure de la mise en place d'emplois, et non le déploiement de Kubernetes
La simultanéité au niveau du flux de travail a sérialisé l'ensemble du pipeline (y compris kubectl Déploiement). Déplacer le groupe vers l'emploi de la construc...
Clé d'enregistrement MinIO clé d'objet comme flux d'imagerie
Omettre l'extension lorsque FILE-EXT est nul/empte pour que le nom de l'objet corresponde RecordingImagingService et ImagingController. Java string concat avec ...
Résoudre l'extension de l'historique des appels à partir de member-voip-config, pas de téléphone-extension
était NULL pour certaines extensions même lorsque member-voip-config a correctement cartographié le membre à son extension. Utilisation member-voip-config (même...
Resa de secours de l'imagerie de surface lorsque le fournisseur n'a pas d'antécédents d'
KamoPBXProvider.getCallL'histoire retourne maintenant nul au lieu de lancer - donc la réponse 501 n'est plus court-circuite la reconnexion de l'imagerie. L'appe...
Retour aux enregistrements d'imagerie pour l'historique des appels et les messages vocaux
FreePBX 17 n'expose pas de messages vocals sur REST ou GraphQL sur cette installation (le type GraphQL voiceMail retourne la configuration de boîte aux lettres,...
Résoudre l'extension du membre avant la recherche du fournisseur de VM/CDR
CallController passait memberId où FreePBX (et d'autres types de PBX les fournisseurs) s'attendent à un numéro d'extension et une liste de messages vocaux renvo...
Dérouler les services de redéployer pour la mise à jour de la bibliothèque
Dérouler les services de redéployer pour la mise à jour de la bibliothèque
Enregistrement de la lecture, archives de messagerie vocale, messagerie vocale paginée, enrichissement historique
- Nouveau contrôleur d'enregistrement avec recherche en masse, audio en continu à distance pour les pistes maîtres et par canaux, et métadonnées pour la fenêtre...
Dérouler les services de redéployer pour la mise à jour de la bibliothèque
Capture newExtNumber en finale pour la capture de lambda dans MemberVoipConfigContrôleur
newExtNumber est réglable sous condition à l'intérieur du si (isVoipEnabled...) bloc, ce qui le rend effectivement final. Le bloc de synchronisation de l'équipe...
Synchronisation de l'équipeMembre Téléphonique Work extension sur la configuration VOIP
Ajouter les fonctions d'appel API - appel en avant - réponse automatique câblée par l'abstraction du fournisseur
- Ajouter CallFeaturesDto et SetCallFeaturesRequest POJOs - Ajouter CallForward/autoAnswer flags à ProviderCapabilities - Ajouter par défaut getCallFeatures/set...
Ne pas effacer l'affectation des membres en synchronisation des fournisseurs qui manquent de métadonnées
- Évoquètement inconditionnellement écrasée PhoneExtension.assignedMemberId avec quel que soit le fournisseur retourné. FreePBX (et tout fournisseur qui ne suit...
Certificats SIP sensibles à l'information WSS pour les softphones de navigateur
Le point de terminaison /api/voip/sip/ricials retourne désormais les identifiants d'un côté navigateur La pile SIP peut effectivement utiliser: transport WSS, d...
Ajouter le critère d'évaluation de l'assignation DELETE à VoipExtensionsContrôleur pour les personnes adminées
Ajouter MemberVoipConfigContrôleur pour la configuration VOIP membre avec affectation d'extension
Résultat du test de connexion persisté à champ connecté
- test() écrans d'évaluation est connecté/faux à DB après chaque bilan de santé - update() resets est connecté à nul lorsque la configJson change (les paramètre...
Utiliser extensionId en tant qu'ID externe, pas Relay node id
FreePBX retourne le même id de relais (-Xh0-W5zaW9uOg- et "extension:") pour chaque extension parce que le champ d'identification n'est pas peuplé. L'utilisatio...
Réécrire toutes les requêtes/mutations GQL contre l'introspection du schéma en direct
Vérification de chaque nom et type de champ par rapport au schéma FreePBX 17. Ensemble complet de corrections: Demandes d'information : - fetchonAllExtensions:...
Nom de champ Correct graphiqueQL pour aller chercherAsteriskDétails
FreePBX API retourne "Avez-vous envie de fetchAsteriskDetails?" vérifier la requête et son accesseur de chemin de données en conséquence.
Ajouter XHR/Accepter les en-têtes et l'analyse de la réponse à la chaîne au client GraphQL
Même modèle que FreePBXTokenCache: ajouter X-Requited-With et Accepter: application/json supprimer les réponses HTML de FreePBX, et changer les trois sites d'ap...
Ajouter Accept-XHR en-têtes et analyse de la réponse à la corde brute pour le critère d'évaluation du jeton
FreePBX renvoyait du texte/html lorsqu'il était appelé via le groupe DNS parce que le L'en-tête de l'hôte n'a pas correspondu au PBX-HOSTNAME configuré. Ajout A...
Cordes de champ d'application correct OAuth2 pour FreePBX API
Les lunettes FreePBX sont des identificateurs de premier niveau: 'gql' (toutes GraphQL) et 'repos' (tous les REST). Le format 'gql:read' signifie GQL pour un mo...
Drop VOIPService spec md de repo
Par convention de projet (les fichiers .md ne sont pas expédiés avec les services).
Comme ce que vous voyez l'expédition?
Commencez avec le plan gratuit et lisez à nouveau cette page dans un mois, puis passez à l’abonnement payant pour bénéficier de toutes les fonctionnalités.
