map.create

Description

object map.create(object/array maps)

Cette méthode permet de créer de nouvelles cartes.

Cette méthode est disponible pour les utilisateurs de tout type. Les autorisations d’appeler la méthode peuvent être révoquées dans les paramètres du rôle utilisateur. Voir User roles pour plus d’informations.

Paramètres

(object/array) Cartes à créer.

En plus des propriétés de carte standard, la méthode accepte les paramètres suivants.

Paramètre Type Description
links array Liens de carte à créer sur la carte.
selements array Éléments de carte à créer sur la carte.
urls array URL de carte à créer sur la carte.
users array Partages utilisateur de carte à créer sur la carte.
userGroups array Partages de groupes d'utilisateurs de carte à créer sur la carte.
shapes array Formes de carte à créer sur la carte.
lines array Lignes de carte à créer sur la carte.

Pour créer des liens de carte, vous devrez définir selementid d'un élément de carte sur une valeur arbitraire, puis utiliser cette valeur pour référencer cet élément dans les propriétés de lien selementid1 ou selementid2. Lorsque l'élément est créé, cette valeur sera remplacée par l'ID correct généré par Zabbix. Voir l'exemple.

Valeurs retournées

(object) Retourne un objet contenant les identifiants des cartes créées sous la propriété sysmapids. L'ordre des ID retournés correspond à l'ordre des cartes transmises.

Exemples

Créer une carte vide

Créez une carte sans éléments.

Requête:

{
    "jsonrpc": "2.0",
    "method": "map.create",
    "params": {
        "name": "Map",
        "width": 600,
        "height": 600
    },
    "id": 1
}

Réponse :

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

Créer une carte d’hôtes

Créez une carte avec deux éléments d’hôte et un lien entre eux. Notez l’utilisation des valeurs temporaires « selementid1 » et « selementid2 » dans l’objet de lien de carte pour faire référence aux éléments de la carte.

Requête:

{
    "jsonrpc": "2.0",
    "method": "map.create",
    "params": {
        "name": "Host map",
        "width": 600,
        "height": 600,
        "selements": [
            {
                "selementid": "1",
                "elements": [
                    {"hostid": "1033"}
                ],
                "elementtype": 0,
                "iconid_off": "2"
            },

            {
                "selementid": "2",
                "elements": [
                    {"hostid": "1037"}
                ],
                "elementtype": 0,
                "iconid_off": "2"
            }
        ],
        "links": [
            {
                "selementid1": "1",
                "selementid2": "2"
            }
        ]
    },
    "id": 1
}

Réponse :

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

Créer une carte de déclencheurs

Créez une carte avec un élément de déclencheur, qui contient deux déclencheurs.

Requête :

{
    "jsonrpc": "2.0",
    "method": "map.create",
    "params": {
        "name": "Trigger map",
        "width": 600,
        "height": 600,
        "selements": [
            {
                "elements": [
                    {"triggerid": "12345"},
                    {"triggerid": "67890"}
                ],
                "elementtype": 2,
                "iconid_off": "2"
            }
        ]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": {
        "sysmapids": [
            "10"
        ]
    },
    "id": 1
}

Partage de carte

Créez une carte avec deux types de partage (utilisateur et groupe d’utilisateurs).

Requête:

{
    "jsonrpc": "2.0",
    "method": "map.create",
    "params": {
        "name": "Map sharing",
        "width": 600,
        "height": 600,
        "users": [
            {
                "userid": "4",
                "permission": "3"
            }
        ],
        "userGroups": [
            {
                "usrgrpid": "7",
                "permission": "2"
            }
        ]
    },
    "id": 1
}

Réponse :

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

Formes de carte

Créez une carte avec le titre du nom de la carte.

Requête:

{
    "jsonrpc": "2.0",
    "method": "map.create",
    "params": {
        "name": "Host map",
        "width": 600,
        "height": 600,
        "shapes": [
            {
                "type": 0,
                "x": 0,
                "y": 0,
                "width": 600,
                "height": 11,
                "text": "{MAP.NAME}"
            }
        ]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": {
        "sysmapids": [
            "10"
        ]
    },
    "id": 1
}

Lignes de carte

Créez une ligne de carte.

Requête:

{
    "jsonrpc": "2.0",
    "method": "map.create",
    "params": {
        "name": "Map API lines",
        "width": 500,
        "height": 500,
        "lines": [
            {
                "x1": 30,
                "y1": 10,
                "x2": 100,
                "y2": 50,
                "line_type": 1,
                "line_width": 10,
                "line_color": "009900"
            }
        ]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": {
        "sysmapids": [
            "11"
        ]
    },
    "id": 1
}

Voir également

Source

CMap::create() dans ui/include/classes/api/services/CMap.php.