mediatype.create

Beschrijving

object mediatype.create(object/array mediaTypes)

Deze methode maakt het mogelijk om nieuwe mediatypes te creëren.

Deze methode is alleen beschikbaar voor het gebruikerstype Superbeheerder. Machtigingen om de methode aan te roepen kunnen worden ingetrokken in de instellingen van de gebruikersrol. Zien Gebruiker rollen voor meer informatie.

Parameters

(object/array) Mediatypen die moeten worden gemaakt.

Naast de standaard eigenschappen van het mediatype, de methode accepteert de volgende parameters.

Parameter Type Beschrijving
parameters array Webhook-parameters die moeten worden gemaakt voor het mediatype.
message_templates array Berichtsjablonen die moeten worden gemaakt voor het mediatype.

Retourwaarden

(object) Retourneert een object dat de ID's van de gemaakte media bevat typen onder de eigenschap mediatypeids. De volgorde van de geretourneerde ID's komt overeen met de volgorde van de doorgegeven mediatypen.

Voorbeelden

Een e-mailmediatype maken

Maak een nieuw e-mailmediatype met een aangepaste SMTP-poort en bericht Sjablonen.

Verzoek:

{
           "jsonrpc": "2.0",
           "method": "mediatype.create",
           "params": {
               "type": "0",
               "name": "E-mail",
               "smtp_server": "mail.example.com",
               "smtp_helo": "example.com",
               "smtp_email": "[email protected]",
               "smtp_port": "587",
               "content_type": "1",
               "message_templates": [
                   {
                       "eventsource": "0",
                       "recovery": "0",
                       "subject": "Problem: {EVENT.NAME}",
                       "message": "Problem \"{EVENT.NAME}\" on host \"{HOST.NAME}\" started at {EVENT.TIME}."
                   },
                   {
                       "eventsource": "0",
                       "recovery": "1",
                       "subject": "Resolved in {EVENT.DURATION}: {EVENT.NAME}",
                       "message": "Problem \"{EVENT.NAME}\" on host \"{HOST.NAME}\" has been resolved at {EVENT.RECOVERY.TIME} on {EVENT.RECOVERY.DATE}."
                   },
                   {
                       "eventsource": "0",
                       "recovery": "2",
                       "subject": "Updated problem in {EVENT.AGE}: {EVENT.NAME}",
                       "message": "{USER.FULLNAME} {EVENT.UPDATE.ACTION} problem \"{EVENT.NAME}\" on host \"{HOST.NAME}\" at {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}."
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "mediatypeids": [
                   "7"
               ]
           },
           "id": 1
       }

Een scriptmediatype maken

Maak een nieuw scriptmediatype met een aangepaste waarde voor het aantal pogingen en het interval ertussen.

Verzoek:

{
           "jsonrpc": "2.0",
           "method": "mediatype.create",
           "params": {
               "type": "1",
               "name": "Push notifications",
               "exec_path": "push-notification.sh",
               "exec_params": "{ALERT.SENDTO}\n{ALERT.SUBJECT}\n{ALERT.MESSAGE}\n",
               "maxattempts": "5",
               "attempt_interval": "11s"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "mediatypeids": [
                   "8"
               ]
           },
           "id": 1
       }

Een webhook-mediatype maken

Maak een nieuw webhook-mediatype.

Verzoek:

{
           "jsonrpc": "2.0",
           "method": "mediatype.create",
           "params": {
               "type": "4",
               "name": "Webhook",
               "script": "var Webhook = {\r\n    token: null,\r\n    to: null,\r\n    subject: null,\r\n    message: null,\r\n\r\n    sendMessage: function() {\r\n        // some logic\r\n    }\r\n}",
               "parameters": [
                   {
                       "name": "Message",
                       "value": "{ALERT.MESSAGE}"
                   },
                   {
                       "name": "Subject",
                       "value": "{ALERT.SUBJECT}"
                   },
                   {
                       "name": "To",
                       "value": "{ALERT.SENDTO}"
                   },
                   {
                       "name": "Token",
                       "value": "<Token>"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "mediatypeids": [
                   "9"
               ]
           },
           "id": 1
       }

Bron

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