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 per a usuaris de qualsevol mena. 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.
Quan sol·liciten informació relacionada amb l'usuari dels tipus de suport, els usuaris de tipus Admin només poden recuperar dades sobre el seu propi usuari. Per obtindre un exemple, veieu Recuperació de tipus de suports com a Admin.
| Paràmetre | Tipus | Descripció |
|---|---|---|
| mediatypeids | ID/array | Retorna només els tipus de suport. amb els identificadors donats. |
| mediaids | ID/array | Retorna només els tipus de suport emprats pel suport donat. |
| userids | ID/array | Retorna només els tipus de suport emprats pels usuaris donats. |
| selectActions | query | Retorna una propietat actions property amb les accions que empren el tipus de suport. |
| selectMessageTemplates | query | Retorna una propietat message\_templates amb una matriu de missatges de tipus multimèdia.Comportament del paràmetre: - admès per a usuaris de tipus Super admin |
| selectUsers | query | Retorna una propietat users amb els usuaris que empren el tipus de suport.Veieu user.get per les restriccions basades en tipus d'usuari. |
| 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. Accepta 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. No admet les propietats de [tipus de dades](/manual/ api/reference_commentary#data-types) text.Possibles propietats de l'objecte de tipus de suport per als usuaris del tipus Admin i Usuari: mediatypeid, name, type, status, maxattempts. |
| output | query | Propietats de l'objecte de tipus de suport que han de retornar. Els tipus d'usuari Admin i Usuari només poden recuperar les propietats següents: mediatypeid, name, type, status, maxattempts, description. 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 "%...%".Admet només propietats de tipus de dades string i text.Possibles propietats d'objecte de tipus de suport per als usuaris del tipus Admin i Usuari: name, description. |
| countOutput | boolean | Aquests paràmetres es descriuen als comentaris de referència. |
| editable | boolean | |
| excludeSearch | boolean | |
| limit | integer | |
| preservekeys | boolean | |
| 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. L'exemple següent retorna dos tipus de suport:
- tipus de suport correu-e;
- tipus de suport SMS.
{
"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",
"maxsessions": "1",
"maxattempts": "3",
"attempt_interval": "10s",
"message_format": "0",
"script": "",
"timeout": "30s",
"process_tags": "0",
"show_event_menu": "1",
"event_menu_url": "",
"event_menu_name": "",
"description": "",
"provider": "0",
"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",
"maxsessions": "1",
"maxattempts": "3",
"attempt_interval": "10s",
"message_format": "1",
"script": "",
"timeout": "30s",
"process_tags": "0",
"show_event_menu": "1",
"event_menu_url": "",
"event_menu_name": "",
"description": "",
"provider": "0",
"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
}
Recuperar tipus de suport com a Administrador
Com a usuari del tipus Administrador, recupera tots els tipus de suports que siguin actius, amb usuaris que empren aquests tipus de suport. L'exemple següent retorna dos tipus de suports:
- tipus de suport de correu electrònic amb un usuari (només el propi usuari de tipus Admin);
- Tipus de suport SMS sense usuaris.
{
"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",
"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.
{
"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.