mediatype.get

Apraksts

integer/array mediatype.get(object parameters)

Metode ļauj izgūt mediju tipus atbilstoši norādītajiem parametriem.

Šī metode ir pieejama jebkura tipa lietotājiem (lietotājiem ar User tipu kopš Zabbix 7.0.6). Atļaujas izsaukt šo metodi var atsaukt lietotāju lomu iestatījumos. Plašāku informāciju skatiet sadaļā Lietotāju lomas.

Parametri

(object) Parametri, kas definē vēlamo izvadi.

Metode atbalsta šādus parametrus.

Pieprasot ar lietotājiem saistītu informāciju par mediju tipiem, Admin tipa lietotāji (kopš Zabbix 7.0.4) un User tipa lietotāji (kopš Zabbix 7.0.9) var izgūt tikai datus par savu lietotāju. Piemēru skatiet sadaļā Mediju tipu izgūšana kā Admin.

Parameter Type Description
mediatypeids ID/array Atgriezt tikai mediju tipus ar norādītajiem ID.
mediaids ID/array Atgriezt tikai mediju tipus, ko izmanto norādītais media.
userids ID/array Atgriezt tikai mediju tipus, ko izmanto norādītie lietotāji.
selectActions query Atgriezt actions īpašību ar darbībām, kas izmanto mediju tipu.
selectMessageTemplates query Atgriezt message_templates īpašību ar masīvu, kurā ir mediju tipa ziņojumi.

Parametra darbība:
- supported lietotājiem ar Super admin tipu (kopš Zabbix 7.0.4)
selectUsers query Atgriezt users īpašību ar lietotājiem, kas izmanto mediju tipu.

Skatiet user.get par ierobežojumiem, kas atkarīgi no lietotāja tipa.
sortfield string/array Kārtot rezultātu pēc norādītajām īpašībām.

Iespējamās vērtības: mediatypeid.
filter object Atgriezt tikai tos rezultātus, kas precīzi atbilst norādītajam filtram.

Pieņem objektu, kur atslēgas ir īpašību nosaukumi, bet vērtības ir vai nu viena vērtība, vai vērtību masīvs, ar ko salīdzināt.

Nepieļauj text datu tipa īpašības.

Iespējamās Media type object īpašības Admin tipa lietotājiem (kopš Zabbix 7.0.4) un User tipa lietotājiem (kopš Zabbix 7.0.6): mediatypeid, name, type, status, maxattempts.
output query Atgriežamās Media type object īpašības.

Admin tipa lietotāji (kopš Zabbix 7.0.4) un User tipa lietotāji (kopš Zabbix 7.0.6) var izgūt tikai šādas īpašības: mediatypeid, name, type, status, maxattempts, description. Piemēru skatiet sadaļā Mediju tipu izgūšana kā Admin.

Noklusējums: extend.
search object Atgriezt rezultātus, kas atbilst norādītajam paraugam (nav reģistrjutīgs).

Pieņem objektu, kur atslēgas ir īpašību nosaukumi, bet vērtības ir meklējamās virknes. Ja papildu opcijas nav norādītas, tiks veikta LIKE "%…%" meklēšana.

Atbalsta tikai string un text datu tipa īpašības.

Iespējamās Media type object īpašības Admin tipa lietotājiem (kopš Zabbix 7.0.4) un User tipa lietotājiem (kopš Zabbix 7.0.6): name, description.
countOutput boolean Šie parametri ir aprakstīti atsauces komentārā.
editable boolean
excludeSearch boolean
limit integer
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Atgrieztās vērtības

(integer/array) Atgriež vienu no šīm vērtībām:

  • objektu masīvu;
  • izgūto objektu skaitu, ja ir izmantots parametrs countOutput.

Piemēri

Mediju tipu izgūšana

Izgūst visus konfigurētos mediju tipus. Tālāk redzamais piemērs atgriež divus mediju tipus:

  • e-pasta mediju tips;
  • SMS mediju tips.

Pieprasījums:

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

Atbilde:

{
    "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": "Problēma sākās {EVENT.TIME} {EVENT.DATE}\r\nProblēmas nosaukums: {EVENT.NAME}\r\nHosts: {HOST.NAME}\r\nSmagums: {EVENT.SEVERITY}\r\nOperatīvie dati: {EVENT.OPDATA}\r\nSākotnējās problēmas ID: {EVENT.ID}\r\n{TRIGGER.URL}"
                },
                {
                    "eventsource": "0",
                    "recovery": "1",
                    "subject": "Atrisināts: {EVENT.NAME}",
                    "message": "Problēma tika atrisināta {EVENT.RECOVERY.TIME} {EVENT.RECOVERY.DATE}\r\nProblēmas nosaukums: {EVENT.NAME}\r\nHosts: {HOST.NAME}\r\nSmagums: {EVENT.SEVERITY}\r\n\r\nSākotnējās problēmas ID: {EVENT.ID}\r\n{TRIGGER.URL}"
                },
                {
                    "eventsource": "0",
                    "recovery": "2",
                    "subject": "Atjaunināta problēma: {EVENT.NAME}",
                    "message": "{USER.FULLNAME} {EVENT.UPDATE.ACTION} problēmu {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}.\r\n{EVENT.UPDATE.MESSAGE}\r\n\r\nPašreizējais problēmas statuss ir {EVENT.STATUS}, apstiprināta: {EVENT.ACK.STATUS}."
                },
                {
                    "eventsource": "1",
                    "recovery": "0",
                    "subject": "Atklāšana: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}",
                    "message": "Atklāšanas noteikums: {DISCOVERY.RULE.NAME}\r\n\r\nIerīces IP: {DISCOVERY.DEVICE.IPADDRESS}\r\nIerīces DNS: {DISCOVERY.DEVICE.DNS}\r\nIerīces statuss: {DISCOVERY.DEVICE.STATUS}\r\nIerīces darbības laiks: {DISCOVERY.DEVICE.UPTIME}\r\n\r\nIerīces pakalpojuma nosaukums: {DISCOVERY.SERVICE.NAME}\r\nIerīces pakalpojuma ports: {DISCOVERY.SERVICE.PORT}\r\nIerīces pakalpojuma statuss: {DISCOVERY.SERVICE.STATUS}\r\nIerīces pakalpojuma darbības laiks: {DISCOVERY.SERVICE.UPTIME}"
                },
                {
                    "eventsource": "2",
                    "recovery": "0",
                    "subject": "Automātiska reģistrācija: {HOST.HOST}",
                    "message": "Hosts nosaukums: {HOST.HOST}\r\nHosts IP: {HOST.IP}\r\naģenta ports: {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\nHosts: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                },
                {
                    "eventsource": "0",
                    "recovery": "1",
                    "subject": "",
                    "message": "ATRISINĀTS: {EVENT.NAME}\r\nHosts: {HOST.NAME}\r\n{EVENT.DATE} {EVENT.TIME}"
                },
                {
                    "eventsource": "0",
                    "recovery": "2",
                    "subject": "",
                    "message": "{USER.FULLNAME} {EVENT.UPDATE.ACTION} problēmu {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}"
                },
                {
                    "eventsource": "1",
                    "recovery": "0",
                    "subject": "",
                    "message": "Atklāšana: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}"
                },
                {
                    "eventsource": "2",
                    "recovery": "0",
                    "subject": "",
                    "message": "Automātiska reģistrācija: {HOST.HOST}\r\nHosts IP: {HOST.IP}\r\naģenta ports: {HOST.PORT}"
                }
            ],
            "parameters": []
        }
    ],
    "id": 1
}

Mediju tipu izgūšana kā Admin

Admin tipa lietotājs izgūstiet visus iespējotos mediju tipus kopā ar lietotājiem, kuri izmanto šos mediju tipus. Šis piemērs atgriež divus mediju tipus:

  • e-pasta mediju tipu ar vienu lietotāju (kopš Zabbix 7.0.4 — tikai paša Admin tipa lietotāju);
  • SMS mediju tipu bez lietotājiem.

Pieprasījums:

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

Atbilde:

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

Skripta un webhook paziņojumu nesēju tipu izgūšana

Šajā piemērā tiek atgriezti trīs paziņojumu nesēju tipi:

  • skripta paziņojumu nesēja tips ar parametriem;
  • skripta paziņojumu nesēja tips bez parametriem;
  • webhook paziņojumu nesēja tips ar parametriem.

Pieprasījums:

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

Atbilde:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "mediatypeid": "10",
            "name": "Skripts ar parametriem",
            "parameters": [
                {
                    "sortorder": "0",
                    "value": "{ALERT.SENDTO}"
                },
                {
                    "sortorder": "1",
                    "value": "{EVENT.NAME}"
                },
                {
                    "sortorder": "2",
                    "value": "{ALERT.MESSAGE}"
                },
                {
                    "sortorder": "3",
                    "value": "Zabbix brīdinājums"
                }
            ]
        },
        {
            "mediatypeid": "13",
            "name": "Skripts bez parametriem",
            "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
}

Skatiet arī

Avots

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