map.create

説明

object map.create(object/array maps)

このメソッドは新しいマップを作成するためのものです。

このメソッドは、すべてのタイプのユーザーが利用できます。メソッドの呼び出し権限は、ユーザーロールの設定で取り消すことができます。詳細はユーザーロールを参照してください。

パラメータ

(object/array) 作成するマップ。

標準のマッププロパティに加えて、このメソッドは以下のパラメータを受け付けます。

パラメータ タイプ 説明
links array マップ上に作成するマップリンク
selements array マップ上に作成するマップ要素
urls array マップ上に作成するマップURL
users array マップ上に作成するマップユーザーの共有。
userGroups array マップ上に作成するマップユーザーグループの共有。
shapes array マップ上に作成するマップシェイプ
lines array マップ上に作成するマップライン

マップリンクを作成するには、マップ要素のselementidに任意の値を設定し、この値をリンクのselementid1またはselementid2プロパティで参照する必要があります。要素が作成されると、この値はZabbixによって生成された正しいIDに置き換えられます。例を参照してください。

戻り値

(object) sysmapidsプロパティの下で作成されたマップのIDを含むオブジェクトを返します。 返されるIDの順序は、渡されたマップの順序と一致します。

空のマップを作成する

要素のないマップを作成します。

リクエスト:

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

レスポンス:

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

ホストマップの作成

2つのホスト要素とそれらの間のリンクを持つマップを作成します。マップリンクオブジェクトでマップ要素を参照するために、一時的な "selementid1" および "selementid2" の値を使用していることに注意してください。

リクエスト:

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

レスポンス:

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

トリガーマップの作成

2つのトリガーを含むトリガー要素でマップを作成します。

リクエスト:

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

レスポンス:

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

マップの共有

2種類の共有(ユーザーとユーザーグループ)でマップを作成します。

リクエスト:

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

レスポンス:

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

マップシェイプ

マップ名のタイトルを持つマップを作成します。

リクエスト:

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

レスポンス:

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

マップライン

マップラインを作成します。

リクエスト:

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

レスポンス:

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

参照

ソース

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