mediatype.get

Descripció

integer/array mediatype.get(object parameters)

El mètode permet recuperar tipus de suport segons els paràmetres proveïts.

Aquest mètode és disponible només per a usuaris de tipus Admin i Super admin. Els permisos per cridar al mètode es poden revocar a les configuracions de rols d'usuari. Per a més informació, veieu Rols d'usuari.

Paràmetres

(object) Paràmetres que defineixen la sortida esperada.

El mètode admet els paràmetres següents.

Paràmetre Tipus Descripció
mediatypeids string/array Retorna només els tipus de suport amb els identificadors donats.
mediaids string/array Retorna només els tipus de suport emprats pel suport donat.
userids string/array Retorna només els tipus de suport emprats pels usuaris donats.
selectMessageTemplates query Retorna una propietat message_templates amb una matriu de missatges de tipus multimèdia.
selectUsers query Retorna una propietat usuaris amb els usuaris que empren el tipus de suport.
sortfield string/array Ordena el resultat per les propietats donades.

Els valors possibles són: mediatypeid.
filter object Retorna només aquells resultats que coincideixen exactament amb el filtre donat.

Admet un objecte, on les claus són noms de propietats i els valors són un valor únic o una matriu de valors per fer coincidir.

Propietats admeses per als usuaris del tipus Super admin: totes les propietats de Media type object, excepte les propietats de text tipus de dades.

Propietats admeses per als usuaris del tipus Admin (des de Zabbix 6.4.19): mediatypeid, name, type, status, maxattempts .
output query Media type object propietats que s'han de tornar.

Des de Zabbix 6.4.19, els usuaris de tipus Admin només poden recuperar els següents Objecte de tipus de suport propietats: mediatypeid, name, type, status, maxattempts. Per obtindre un exemple, veieu Recuperació de tipus de suports com a Admin.

Per defecte: extend.
search object Retorna resultats que coincideixen amb el patró donat (no distingeix entre majúscules i minúscules).

Accepta un objecte, on les claus són noms de propietat i els valors són cadenes per cercar. Si no es donen opcions addicionals, es farà una cerca LIKE "%...%".

Propietats admeses per als usuaris del tipus Super admin: tots els objecte de tipus de suport propietats de string i text tipus de dades.

Propietats admeses per als usuaris de tipus Admin (des de Zabbix 6.4. 19): nom, descripció.
countOutput boolean Aquests paràmetres, comuns a tots els mètodes get, es descriuen als comentaris de referència.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valors de retorn

(integer/array) Retorna un d'entre:

  • una taula d'objectes;
  • el recompte d'objectes recuperats, si s'empra el paràmetre countOutput.

Exemples

Recuperar tipus de suport

Recupera tots els tipus de suport configurats.

Petició:

{
           "jsonrpc": "2.0",
           "method": "mediatype.get",
           "params": {
               "output": "extend",
               "selectMessageTemplates": "extend"
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "mediatypeid": "1",
                   "type": "0",
                   "name": "Email",
                   "smtp_server": "mail.example.com",
                   "smtp_helo": "example.com",
                   "smtp_email": "[email protected]",
                   "exec_path": "",
                   "gsm_modem": "",
                   "username": "",
                   "passwd": "",
                   "status": "0",
                   "smtp_port": "25",
                   "smtp_security": "0",
                   "smtp_verify_peer": "0",
                   "smtp_verify_host": "0",
                   "smtp_authentication": "0",
                   "exec_params": "",
                   "maxsessions": "1",
                   "maxattempts": "3",
                   "attempt_interval": "10s",
                   "content_type": "0",
                   "script": "",
                   "timeout": "30s",
                   "process_tags": "0",
                   "show_event_menu": "1",
                   "event_menu_url": "",
                   "event_menu_name": "",
                   "description": "",
                   "message_templates": [
                       {
                           "eventsource": "0",
                           "recovery": "0",
                           "subject": "Problem: {EVENT.NAME}",
                           "message": "Problem started at {EVENT.TIME} on {EVENT.DATE}\r\nProblem name: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\nSeverity: {EVENT.SEVERITY}\r\nOperational data: {EVENT.OPDATA}\r\nOriginal problem ID: {EVENT.ID}\r\n{TRIGGER.URL}"
                       },
                       {
                           "eventsource": "0",
                           "recovery": "1",
                           "subject": "Resolved: {EVENT.NAME}",
                           "message": "Problem has been resolved at {EVENT.RECOVERY.TIME} on {EVENT.RECOVERY.DATE}\r\nProblem name: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\nSeverity: {EVENT.SEVERITY}\r\n\r\nOriginal problem ID: {EVENT.ID}\r\n{TRIGGER.URL}"
                       },
                       {
                           "eventsource": "0",
                           "recovery": "2",
                           "subject": "Updated problem: {EVENT.NAME}",
                           "message": "{USER.FULLNAME} {EVENT.UPDATE.ACTION} problem at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}.\r\n{EVENT.UPDATE.MESSAGE}\r\n\r\nCurrent problem status is {EVENT.STATUS}, acknowledged: {EVENT.ACK.STATUS}."
                       },
                       {
                           "eventsource": "1",
                           "recovery": "0",
                           "subject": "Discovery: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}",
                           "message": "Discovery rule: {DISCOVERY.RULE.NAME}\r\n\r\nDevice IP: {DISCOVERY.DEVICE.IPADDRESS}\r\nDevice DNS: {DISCOVERY.DEVICE.DNS}\r\nDevice status: {DISCOVERY.DEVICE.STATUS}\r\nDevice uptime: {DISCOVERY.DEVICE.UPTIME}\r\n\r\nDevice service name: {DISCOVERY.SERVICE.NAME}\r\nDevice service port: {DISCOVERY.SERVICE.PORT}\r\nDevice service status: {DISCOVERY.SERVICE.STATUS}\r\nDevice service uptime: {DISCOVERY.SERVICE.UPTIME}"
                       },
                       {
                           "eventsource": "2",
                           "recovery": "0",
                           "subject": "Autoregistration: {HOST.HOST}",
                           "message": "Host name: {HOST.HOST}\r\nHost IP: {HOST.IP}\r\nAgent port: {HOST.PORT}"
                       }
                   ],
                   "parameters": []
               },
               {
                   "mediatypeid": "3",
                   "type": "2",
                   "name": "SMS",
                   "smtp_server": "",
                   "smtp_helo": "",
                   "smtp_email": "",
                   "exec_path": "",
                   "gsm_modem": "/dev/ttyS0",
                   "username": "",
                   "passwd": "",
                   "status": "0",
                   "smtp_port": "25",
                   "smtp_security": "0",
                   "smtp_verify_peer": "0",
                   "smtp_verify_host": "0",
                   "smtp_authentication": "0",
                   "exec_params": "",
                   "maxsessions": "1",
                   "maxattempts": "3",
                   "attempt_interval": "10s",
                   "content_type": "1",
                   "script": "",
                   "timeout": "30s",
                   "process_tags": "0",
                   "show_event_menu": "1",
                   "event_menu_url": "",
                   "event_menu_name": "",
                   "description": "",
                   "message_templates": [
                       {
                           "eventsource": "0",
                           "recovery": "0",
                           "subject": "",
                           "message": "{EVENT.SEVERITY}: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                       },
                       {
                           "eventsource": "0",
                           "recovery": "1",
                           "subject": "",
                           "message": "RESOLVED: {EVENT.NAME}\r\nHost: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                       },
                       {
                           "eventsource": "0",
                           "recovery": "2",
                           "subject": "",
                           "message": "{USER.FULLNAME} {EVENT.UPDATE.ACTION} problem at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}"
                       },
                       {
                           "eventsource": "1",
                           "recovery": "0",
                           "subject": "",
                           "message": "Discovery: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}"
                       },
                       {
                           "eventsource": "2",
                           "recovery": "0",
                           "subject": "",
                           "message": "Autoregistration: {HOST.HOST}\r\nHost IP: {HOST.IP}\r\nAgent port: {HOST.PORT}"
                       }
                   ],
                   "parameters": []
               }
           ],
           "id": 1
       }

Recuperant tipus de suport com a Administrador

Com a usuari del tipus Administrador, recupera tots els tipus de suport que són actius, amb usuaris que empren aquests tipus de suport. L'exemple següent retorna dos tipus de suport:

  • tipus de suport de correu electrònic amb un usuari (des de Zabbix 6.4.19, només l'usuari de tipus Admin);
  • Tipus de suport SMS sense usuaris.

Petició:

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

Resposta:

{
           "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
       }

Recupera tipus de suport script i webhook

L'exemple següent retorna tres tipus de suport:

  • tipus de suport script amb paràmetres;
  • tipus de suport script sense paràmetres;
  • tipus de suport webhook amb paràmetres.

Petició:

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

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "mediatypeid": "10",
                   "name": "Script amb paràmetres",
                   "parameters": [
                       {
                           "sortorder": "0",
                           "value": "{ALERT.SENDTO}"
                       },
                       {
                           "sortorder": "1",
                           "value": "{EVENT.NAME}"
                       },
                       {
                           "sortorder": "2",
                           "value": "{ALERT.MESSAGE}"
                       },
                       {
                           "sortorder": "3",
                           "value": "Alerta de Zabbix"
                       }
                   ]
               },
               {
                   "mediatypeid": "13",
                   "name": "Script sense paràmetres",
                   "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
       }

Veieu també

Font

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