> For the complete documentation index, see [llms.txt](https://docs.realmjoin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.realmjoin.com/es/automatizacion/runbooks/runbook-report-settings.md).

# Configuración de informe de runbook

## Descripción general

Varios runbooks de RealmJoin incluyen capacidades de generación de informes automatizada para entregar informes, notificaciones y alertas directamente a los administradores. Según la configuración, los informes pueden ser:

* **enviarse por correo electrónico** — usando la API de Microsoft Graph en nombre de una dirección de remitente configurada
* **cargarse en un Azure Storage Account** — y ponerse a disposición como un enlace de descarga SAS con tiempo limitado

Compatibilizar ambos canales de entrega es el estándar previsto para todos los runbooks de informes de ahora en adelante. Es posible que todavía no todos los runbooks de informes admitan ambos canales, pero el conjunto de runbooks compatibles crece continuamente. Ambos canales pueden habilitarse de forma independiente o en combinación.

Todos los ajustes compartidos se configuran una sola vez en el [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) y se aplican automáticamente a todos los runbooks que usan la característica correspondiente. Los ajustes que difieren por runbook (como el nombre del contenedor de destino) no forman parte de esta configuración central y se establecen directamente en el runbook correspondiente.

Las funciones que consumen estos ajustes — [`Send-RjRbReportEmail`](/es/dev-reference/report-functions/send-rjrbreportemail.md) y [`Publish-RjRbFilesToStorageContainer`](/es/dev-reference/report-functions/publish-rjrbfilestostoragecontainer.md) — se proporcionan mediante el **RealmJoin.RunbookHelper** módulo de PowerShell. Consulte [Funciones de informe](/es/dev-reference/report-functions.md) para obtener documentación detallada de uso.

## Entrega por correo electrónico

### Requisitos previos

Recomendamos usar un buzón compartido dedicado, como `realmjoin-report@contoso.com`. Este buzón se utilizará como dirección de remitente para todos los informes. Puede usar una dirección sin respuesta, ya que no se espera que los destinatarios respondan a informes automatizados.

### Configuración

Como se describe en detalle en la [Personalización basada en JSON](https://docs.realmjoin.com/automation/runbooks/runbook-customization#json-based-customizing) documentación, vaya a [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) en el Portal de RealmJoin (Settings > Runbook Customizations).

En el `Ajustes` bloque, agregue o modifique la `RJReport` sección para incluir la `EmailSender` propiedad con la dirección de correo electrónico del remitente que desee:

```json
{
    "Settings": {
        "RJReport": {
            "EmailSender": "realmjoin-report@contoso.com"
        }
    }
}
```

Reemplace `realmjoin-report@contoso.com` con la dirección real de su buzón compartido.

### Información de contacto del Service Desk (opcional)

Esta configuración central solo proporciona los valores unificados del Service Desk para todos los runbooks. Que la información de contacto se incluya realmente en un correo de notificación lo determina el propio runbook correspondiente; solo los runbooks que implementan los parámetros correspondientes del Service Desk (p. ej., `ServiceDeskDisplayName`, `ServiceDeskPortalUrl`) leen estos valores y los representan en sus correos electrónicos.

Para proporcionar la información de contacto del Service Desk para estos runbooks, agregue las siguientes propiedades al `RJReport` sección:

```json
{
    "Settings": {
        "RJReport": {
            "EmailSender": "realmjoin-report@contoso.com",
            "ServiceDesk_DisplayName": "IT Service Desk",
            "ServiceDesk_EMail": "servicedesk@domain.com",
            "ServiceDesk_Phone": "+49123456789",
            "ServiceDesk_PortalUrl": "https://servicedesk.domain.com"
        }
    }
}
```

**Parámetros:**

* `ServiceDesk_DisplayName` — Nombre para mostrar de su Service Desk (p. ej., "IT Support", "Help Desk")
* `ServiceDesk_EMail` — Dirección de correo electrónico del Service Desk (se muestra como un `mailto:` enlace)
* `ServiceDesk_Phone` — Número de teléfono del Service Desk en formato internacional (se muestra como un enlace `tel:` enlace)
* `ServiceDesk_PortalUrl` — URL de su portal o sitio web del Service Desk (se muestra como un enlace en el que se puede hacer clic)

Todos los parámetros son opcionales. Si se configuran, aparecerán en el pie de página del correo electrónico como enlaces en los que se puede hacer clic.

> **Nota:** Algunos runbooks además aceptan un enlace de ticket por ejecución (p. ej., `ServiceDeskTicketUrl`) para hacer referencia al ticket específico que desencadenó la solicitud. Este es un parámetro del runbook, no forma parte de esta configuración central.

### Branding de correo electrónico (opcional)

Los correos electrónicos de informe pueden llevar una personalización específica del tenant: los gráficos predeterminados de encabezado y pie de página de RealmJoin pueden reemplazarse por sus propias imágenes, la imagen del pie de página puede enlazar con un destino personalizado — por ejemplo, su intranet o portal de TI — y los colores de la plantilla pueden ajustarse a su diseño corporativo.

Para configurar el branding, agregue una `Branding` subsección al `RJReport` bloque (anidado como `StorageAccount`):

```json
{
    "Settings": {
        "RJReport": {
            "Branding": {
                "HeaderImageUrl": "https://cdn.contoso.com/branding/email-header.png",
                "FooterImageUrl": "https://cdn.contoso.com/branding/email-footer.png",
                "FooterLink": "https://intranet.contoso.com",
                "AccentColor": "#0052cc",
                "TextColor": "#1a1a2e"
            }
        }
    }
}
```

**Parámetros:**

| Ajuste           | Requerido | Valor predeterminado                   | Descripción                                                                                                                                            |
| ---------------- | --------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `HeaderImageUrl` | no        | gráfico del encabezado de RealmJoin    | URL HTTPS pública de una imagen personalizada de encabezado que reemplaza el gráfico de encabezado predeterminado de RealmJoin                         |
| `FooterImageUrl` | no        | gráfico del pie de página de RealmJoin | URL HTTPS pública de una imagen personalizada de pie de página que reemplaza el gráfico de pie de página predeterminado de RealmJoin                   |
| `FooterLink`     | no        | `https://www.realmjoin.com`            | URL a la que enlaza la imagen del pie de página                                                                                                        |
| `AccentColor`    | no        | `#f8842c` (naranja de RealmJoin)       | Color de acento de la plantilla de correo electrónico: filas de encabezado de tabla, botones de acción, bordes de acento de los cuadros de información |
| `TextColor`      | no        | `#011e33` (azul marino de RealmJoin)   | Color principal del texto de la plantilla de correo electrónico: texto del cuerpo, encabezados, elementos de lista, código                             |

**Requisitos de imagen:**

* La imagen debe ser accesible a través de una **URL HTTPS pública** — por ejemplo, un contenedor de Azure Blob Storage con acceso de lectura anónimo, una CDN o el sitio web de la empresa. También funciona una URL que contenga un SAS Token y mantiene privado el contenedor.
* Formatos admitidos: **PNG, JPEG o GIF**. El formato se detecta a partir de la firma del archivo, no de la extensión del archivo.
* Las imágenes se representan a **750 px de ancho**. Las dimensiones recomendadas son **750×200 px** (que coinciden con los banners predeterminados) o **1500×400 px** para pantallas de alta densidad de píxeles.
* Máximo **200 KB** por imagen; **100 KB o menos** se recomienda. Las imágenes de branding comparten el límite total de tamaño del correo electrónico de \~4 MB con los archivos adjuntos del informe (a modo de comparación, los gráficos predeterminados de RealmJoin son 52 KB y 15 KB).

**Requisitos de color:**

* Los valores deben ser colores hexadecimales de 6 dígitos, incluido el prefijo `#` — por ejemplo `#0052cc`. Las formas abreviadas (`#05c`) y los nombres de colores (`rojo`) no son compatibles.
* Tanto los correos electrónicos como sus archivos adjuntos se leen en modo claro **y** modo oscuro: elija un color de texto que siga siendo legible sobre una tarjeta de contenido blanca y un color de acento con suficiente contraste frente al texto blanco de los botones.
* Los colores de estado (verde/rojo/ámbar para los estados de éxito, error y advertencia) y los grises neutros no son configurables deliberadamente — tienen un significado que no debe cambiar por tenant.

Las imágenes se descargan y validan por el runbook en cada ejecución. Si un ajuste se deja vacío, se utilizan el gráfico, el color y el enlace de pie de página predeterminados de RealmJoin. Si falla una descarga, una imagen no es válida o un color no es un valor hexadecimal válido, se registra una advertencia y se usa en su lugar el valor predeterminado correspondiente — una configuración de branding defectuosa nunca impide que se envíe un correo electrónico de informe.

Todos los ajustes son opcionales y surten efecto para todos los runbooks que envían correos electrónicos de informe.

> **Nota:** Los ajustes de color requieren **RealmJoin.RunbookHelper 0.8.9** o una versión posterior en la Automation Account. Con versiones anteriores del módulo, los ajustes de imagen siguen aplicándose y los colores se ignoran.

## Entrega a Storage Account

Los runbooks de informes que admiten este canal de entrega pueden cargar su salida en un contenedor de Azure Blob Storage. Tras una carga correcta, el runbook devuelve un enlace SAS con tiempo limitado que puede usarse para descargar el archivo directamente. Este canal puede usarse de forma independiente o además de la entrega por correo electrónico.

### Requisitos previos

Se requiere una Azure Storage Account existente. La identidad administrada de la Automation Account (o el principal de servicio usado por los runbooks) necesita al menos **Storage Blob Data Contributor** permisos en la Storage Account o en su grupo de recursos.

### Configuración

Vaya a [RealmJoin Runbook Customization](https://portal.realmjoin.com/settings/runbooks-customizations) y agregue un `StorageAccount` subsección al `RJReport` bloque:

```json
{
    "Settings": {
        "RJReport": {
            "StorageAccount": {
                "ResourceGroup": "rg-reports",
                "StorageAccountName": "stcontosoreports",
                "LinkExpiryDays": 6
            }
        }
    }
}
```

**Parámetros:**

| Ajuste               | Requerido | Valor predeterminado | Descripción                                                        |
| -------------------- | --------- | -------------------- | ------------------------------------------------------------------ |
| `ResourceGroup`      | sí        | —                    | Grupo de recursos que contiene la Storage Account                  |
| `StorageAccountName` | sí        | —                    | Nombre de la Azure Storage Account                                 |
| `LinkExpiryDays`     | no        | `6`                  | Número de días hasta que expire el enlace de descarga SAS generado |

> **Nota:** Los ajustes específicos de un runbook individual — como el nombre del contenedor de destino o un nombre de blob personalizado — se configuran directamente en ese runbook y, deliberadamente, no forman parte de esta configuración central. Lo mismo se aplica al prefijo del nombre del blob: si un prefijo de marca de tiempo (`yyyyMMdd-HHmmss`) se antepone al nombre del blob para evitar sobrescrituras lo controla el `AddBlobNamePrefix` parámetro de [`Publish-RjRbFilesToStorageContainer`](/es/dev-reference/report-functions/publish-rjrbfilestostoragecontainer.md) (valor predeterminado `$false`), que cada runbook pasa explícitamente.

## Ejemplo combinado

El siguiente fragmento muestra una `RJReport` configuración completa con todas las funciones habilitadas:

```json
{
    "Settings": {
        "RJReport": {
            "EmailSender": "realmjoin-report@contoso.com",
            "ServiceDesk_DisplayName": "IT Service Desk",
            "ServiceDesk_EMail": "servicedesk@domain.com",
            "ServiceDesk_Phone": "+49123456789",
            "ServiceDesk_PortalUrl": "https://servicedesk.domain.com",
            "Branding": {
                "HeaderImageUrl": "https://cdn.contoso.com/branding/email-header.png",
                "FooterImageUrl": "https://cdn.contoso.com/branding/email-footer.png",
                "FooterLink": "https://intranet.contoso.com",
                "AccentColor": "#0052cc",
                "TextColor": "#1a1a2e"
            },
            "StorageAccount": {
                "ResourceGroup": "rg-reports",
                "StorageAccountName": "stcontosoreports",
                "LinkExpiryDays": 6
            }
        }
    }
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.realmjoin.com/es/automatizacion/runbooks/runbook-report-settings.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
