Esta es una traducción de la página de documentación original en español. Ayúdanos a mejorarla.

mediatype.get

Descripción

integer/array mediatype.get(object parameters)

El método permite recuperar tipos de medios según los parámetros indicados.

Este método está disponible para usuarios de cualquier tipo. Los permisos para llamar al método se pueden revocar en la configuración de roles de usuario. Consulte Roles de usuario para obtener más información.

Parámetros

(object) Parámetros que definen la salida deseada.

El método admite los siguientes parámetros.

Desde Zabbix 7.0.4, al solicitar información relacionada con el usuario sobre los tipos de medios, los usuarios de tipo Admin pueden recuperar solo datos sobre su propio usuario. Para ver un ejemplo, consulte Recuperación de tipos de medios como Admin.

Parámetro Tipo Descripción
mediatypeids ID/matriz Devuelve solo los tipos de medios con los ID indicados.
mediaids ID/matriz Devuelve solo los tipos de medios utilizados por el medio indicado.
userids ID/matriz Devuelve solo los tipos de medios utilizados por los usuarios indicados.
selectActions query Devuelve una propiedad actions con las acciones que utilizan el tipo de medio.
selectMessageTemplates query Devuelve una propiedad message_templates con una matriz de mensajes de tipo de medio.

Comportamiento de los parámetros:
- compatible para usuarios de tipo Superadministrador (desde Zabbix 7.0.4)
selectUsers query Devuelve una propiedad users con los usuarios que utilizan el tipo de medio.
sortfield cadena/matriz Ordenar el resultado por las propiedades dadas.

Valores posibles: mediatypeid.
filter objeto Devolver solo aquellos resultados que coincidan exactamente con el filtro dado.

Acepta un objeto, donde las claves son nombres de propiedades y los valores son un valor único o una matriz de valores con los que comparar.

Propiedades admitidas para usuarios de tipo Superadministrador: todas las propiedades de objeto de tipo multimedia, excepto las propiedades de tipo de datos text.

Propiedades admitidas para usuarios de tipo Administrador (desde Zabbix 7.0.4): mediatypeid, name, type, status, maxattempts.
output query Propiedades de objeto de tipo de medio que se devolverán.

Desde Zabbix 7.0.4, los usuarios de tipo Admin pueden recuperar únicamente las siguientes propiedades de objeto de tipo de medio: mediatypeid, name, type, status, maxattempts. Para ver un ejemplo, consulte Recuperación de tipos de medios como Admin.

Valor predeterminado: extend.
search objeto Devuelve resultados que coinciden con el patrón indicado (sin distinguir entre mayúsculas y minúsculas).

Acepta un objeto, donde las claves son nombres de propiedades y los valores son cadenas para buscar. Si no se proporcionan opciones adicionales, se realizará una búsqueda LIKE "%…%".

Propiedades admitidas para usuarios de tipo Superadministrador: todas las propiedades de objeto de tipo de medio de tipo de datos string y text.

Propiedades admitidas para usuarios de tipo Administrador (desde Zabbix 7.0.4): name, description.
countOutput booleano Estos parámetros, que son comunes para todos los métodos get, se describen en detalle en el comentario de referencia.
editable booleano
excludeSearch booleano
limit entero
preservekeys booleano
searchByAny booleano
searchWildcardsEnabled booleano
sortorder cadena/matriz
startSearch booleano

Valores de retorno

(entero/matriz) Devuelve:

  • una matriz de objetos;
  • el recuento de objetos recuperados, si el parámetro countOutput ha sido usado.

Ejemplos

Recuperando tipos de medios

Recupere todos los tipos de medios configurados. El siguiente ejemplo devuelve dos tipos de medios:

  • tipo de medio de correo electrónico;
  • Tipo de medio SMS.

Solicitud:

{
           "jsonrpc": "2.0",
           "método": "mediatype.get",
           "parámetros": {
               "salida": "extender",
               "selectMessageTemplates": "extender"
           },
           "identificación": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "resultado": [
               {
                   "mediatypeid": "1",
                   "tipo": "0",
                   "nombre Correo Electronico",
                   "smtp_server": "correo.ejemplo.com",
                   "smtp_helo": "ejemplo.com",
                   "smtp_email": "[email protected]",
                   "exec_path": "",
                   "gsm_modem": "",
                   "nombre de usuario": "",
                   "contraseña": "",
                   "estado": "0",
                   "smtp_port": "25",
                   "smtp_security": "0",
                   "smtp_verify_peer": "0",
                   "smtp_verify_host": "0",
                   "smtp_authentication": "0",
                   "maxsesiones": "1",
                   "maxintentos": "3",
                   "attempt_interval": "10s",
                   "message_format": "0",
                   "guion": "",
                   "tiempo de espera": "30s",
                   "etiquetas_proceso": "0",
                   "show_event_menu": "1",
                   "event_menu_url": "",
                   "event_menu_name": "",
                   "descripción": "",
                   "plantillas_mensajes": [
                       {
                           "fuente de eventos": "0",
                           "recuperación": "0",
                           "subject": "Problema: {EVENT.NAME}",
                           "message": "El problema comenzó a las {EVENT.TIME} el {EVENT.DATE}\r\nNombre del problema: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\nSeveridad: {EVENT.SEVERITY} \r\nDatos operativos: {EVENT.OPDATA}\r\nID del problema original: {EVENT.ID}\r\n{TRIGGER.URL}"
                       },
                       {
                           "fuente de eventos": "0",
                           "recuperación": "1",
                           "asunto": "Resuelto: {EVENT.NAME}",
                           "message": "El problema se resolvió a las {EVENT.RECOVERY.TIME} el {EVENT.RECOVERY.DATE}\r\nNombre del problema: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\nSeveridad : {EVENT.SEVERITY}\r\n\r\nID del problema original: {EVENT.ID}\r\n{TRIGGER.URL}"
                       },
                       {
                           "fuente de eventos": "0",
                           "recuperación": "2",
                           "subject": "Problema actualizado: {EVENT.NAME}",
                           "message": "Problema de {USER.FULLNAME} {EVENT.UPDATE.ACTION} en {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}.\r\n{EVENT.UPDATE.MESSAGE}\r\n\ r\nEl estado del problema actual es {EVENT.STATUS}, confirmado: {EVENT.ACK.STATUS}."
                       },
                       {
                           "fuente de eventos": "1",
                           "recuperación": "0",
                           "subject": "Descubrimiento: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}",
                           "message": "Regla de descubrimiento: {DISCOVERY.RULE.NAME}\r\n\r\nIP del dispositivo: {DISCOVERY.DEVICE.IPADDRESS}\r\nDNS del dispositivo: {DISCOVERY.DEVICE.DNS}\r\nEstado del dispositivo : {DISCOVERY.DEVICE.STATUS}\r\nTiempo de actividad del dispositivo: {DISCOVERY.DEVICE.UPTIME}\r\n\r\nNombre del servicio del dispositivo: {DISCOVERY.SERVICE.NAME}\r\nPuerto del servicio del dispositivo: {DISCOVERY.SERVICE .PORT}\r\nEstado del servicio del dispositivo: {DISCOVERY.SERVICE.STATUS}\r\nTiempo de actividad del servicio del dispositivo: {DISCOVERY.SERVICE.UPTIME}"
                       },
                       {
                           "fuente de eventos": "2",
                           "recuperación": "0",
                           "subject": "Registro automático: {HOST.HOST}",
                           "message": "Nombre de host: {HOST.HOST}\r\nIP de host: {HOST.IP}\r\nPuerto de agente: {HOST.PORT}"
                       }
                   ],
                   "parámetros": []
               },
               {
                   "mediatypeid": "3",
                   "tipo 2",
                   "nombre": "SMS",
                   "servidor SMTP": "",
                   "smtp_helo": "",
                   "smtp_email": "",
                   "exec_path": "",
                   "gsm_modem": "/dev/ttyS0",
                   "nombre de usuario": "",
                   "contraseña": "",
                   "estado": "0",
                   "smtp_port": "25",
                   "smtp_security": "0",
                   "smtp_verify_peer": "0",
                   "smtp_verify_host": "0",
                   "smtp_authentication": "0",
                   "maxsesiones": "1",
                   "maxintentos": "3",
                   "attempt_interval": "10s",
                   "message_format": "1",
                   "guion": "",
                   "tiempo de espera": "30s",
                   "etiquetas_proceso": "0",
                   "show_event_menu": "1",
                   "event_menu_url": "",
                   "event_menu_name": "",
                   "descripción": "",
                   "plantillas_mensajes": [
                       {
                           "fuente de eventos": "0",
                           "recuperación": "0",
                           "sujeto": "",
                           "mensaje": "{EVENT.SEVERITY}: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                       },
                       {
                           "fuente de eventos": "0",
                           "recuperación": "1",
                           "sujeto": "",
                           "message": "RESUELTO: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                       },
                       {
                           "fuente de eventos": "0",
                           "recuperación": "2",
                           "sujeto": "",
                           "message": "Problema de {USER.FULLNAME} {EVENT.UPDATE.ACTION} en {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}"
                       },
                       {
                           "fuente de eventos": "1",
                           "recuperación": "0",
                           "sujeto": "",
                           "mensaje": "Descubrimiento: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}"
                       },
                       {
                           "fuente de eventos": "2",
                           "recuperación": "0",
                           "sujeto": "",
                           "message": "Registro automático: {HOST.HOST}\r\nIP del host: {HOST.IP}\r\nPuerto del agente: {HOST.PORT}"
                       }
                   ],
                   "parámetros": []
               }
           ],
           "identificación": 1
       }

Retrieving media types as Admin

As an Admin type user, retrieve all media types that are enabled, with users that use these media types. The following example returns two media types:

  • email media type with one user (only Admin type user's own user);
  • SMS media type with no users.

Request:

{
           "jsonrpc": "2.0",
           "method": "mediatype.get",
           "params": {
               "output": "extend",
               "filter": {
                   "status": 0
               },
               "selectUsers": "extend"
           },
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "mediatypeid": "1",
                   "type": "0",
                   "name": "Email",
                   "status": "0",
                   "description": "",
                   "maxattempts": "3",
                   "users": [
                       {
                           "userid": "3",
                           "username": "database-admin",
                           "name": "John",
                           "surname": "Doe",
                           "url": "",
                           "autologin": "0",
                           "autologout": "0",
                           "lang": "default",
                           "refresh": "30s",
                           "theme": "default",
                           "attempt_failed": "0",
                           "attempt_ip": "",
                           "attempt_clock": "0",
                           "rows_per_page": "50",
                           "timezone": "default",
                           "roleid": "2",
                           "userdirectoryid": "0",
                           "ts_provisioned": "0"
                       }
                   ]
               },
               {
                   "mediatypeid": "3",
                   "type": "2",
                   "name": "SMS",
                   "status": "0",
                   "description": "",
                   "maxattempts": "3",
                   "users": []
               }
           ],
           "id": 1
       }

Recuperar tipos de medios de script y webhook

El siguiente ejemplo devuelve tres tipos de medios:

  • tipo de medio script con parámetros;
  • tipo de medio script sin parámetros;
  • tipo de medio de webhook con parámetros.

Solicitud:

{
           "jsonrpc": "2.0",
           "method": "mediatype.get",
           "params": {
               "output": ["mediatypeid", "name", "parameters"],
               "filter": {
                   "type": [1, 4]
               }
           },
           "id": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "mediatypeid": "10",
                   "name": "Script with parameters",
                   "parameters": [
                       {
                           "sortorder": "0",
                           "value": "{ALERT.SENDTO}"
                       },
                       {
                           "sortorder": "1",
                           "value": "{EVENT.NAME}"
                       },
                       {
                           "sortorder": "2",
                           "value": "{ALERT.MESSAGE}"
                       },
                       {
                           "sortorder": "3",
                           "value": "Zabbix alert"
                       }
                   ]
               },
               {
                   "mediatypeid": "13",
                   "name": "Script without parameters",
                   "parameters": []
               },
               {
                   "mediatypeid": "11",
                   "name": "Webhook",
                   "parameters": [
                       {
                           "name": "alert_message",
                           "value": "{ALERT.MESSAGE}"
                       },
                       {
                           "name": "event_update_message",
                           "value": "{EVENT.UPDATE.MESSAGE}"
                       },
                       {
                           "name": "host_name",
                           "value": "{HOST.NAME}"
                       },
                       {
                           "name": "trigger_description",
                           "value": "{TRIGGER.DESCRIPTION}"
                       },
                       {
                           "name": "trigger_id",
                           "value": "{TRIGGER.ID}"
                       },
                       {
                           "name": "alert_source",
                           "value": "Zabbix"
                       }
                   ]
               }
           ],
           "id": 1
       }

Ver también

Fuente

CMediaType::get() en ui/include/classes/api/services/CMediaType.php.