Saltar al contenido
KAMOUniverse

Changelog

Qué hay de nuevo.

Cada mejora de la plataforma, a medida que se envía.

  1. · EmailService

    Un día de calentamiento en el que no se envió nada no cuenta

    Un día de calentamiento solía ser el N-a las 24 horas del principio, haya o no cualquier cosa fue, así que girando el calentamiento en días antes de la primera campaña Pasó silenciosamente sus días de bajo volumen. Un día que termina sin intentos es Ahora repetido: se desliza y cada día más tarde se deslizan hacia adelante durante todo el día que se desconfiaba, cualquier número a la vez, mientras que los días que se usaban mantienen su ventanas y historia. La finalización se mueve con ellos, y el estado de calentamiento Reportes de ociosoDaysSkipped. La carrera se resuelve antes de que el sendero de envío cuente cualquier cosa, así que un envío es nunca se os haciégo un día que está a punto de repetirse; y cuando el los contadores no se pueden leer la carrera se deja como está en lugar de cerrar un día a ceros.

  2. · kamo-internal

    Una campaña que el backend no puede enviar dice por qué y cómo arreglarla

    EmailService hace una pausa de una campaña en lugar de fallar a sus destinatarios por uno cuando no puede enviarlo: su De está fuera de la plataforma relé dominio, o no hay remitente a granel en absoluto. Se niega a enviar, amarrar y reanudar mientras la causa se mantiene, y lo reporta en la campaña como enviarBlocker. - el editor y la vista de progreso muestran una bandera con la causa, la la propia oración del servidor y la fijación como dos pasos: cambiar el de (o utilizar el proveedor por defecto) y reanudar, o abrir el remitente a granel configuración y curriculum vitae. Reanuda permanece inhabilitado mientras el borrador sigue tiene la causa - Reanuda ahora salva el draft primero, así que un corregido De llega a la backend en lugar de que la campaña se reanude como almacenado y se negó otra vez - un envío, un calendario o un curriculum se declara en su lugar con la el mensaje del servidor, no sólo en un brindis, y la campaña se vuelve a leer Así que su estado y bloqueador son actuales - la red de campañas marca una campaña bloqueada junto a su estado, con el motivo en el flotante - errores de la API de la campaña prefieren el mensaje humano a través de un código de máquina, y llevar el estado y el código

  3. · kamo-internal

    Calencito dice que los días ociados no cuentan y dibuja las fechas que se deslizaron

    Un día de calentamiento en el que ya no se envía nada: las diapositivas de carrera a la delantera y el día se repite al enviar currículums, lo que hace que cambiar calentamiento en antes de la primera campaña a salvo. El panel ahora lo dice, al lado el interruptor y otra vez en las notas ocilas y no arrancadas. Cuando se han saltado los días, el anillo de día dice cuántos, con el calendario avanzado por muchos. Cada ficha programada muestra su fecha, y el tooltip del gráfico lo nombra, leído de cada día como el backend ha ahora en lugar de contar con él desde el principio, por lo que las fechas deslizadas son el los dilatados. En /marketing/email, un calentamiento ocioso sin nada que se lee como "on, comienza con su próxima campaña" en lugar de reclamar la entrega está siendo ritmo.

  4. · EmailService

    Correo de campaña el relevo de la plataforma rechazaría fracasar de inmediato en lugar de ser juzgado de nuevo

    El relevo envía sólo como su propio dominio y responde a cualquier otra cosa con un 451, así que una campaña cuyo From está en otro dominio solía volver a intentar cada receptor tres veces, cada uno de los regañadidos un intento de calentamiento, antes de que alguien lo aprendió el de estaba mal. Cuando el proveedor de la org es el anfitrión y el puerto del relevo y el dominio From no es el dominio de envío del relé, el destinatario es ahora marcado FAILED con la fijación en su error: no SMTP, no retenciones, no supresión, y nada contaba contra el calentamiento o su ranura.

  5. · EmailService

    El nuevo calentamiento de la campaña de un org y lo libera al ritmo del calentamiento

    Mientras el calentamiento de una org está encendido, el despachador deja sus campañas en paz y un lanzador les envía un mensaje a la vez, el más temprano debido primero a través de las campañas de la org, nunca más allá de la propia gorra hora de una campaña y Nunca pasó el tope de calentamiento del día. Corre cada segundo bajo el arrendamiento del despachador, por lo que los dos nunca pueden enviar al mismo destinatario de diferentes vainas. Los ajustes, los días decididos y el freno de seguridad viven en el proveedor de graneles blobo cifrado; los contadores viven en Redis y se reconstruyen de las filas receptoras si está perdido. GET, PUT y reset endpoints under /api/email/bulk-provider/warmup reportar el estado, el calendario, la cola y la salud. Ambos caminos ahora envían a través de un método por destinatario, que reclama la Enviar antes de que el relevo lo vea. Los contadores de campaña están escritos sin salvar la campaña, incluido el barrido de la mitad interrumpida; guardar Solía poner una campaña devolviendo a mitad de piso a SENDING.

  6. · kamo-internal

    Las filas de los descontados llevan contacto, y las filas ya enviadas mantienen su marca al lado del estado

    El receptor de EmailService DTO informa ahora si la campaña ya ha Envió por correo electrónico cada dirección. El mapper lo lleva a través, junto con lastError, y llena el id de campaña que deja fuera el DTO. Una fila ya cuestionada nunca se mantiene en el calentamiento y nunca se envía por correo electrónico de nuevo, por lo que la red de progreso ya no le da la nota de calentamiento, y cuando su último resultado es cualquier cosa menos Sent el chip de estado mantiene un pequeño "Ya envié" marca. En el paso de los destinatarios, una fila marcada "Ya enviado" también muestra cómo terminó ese envío cuando no simplemente salió.

  7. · kamo-internal

    La campaña Del campo dice que cuando el relevo a granel lo rechazaría

    El propio campo de la campaña, incuesté del proveedor de granel, cuando la dirección está fuera del dominio del proveedor, como correo que puede aterrizar en Spam. En el relevo de la plataforma eso no es un riesgo sino una certeza: EmailService falla a cada destinatario de una campaña cuyo dominio no es el dominio de envío del relé ("El relé a granel solo se envía como "dominio"). Así que cuando el proveedor de granel lleva un relé de plataforma, un fuera de dominio De es un error: el campo está marcado, una alerta dice lo que sucederá y ofrece el proveedor por defecto cuando esté en el dominio del relé, y prevuelo bloqueos que envían hasta que se arregle. Organizaciones en su propio SMTP El proveedor todavía recibe la advertencia de spam más suave.

  8. · EmailService

    Cada mensaje de campaña nombra su fila receptora en X-Kamo-Ref

    El relé a granel registra la cabecera contra su identificación de cola y la desnuda antes entrega, por lo que los resultados de entrega se pueden igualar a la fila exacta del destinatario. Las pruebas del compositor también pinchan el resto de lo que deja un mensaje de campaña con: la campaña De dirección y nombre, cada uno cayiendo de nuevo al grueso proveedor; un nombre de visualización que no puede iniciar una cabecera propia; el cúcte de correo en el dominio del que el correo es realmente de; y a Responder-A sólo cuando la campaña establece uno.

  9. · EmailService

    Los informes de entrega del relevo rebotan, bloquean y condúan correo de campaña tras entrega

    POST ************* toma los informes del relé de la plataforma de lo que fue de cada mensaje, emparedo con la fila receptora por el Cabecera X-Kamo-Ref o, en su defecto, la última fila enviada a la dirección en los últimos siete días. Un rebote duro (5.1.x, 5.2.1, 5.4.4) marca la fila BOUNCED y suprime la dirección. Un bloque (5.7.x) lo marca FAILED pero mantiene la dirección, desde entonces la negativa fue del remitente, no del buzón. Cualquier otra cosa permanente es un fracaso. La razón de un aplazamiento se mantiene en la fila hasta la entrega. Sólo las filas todavía SENT se mueven, y el calentamiento cuenta cada informe una vez, contra el día en que se envió el mensaje, por lo que el reportero puede reenviar un lote A salvo.

  10. · EmailService

    El horario del calentamiento, las reglas de ritmo y salud

    Un nuevo envío IP está enmurado durante catorce días de calentamiento. Días 1-7 sigue a horario fijo por paso (conservador, equilibrado, agresivo); desde el día 8 cada día crece por el porcentaje de ritmos sólo si el día anterior era saludable por sus tasas de rebote, bloqueo y aplazamiento, y de otro modo se mantiene. Cada día se decidió una vez y se mantuvo con la razón. Los mensajes se recorren desde lo que queda del día, con mezquinas y la paja ocasional, nunca más rápido que cuatro veces la tasa constante y Nunca tan tarde que el resto del presupuesto del día ya no encaja. El El freno de seguridad se detiene al día que los receptores están bloqueando o rebotando.

  11. · kamo-internal

    Bancarta de estimulación caliente en /marketing/email

    Mientras el nuevo anfitrión se está caminando, las campañas salen mucho más despacio que sus propios escenarios dicen, y nada en la campaña dijo por qué. El el espacio de trabajo y la visión de progreso de una campaña ahora llevan un poco banderán con el día, los envíos de hoy contra el tope, el siguiente enviar y lo que está esperando, enlazando con los ajustes de calentamiento, y un destinatario en cola explica que se está llevando a cabo. La bandera está escondida mientras que el calentamiento está apagado o completo, y cuando el el calentamiento no se puede leer.

  12. · kamo-internal

    Cliente remitente a granel tipo con errores de campo y los endpoints de calentamiento

    El cliente conocía un estado de proveedor llamado PENDING que el backend nunca envía, por lo que un remitente que se salvó pero aún no probado cayó a "No configurado". Ahora lee PENDING-SETUP (todavía aceptando PENDING) y normaliza todo el estado en un solo lugar: el resumen de la conexión, cuando el contraseña cambió por última vez, el relevo de la plataforma y si el miembro puede - Manégolo. Los fallos vuelven como BulkEmailApiError, portando el estado HTTP y, para a 400, el campo de forma el backend nombrado, por lo que el formulario puede poner el mensaje en ese campo y un 403 se puede mostrar como un estado de acceso en lugar de un error. Se toleran los 204 vacíos, y un ahorro o calentamiento escribe que responde con un reconocimiento desnudo es seguido por un GET en lugar de ser adoptado como el estado, que es lo que en blanco de la forma después de cada salvación. Añade las llamadas de calentamiento: GET y PUT /bulk-provider/warmup y POST /bulk-provider/warmup/reset.

  13. · kamo-internal

    Regla de conexión, presets y modelo de vista de calentamiento detrás del remitente a granel

    Las piezas puras sobre las que se construyen las nuevas pantallas, cada una con pruebas: - la regla de conexión del puerto primero del backend, reflejada para que la forma pueda decir cómo KamoCRM se conectará antes de que se guarde nada: 465 es TLS implícito con el inicio de sesión, 587 es STARTTLS con el inicio de sesión lo que diga Seguridad, cualquier otro puerto con actualizaciones y señales STARTTLS en, y cualquier otra cosa es texto plano sin registro - presets de un clic para el relé de la plataforma y proveedores comunes - la forma como valor: lo que está sucio, el cuerpo de guarda y la validación que solo pide un nombre de usuario y contraseña cuando la conexión se registra en - preparación para la configuración y las etapas de un envío de prueba - la rampa de calentamiento, cuenta atrás, enviar ritmos y números de tablas de horarios UsarBulkWarmup encuesta el calentamiento cada 15 segundos mientras la pestaña es visible, pausas mientras está escondido, se detiene en un 403, y aplica escritos con optimismo con el retroceso.

  14. · kamo-internal

    Reconstruido pestaña remitente a granel con un nuevo panel de calentamiento de host

    La pestaña Bulk Email Sender se reconstruye de un largo formulario en un conjunto de cartas sobre un borrador del estado guardado: - un masthead con el estado vivo (un remitente salvo pero no probado ahora se lee "Needs una prueba"), a quién envía como, la conexión almacenada en una sola línea y cuando se probó por última vez - un tren de preparación en cuatro pasos: conexión, remitente, prueba pasada, calentamiento - la conexión, con presets, a None / STARTTLS / control SSL-TLS, a sugerencia cuando se escribe un puerto bien conocido, y un relato en vivo de cómo KamoCRM se conectará, advirtiendo cuando el puerto anunciable Seguridad elegida - iniciar sesión que sólo sea interactiva cuando la conexión se indica, y fila de contraseña que dice si uno se guarda y cuándo, con Reemplazar y Eliminar escenografía hasta que se guarde - la identidad del remitente con una vista previa de la bandeja de entrada, advirtiendo cuando la plataforma El relevo rechazaría el dominio From - una barra de salvación pegajosa, errores del backend colocados en su campo, y el estado salvado tomado de la propia respuesta de la salvación - una prueba en línea enviar que dibuja a dónde llegó el mensaje, marcando el etapa que lo rechazó El panel New Host Warm Up se sienta a continuación: encendido/apagado, ritmo, el día actual como Anillo de catorce segmentos, hoy manda contra la gorra con un en directo Cuenta atrás para el siguiente envío, totales, salud de parto y cuánto de ella los informes de relevo, el horario de 14 días con la decisión de cada día y un tope contra el gráfico real, los envíos por hora de hoy y las diferencias desiguales entre Los envíos recientes, la cola, el freno de seguridad con Resume ahora, y Reset. Un miembro sin derecho a cambiar el remitente recibe una pestaña de solo lectura, y uno rechazó que la lectura tenga un estado de acceso en lugar de un error.

  15. · EmailService

    Una campaña no se puede enviar o programar sin un remitente de correo electrónico a granel

    El despachador solía aceptar tal campaña y luego saltárselo en cada garra, dejándolo en SENDING sin nada más que una línea de registro. Ahora lo rechaza con un mensaje que diga dónde poner al remitente. Un host y un puerto configurados son suficientes; no es necesario verificarlo.

  16. · EmailService

    El proveedor configura las respuestas api con el estado guardado y nombra el campo que se niega

    PUT ahora devuelve el estado de configuración completa en lugar de "éxito": true, que manchado el formulario después de cada salvación. Los campos se validan lado del servidor y rechazados como 400 .error, campo; un login se requiere sólo cuando la conexión En realidad se inscribirá. Una contraseña en blanco mantiene el almacenado, despeje desconexión lo quita, y contraseñaActuadoEn los registros cuando se estableció uno. El estado se va volver a PENDING-SETUP sólo cuando un campo relevante para la entrega cambió. Cada escritura a la mancha cifrada ahora pasa por un bloqueado read-modificar-escribir que mantiene las llaves que no posee, porque la mancha es a punto de llevar el calentamiento también. El estado muestra cómo EmailService lo hará connect, y el org de la plataforma se muestra la configuración de su relé interno. El envío de la prueba dice dónde falló (conectar, TLS, login, sender, recipiente, datos) con una solución corta para cada uno.

  17. · kamo-internal

    Avance del correo electrónico tal como se envía, una audiencia personalómica / sin plantilla, y un campo real From

    Vista previa: un diálogo que hace la propia construcción del editor de la salida de la propia compilaciónBodyHtml - el encadenando las tiendas y el despachador envía - así que la cabecera del público, firma y pie de la pie y el pie de cumplimiento están todos allí y no puede deriva del correo electrónico real. Vistas de escritorio y móviles, "previsualización como" cualquier destinatario o muestra, fundir fichas llenas la forma en que EmailService los llena, un sobre estilo bandeja de entrada y un marco de arena. Traducible del componer paso, la barra de pies de la policía, y la visión de progreso de una campaña enviada. Público: "Custom / No Plantilla" no envuelve nada alrededor del cuerpo. Se salva como ámbito de la EMPRNY con firmaScope NONE (que el servidor almacena y nunca Lee), y la red de campañas lo etiqueta como personalizado. De: su propio Desde nombres y campos de dirección, predeterminado del correo electrónico masivo proveedor y editable por campaña, con un reinicio al impago y una advertencia cuando la dirección está fuera del dominio del proveedor. Esto sustituye al remitente derivado de la audiencia y la radio sin revesidad. Descipientes: direcciones de la campaña ya han enviado correos electrónicos están marcados "Ya enviado", con un aviso de que nunca volverán a ser enviados por correo electrónico; EmailService Ahora informa esto por destinatario.

  18. · KlusterServices

    Signo hello.kamocrm.com con su propia clave de cliente, por el propio dominio From

    El correo de campaña sale como hello.kamocrm.com a través de postfix-bulk. Consigue su propia tecla DKIM (cliente de selección, publicado como cliente.-domainkey.hello), y use.esld = falso para que un mensaje hello.kamocrm.com se firme d=hello en lugar de caer de nuevo a la clave de correo del padre, que falla lo estricto Alineación DKIM (adkim=s) el dominio publica.

  19. · KlusterServices

    Postfix-bulk, un segundo relevo relevo para el correo de campaña, con los resultados de entrega alimentados de nuevo

    Correo de campaña sale ahora a través de su propio relevo en k3m1 (egreso 47.181.8.87) como hello.kamocrm.com, por lo que las quejas sobre el correo masivo nunca tocar el reputación de correo.kamocrm.com (47.181.8.84). - Relé de texto plano en el puerto 25 para EmailService solamente (NetworkPolicy); acepta sólo remitentes de .hello.kamocrm.com y rechaza cualquier otra cosa con un 4xx, nunca un 5xx, porque el despachador de campaña suprime en cualquier 5xx. - Un guardia de salida mantiene la entrega de salidas a menos que la dirección pública de la vaina es 47.181.8.87, por lo que la bulto nunca puede salir tranquilamente como otra IP. - Un sidecar de entrega-eventos lee el registro de correo e informa cada campaña mensaje entregado / repleto / resultado caducado / vencido a EmailService, Acompañado por la cabecera X-Kamo-Ref, que se despoja antes de la entrega. Aplicado a mano por ahora: implement-services.yml aplica correo / archivos por nombre y no enumera estos todavía.

  20. · EmailService

    Una campaña envía una dirección más una vez, siempre

    Los direcciones se emparejan y se recortan de forma insensible, y una fila de la campaña ha entregado el relevo (enviado, en vuelo, rebotado, fallido o juzgado) es ahora su registro permanente de esa dirección: nunca borrado, reiniciado o re-exactuado. - materializarRecipientes utilizados para borrar cada fila y reconstruir la lista en cada Guardar, así que editar una campaña de pausa puso direcciones ya enviadas de nuevo en el - cola. Ahora mantiene la historia, refresca las filas aún no contactadas, elimina sólo las filas no contactadas que dejaron la lista, y nunca vuelve a añadir un La campaña se ha puesto en contacto, aunque muchas veces se añade. - El despachador reclama una frase enviando antes de que el relevo lo vea. Un accidente entre el relé que acepta un mensaje y la fila marcada SENT acostumbrada a Déjalo y envíalo de nuevo; ahora se queda enviando y cierra un barrido fuera como FAILED sin volver a intentarlo. - Un destinatario añadido mientras se detuvo una campaña nunca tuvo tiempo de liberación, así que Nunca fue enviada y la campaña nunca terminó. Los tiempos de liberación ahora van a cualquier fila en cola que carezca de una. - Un índice único de inicio en (campaña-id, inferior (trim (email)) respalda la regla a la mesa. La lista de destinatarios ahora devuelve el nombre de cada fila, valores de fusión, fuente y si se contactó, así que la reapertura y la renovación de un borrador ya no borras la personalización. La dirección del From vuelve a la de la fuente de volumen, y el nombre de From se envía realmente (fue almacenado y caído).

  21. · kamo-internal

    NoReply Outbound, una auditoría de correo solo a Dios enviado como la plataforma NoRespuesta dirección

    Una tercera sección bajo Mail, mostra mostrada sólo a los miembros elegibles para Dios, abre /mensages/salidas/no espelamente: cada mensaje EmailService entregado al relevo como la plataforma NoReply address, más nuevo primero, con búsqueda, un Filtro enviado/incunalizado y un cajón que muestra el mensaje completo. La página aleja a cualquiera que no sea elegible para Dios. Esa es la cortesía, no la cerrazón: los datos provienen de EmailService, que rechaza cualquier sesión sin GD.

  22. · EmailService

    Un libro de cada mensaje enviado como la plataforma Dirección de NoRespuesta, legible por Dios solamente

    Grabado en EmailSmtpServicio en el correo de un solo lugar llega al relevo, y decidido por la dirección From, así que plantillas transaccionales, campañas y las acciones están cubiertas sin optar por participar. Se registran las negativas con la razón del relevo y aún así echado. La escritura corre en su propia transacción y nunca lanza: una fila de auditoría fallida no puede fallar o revertir un mensaje. Búsqueda GET /api/email/noreply-outbound el libro mayor (búsqueda, filtro de estado, paging, cuerpos excluidos); /-id- devuelve un mensaje con su cuerpo. Ambos requiere GD en la sesión y nada más: el libro mayor abarca cada organización, para que no pueda abrirlo la derecha. La tabla es creada en la puesta en marcha por NoReplyOutboundSchema, como artículo-sharedo de libro de libros es.

  23. · kamo-internal

    Un enlace de seguimiento puede aterrizar en el artículo de tasas CRM de marca blanca

    Añade ************* a los destinos que el recolector de rastreo ofrece en /marketing/seguimiento, con su propio icono. El camino está libre de localización como sus hermanos: el sitio de marketing 308s se lo a ************* y guarda ?discount= a través de la salto, lo mismo que /precio (comprobado con el sitio en vivo). La etiqueta de la fila y la pista están dentro kamo-translación-diccionario 7a6fd4e2.

  24. · kamo-marketing

    Deja que un lector envíe el artículo de la senta a alguien que conozca.

    Una forma de "pasarlo en" al pie de ******************* alcanzado de un chip en la parte superior y una línea después de las siete preguntas. Los nombres del lector hasta tres personas y enviamos por correo electrónico a cada uno de ellos el artículo una vez, con el El nombre del lector en él; también puede abrirlo en su propio cliente de correo o copia el enlace en su lugar. POST /api/share-illas de artículo que le impone antes de EmailService lo ve: mismo origen sólo, un lado de servidor verificado contra el servicio *** (el otro formularios aquí reenviar la carga útil sin que nadie lo compruebe), y auto-envión sólo para los visitantes de la UE/EEE, el Reino Unido y Suiza. Adelantó un cuerpo. construidos de campos delimitados, con la dirección de visitante nuestra entrada registrada, a EmailService /api/internal/article-share, que hace cumplir los límites y la lista de opt-out de la plataforma. El despliegue lee INTERNAL-AUTH-SECRET desde el mlos-internal-auth existente secreto (opcional, por lo que el sitio todavía comienza sin él) y gana EMAIL-SERVICE-URL y CAPCHA-SERVICE-URL.

  25. · EmailService

    Envíe un artículo a alguien, como plataforma org, con un opt-out en funcionamiento

    Un visitante en el sitio de marketing puede enviar el artículo de la tarima de asiento a hasta tres gente. POST /api/internal/article-share (X-Internal-Auth, como cualquier otro /api/internal endpoint) envía a cada uno de ellos un correo electrónico como el nivel superior organización, desde "Esender" a través de KamoCRM" con Responder al remitente. Reutiliza lo que existe en lugar de añadir una segunda copia de la misma: - Opt-outs en vivo en email-suppressions, teclado al identificador de la plataforma org, así que un Op-out aquí nunca toca una lista de org y una lista de org nunca Bloquea esto. El enlace es un símbolo firmado (orgId-email, HMAC) que el existente SinscribeControla y página ahora aceptan junto a campaña fichas, con el mismo RFC 8058 Lista-Cladera de suscripción campañas de encabezados envían. - La entrega pasa por **************** que gana DeliveryOptions (nombre de pantalla y cabeceras adicionales) así que De, la decisión SPF y la relevación se mantiene decidida en un solo lugar. Una carta construida para llamar no tiene fila de plantillas, por lo que el contador de uso se salta para ello. Límites, contados de un libro de hashed led **************** creado en startup) para que cada cápsula esté de acuerdo: tres personas por solicitud, preestablecido sólo notas, 10 al día por remitente y por dirección de visitante, 500 al día en general, un correo electrónico por dirección cada 90 días, nunca a una dirección suprimida. También establece bulk-email.unsubscribe-base-base-url en la configmap prod. El código El default está en blanco, que envía correo de campaña sin su enlace de suscripción.

  26. · kamo-marketing

    Colocar cada página en /sitemap.xml mismo, y lista páginas sólo en los idiomas que tienen

    /sitemap.xml era un índice, por lo que abrirlo mostraba 79 nombres de archivos en lugar de las páginas del sitio. - /sitemap.xml es ahora uno de los urlsets con cada página: 18.700 de ellos, cada uno en su dirección en inglés, con cada versión en la lengua en la que existe como una hreflang alterna. Eso está dentro del límite de 50.000-URL / 50 MB del protocolo para un solo archivo; más allá de él, el archivo es rechazado entero. Entradas de registro de cambios entrar sin sus suplentes, lo que pondría el archivo cerca de 60 MB. Cada uno la página de entrada declara sus propios idiomas. - Los archivos por idioma, donde cada versión en el idioma es una URL propia, moverse a /sitemap-index.xml. robots.txt nombres de ambos archivos. - Aparece una página cuya copia tiene su propio espacio de nombres de mensaje, y nombres alternas, sólo en los lugares que el espacio de nombres se traduce realmente en: al menos el 90% de sus cuerdas presentes, menos del 30% idéntico al Inglés (app/lib/message-locales.ts). El nuevo ******************* artículo y /recursos no tienen traducciones todavía. Estaban en los 21 locales, 20 de ellos la página en inglés bajo otro prefijo. - Las páginas de la Colección leen la misma medida en vivo para las colecciones en lugar de la COLLECTION.CONTENT-LOCALES. La copia de la colección swahili tiene ser traducido desde que se escribió esa lista, por lo que 132 páginas reales de swahili estaban señalando su canónico en inglés.

  27. · kamo-internal

    El selectivo de un departamento comprueba los miembros que está mostrando

    El Directorio seleccione por departamento utilizado para cambiar toda la lista en modo selecto sin nada comprobado, y lee "Hecho" hasta que se presione de nuevo. Ahora comprueba a todos los miembros que el departamento es mostrar (la búsqueda y la tira All / Online / Offline deciden quién) y deja ir a cualquiera comprobado fuera de ella. Siempre lee Select, y está deshabilitado solo para ese departamento mientras que la selección es exactamente esas filas; descontrolar una, revisar a alguien en otro lugar, o un filtro que muestra diferente filas lo trae de vuelta. La propia fila del espesor se deja fuera: una charla de grupo o reunión que empiezan a incluirlos de todos modos, y a La reunión les enviaría una invitación de chat a sí misma. Discapacitado con aria-discapacidado para que un usuario de teclado mantenga el foco dentro de la trampa del panel, y atenuado con opacidad porque el color de la etiqueta de .operador es "importante" bajo el viento de cola "importante: true".

  28. · kamo-marketing

    Anuncio de servicio público sobre quién mantiene tarifas de asientos de software

    Nueva página en **************** explicando, para no técnico propietarios, cómo funcionan las plataformas de marca blanca revendida: una licencia de agencia plana, por asiento honorarios que la agencia mantiene, y uso medido facturado en la parte superior. Finales con las preguntas preguntar antes de firmar y cómo se diferencia KamoCRM. Artículo de representación del servidor con Article and BreadcrumbList JSON-LD, su propio OG tarjeta, una calculadora de asientos y CTA para suscripción gratuita, demo, contacto y teléfono. Vincillado del menú y el centro de Recursos, desde el banner del sitio como un PSA al a la izquierda del registro de cambios, y listada en el mapa del sitio.

  29. · kamo-marketing

    Enumera cada página en cada idioma en el que existe, y haz que cada página esté de acuerdo

    /sitemap.xml enumeró cada página una vez, como su URL en inglés. El cambio de 17.843 las entradas no tenían ningún idioma alternativo, y la propia hreflang de cada página nombrada los 21 locales existen o no la página en ellos. - Cada versión en lengua es ahora una versión propia, llevando la página llena, clúmulo de hreflang recíproco y x-default: Forma recomendada de Google, y el que consigue una página localizada encontrada sin esperar a un rascador para seguir un enlace alternativo a ella. - Una versión se lista sólo donde es su propio canónico: SITE-LOCALES para páginas manuscritas, entradas de blogs y páginas de listas de cambios; COLECCION-CONTENT-LOCALES para comparaciones, soluciones, integraciones y la glosario; y para los artículos de KB y entradas de registro de cambios, el KBService local y SecurityService reporta una traducción real para. Un eco de los ingleses no cuenta. Listar una versión que los canónicos al inglés presentan una URL que no se puede indexar. - Los nombres de cada página de la misma versión. localeAlternates () toma el Hay una página en las que existe una página y un lugar fuera de ellos canónicos al inglés sin sin índice. Páginas de Colección en locales sin copia de colección usadas a no seas sin índice mientras que cualquier otra página todavía los nombra como suplentes. - El índice se divide por sección (páginas, colecciones, cada sección KB, páginas de listas de cambios, entradas de registro de cambios), cada archivo con su nuevo último matmod y bien dentro de los límites de 50.000-URL / 50 MB. Los archivos de cambio corren más viejos primero, así que un archivo completo nunca vuelve a cambiar. - Las páginas de listas de Cambiélogo 2..N se enumeran; cada una es su propia canónica. - /sitemap.json es un documento en streaming que contiene cada página y cada uno de los URL de idioma. /api/sitemap sirve el mismo documento. - Una fuente que no se puede leer responde 503 en lugar de un mapa del sitio parcial.

  30. · KBService

    Digamos en qué lugar cada artículo público se traduce realmente

    El sitio de marketing ahora enumera cada versión en idioma de cada el centro de ayuda, la documentación y el artículo de referencia de la API, y cada página de artículo nombra a los otros como sus hreflangs se alternan. Ninguno de los dos podía decir una traducción de un eco: TranslateService respuestas instrucciones para las que no tiene proveedor con la fuente inglesa, por lo que las filas sw y ta repiten el título y el cuerpo en inglés palabra para palabra (medido 2026-09-11). Nombrarlos apuntaría a los motores de búsqueda en páginas que son canónicas de vuelta al inglés. Nodos de árbol y lecturas individuales ahora llevan los locales: los lugares cuyo título o el cuerpo difiere del artículo inglés. El cuerpo por sí solo es suficiente - un árabe fila puede mantener el título en inglés sobre un cuerpo traducido. Computado en una consulta por petición de KbTranslatedLocalesService, que se lee a través de la EntityManager por lo que no se necesita una liberación de biblioteca compartida.

Tu universo está esperando.

Comience gratis en minutos y agregue productos cuando esté listo, sin migración ni nuevos inicios de sesión.

Gratis para siempre: no se requiere tarjeta de crédito