Áú»¢¶Ä²©

§¿§ä§à §á§Ö§â§Ö§Ó§à§Õ §ã§ä§â§Ñ§ß§Ú§è§í §Õ§à§Ü§å§Þ§Ö§ß§ä§Ñ§è§Ú§Ú §ã §Ñ§ß§Ô§Ý§Ú§Û§ã§Ü§à§Ô§à §ñ§Ù§í§Ü§Ñ. §±§à§Þ§à§Ô§Ú§ä§Ö §ß§Ñ§Þ §ã§Õ§Ö§Ý§Ñ§ä§î §Ö§Ô§à §Ý§å§é§ê§Ö.

host.create

§°§á§Ú§ã§Ñ§ß§Ú§Ö

object host.create(§à§Ò§ì§Ö§Ü§ä/§Þ§Ñ§ã§ã§Ú§Ó hosts)

§¿§ä§à§ä §Þ§Ö§ä§à§Õ §á§à§Ù§Ó§à§Ý§ñ§Ö§ä §ã§à§Ù§Õ§Ñ§Ó§Ñ§ä§î §ß§à§Ó§í§Ö §ç§à§ã§ä§í.

§¿§ä§à§ä §Þ§Ö§ä§à§Õ §Õ§à§ã§ä§å§á§Ö§ß §ä§à§Ý§î§Ü§à §á§à§Ý§î§Ù§à§Ó§Ñ§ä§Ö§Ý§ñ§Þ §ã §ä§Ú§á§à§Þ §Õ§à§ã§ä§å§á§Ñ §¡§Õ§Þ§Ú§ß§Ú§ã§ä§â§Ñ§ä§à§â §Ú §³§å§á§Ö§â-§Ñ§Õ§Þ§Ú§ß§Ú§ã§ä§â§Ñ§ä§à§â. §²§Ñ§Ù§â§Ö§ê§Ö§ß§Ú§ñ §ß§Ñ §Ó§í§Ù§à§Ó §Þ§Ö§ä§à§Õ§Ñ §Þ§à§Ø§ß§à §à§ä§à§Ù§Ó§Ñ§ä§î §Ó §ß§Ñ§ã§ä§â§à§Û§Ü§Ñ§ç §â§à§Ý§Ö§Û §á§à§Ý§î§Ù§à§Ó§Ñ§ä§Ö§Ý§ñ. §¥§à§á§à§Ý§ß§Ú§ä§Ö§Ý§î§ß§å§ð §Ú§ß§æ§à§â§Þ§Ñ§è§Ú§ð §ã§Þ. §Ó §â§Ñ§Ù§Õ§Ö§Ý§Ö §²§à§Ý§Ú §á§à§Ý§î§Ù§à§Ó§Ñ§ä§Ö§Ý§Ö§Û.

§±§Ñ§â§Ñ§Þ§Ö§ä§â§í

(object/array) §·§à§ã§ä§í §Õ§Ý§ñ §ã§à§Ù§Õ§Ñ§ß§Ú§ñ.

§£ §Õ§à§á§à§Ý§ß§Ö§ß§Ú§Ö §Ü §ã§ä§Ñ§ß§Õ§Ñ§â§ä§ß§í§Þ §ã§Ó§à§Û§ã§ä§Ó§Ñ§Þ §ç§à§ã§ä§Ñ §Þ§Ö§ä§à§Õ §á§â§Ú§ß§Ú§Þ§Ñ§Ö§ä §ã§Ý§Ö§Õ§å§ð§ë§Ú§Ö §á§Ñ§â§Ñ§Þ§Ö§ä§â§í.

§±§Ñ§â§Ñ§Þ§Ö§ä§â §´§Ú§á §°§á§Ú§ã§Ñ§ß§Ú§Ö
groups
(§à§Ò§ñ§Ù§Ñ§ä§Ö§Ý§î§ß§à)
object/array §·§à§ã§ä §Ô§â§å§á§á§í §Õ§Ý§ñ §Õ§à§Ò§Ñ§Ó§Ý§Ö§ß§Ú§ñ §ç§à§ã§ä§Ñ.

§¤§â§å§á§á§í §ç§à§ã§ä§à§Ó §Õ§à§Ý§Ø§ß§í §Ú§Þ§Ö§ä§î §à§á§â§Ö§Õ§Ö§Ý§Ö§ß§à §ã§Ó§à§Û§ã§ä§Ó§à groupid.
interfaces object/array Interfaces §Õ§Ý§ñ §ç§à§ã§ä§Ñ.
tags object/array §·§à§ã§ä §ä§Ö§Ô§Ú.
templates object/array Templates §Õ§Ý§ñ §ã§Ó§ñ§Ù§Ú §ã §ç§à§ã§ä§à§Þ.

§£ §ê§Ñ§Ò§Ý§à§ß§Ñ§ç §Õ§à§Ý§Ø§ß§à §Ò§í§ä§î §à§á§â§Ö§Õ§Ö§Ý§Ö§ß§à §ã§Ó§à§Û§ã§ä§Ó§à templateid.
macros object/array §±§à§Ý§î§Ù§à§Ó§Ñ§ä§Ö§Ý§î§ã§Ü§Ú§Ö §Þ§Ñ§Ü§â§à§ã§í, §Ü§à§ä§à§â§í§Ö §ß§Ö§à§Ò§ç§à§Õ§Ú§Þ§à §ã§à§Ù§Õ§Ñ§ä§î §Õ§Ý§ñ §ç§à§ã§ä§Ñ.
inventory object §³§Ó§à§Û§ã§ä§Ó§Ñ §ç§à§ã§ä§Ñ inventory.

§£§à§Ù§Ó§â§Ñ§ë§Ñ§Ö§Þ§í§Ö §Ù§ß§Ñ§é§Ö§ß§Ú§ñ

(object) §£§à§Ù§Ó§â§Ñ§ë§Ñ§Ö§ä §à§Ò§ì§Ö§Ü§ä, §ã§à§Õ§Ö§â§Ø§Ñ§ë§Ú§Û §Ú§Õ§Ö§ß§ä§Ú§æ§Ú§Ü§Ñ§ä§à§â§í §ã§à§Ù§Õ§Ñ§ß§ß§í§ç §ç§à§ã§ä§à§Ó §Ó §ã§Ó§à§Û§ã§ä§Ó§Öhostids. §±§à§â§ñ§Õ§à§Ü §Ó§à§Ù§Ó§â§Ñ§ë§Ñ§Ö§Þ§í§ç §Ú§Õ§Ö§ß§ä§Ú§æ§Ú§Ü§Ñ§ä§à§â§à§Ó §ã§à§à§ä§Ó§Ö§ä§ã§ä§Ó§å§Ö§ä §á§à§â§ñ§Õ§Ü§å §á§Ö§â§Ö§Õ§Ñ§ß§ß§í§ç §ç§à§ã§ä§à§Ó.

§±§â§Ú§Þ§Ö§â§í

§³§à§Ù§Õ§Ñ§ß§Ú§Ö §å§Ù§Ý§Ñ §ã§Ö§ä§Ú

§³§à§Ù§Õ§Ñ§Û§ä§Ö §å§Ù§Ö§Ý §ã§Ö§ä§Ú §á§à§Õ §ß§Ñ§Ù§Ó§Ñ§ß§Ú§Ö§Þ "Linux server" §ã IP-§Ú§ß§ä§Ö§â§æ§Ö§Û§ã§à§Þ §Ú §ä§Ö§Ô§Ñ§Þ§Ú, §Õ§à§Ò§Ñ§Ó§î§ä§Ö §Ö§Ô§à §Ó §Ô§â§å§á§á§å, §á§â§Ú§Ó§ñ§Ø§Ú§ä§Ö §Ü §ß§Ö§Þ§å §ê§Ñ§Ò§Ý§à§ß §Ú §Ù§Ñ§Õ§Ñ§Û§ä§Ö MAC-§Ñ§Õ§â§Ö§ã§Ñ §Ó §Ú§ß§Ó§Ö§ß§ä§Ñ§â§ß§í§ç §Õ§Ñ§ß§ß§í§ç §å§Ù§Ý§Ñ §ã§Ö§ä§Ú.

§©§Ñ§á§â§à§ã:

{
           "jsonrpc": "2.0",
           "method": "host.create",
           "params": {
               "host": "Linux server",
               "interfaces": [
                   {
                       "type": 1,
                       "main": 1,
                       "useip": 1,
                       "ip": "192.168.3.1",
                       "dns": "",
                       "port": "10050"
                   }
               ],
               "groups": [
                   {
                       "groupid": "50"
                   }
               ],
               "tags": [
                   {
                       "tag": "Host name",
                       "value": "Linux server"
                   }
               ],
               "templates": [
                   {
                       "templateid": "20045"
                   }
               ],
               "macros": [
                   {
                       "macro": "{$USER_ID}",
                       "value": "123321"
                   },
                   {
                       "macro": "{$USER_LOCATION}",
                       "value": "0:0:0",
                       "description": "latitude, longitude and altitude coordinates"
                   }
               ],
               "inventory_mode": 0,
               "inventory": {
                   "macaddress_a": "01234",
                   "macaddress_b": "56768"
               }
           },
           "id": 1
       }

§°§ä§Ó§Ö§ä:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "107819"
               ]
           },
           "id": 1
       }

§³§à§Ù§Õ§Ñ§ß§Ú§Ö §å§Ù§Ý§Ñ §ã§Ö§ä§Ú §ã §Ú§ß§ä§Ö§â§æ§Ö§Û§ã§à§Þ SNMP

§³§à§Ù§Õ§Ñ§Û§ä§Ö §å§Ù§Ö§Ý §ã§Ö§ä§Ú §á§à§Õ §ß§Ñ§Ù§Ó§Ñ§ß§Ú§Ö§Þ "SNMP host", §å§Ü§Ñ§Ù§Ñ§Ó §Ú§ß§ä§Ö§â§æ§Ö§Û§ã SNMPv3 §Ú §Õ§Ö§ä§Ñ§Ý§î§ß§å§ð §Ú§ß§æ§à§â§Þ§Ñ§è§Ú§ð.

§©§Ñ§á§â§à§ã:

{
           "jsonrpc": "2.0",
           "method": "host.create",
           "params": {
               "host": "SNMP host",
               "interfaces": [
                   {
                       "type": 2,
                       "main": 1,
                       "useip": 1,
                       "ip": "127.0.0.1",
                       "dns": "",
                       "port": "161",
                       "details": {
                           "version": 3,
                           "bulk": 0,
                           "securityname": "mysecurityname",
                           "contextname": "",
                           "securitylevel": 1
                       }
                   }
               ],
               "groups": [
                   {
                       "groupid": "4"
                   }
               ]
           },
           "id": 1
       }

§°§ä§Ó§Ö§ä:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10658"
               ]
           },
           "id": 1
       }

§³§à§Ù§Õ§Ñ§ß§Ú§Ö §å§Ù§Ý§Ñ §ã§Ö§ä§Ú §ã §ê§Ú§æ§â§à§Ó§Ñ§ß§Ú§Ö§Þ PSK

§³§à§Ù§Õ§Ñ§Û§ä§Ö §å§Ù§Ö§Ý §ã§Ö§ä§Ú §á§à§Õ §ß§Ñ§Ù§Ó§Ñ§ß§Ú§Ö§Þ "PSK host" §ã §ß§Ñ§ã§ä§â§à§Û§Ü§Ñ§Þ§Ú §ê§Ú§æ§â§à§Ó§Ñ§ß§Ú§ñ PSK. §µ§é§ä§Ú§ä§Ö, §é§ä§à §Õ§Ý§ñ §å§Ù§Ý§Ñ §ã§Ö§ä§Ú §Õ§à§Ý§Ø§ß§à §Ò§í§ä§î §á§â§Ö§Õ§Ó§Ñ§â§Ú§ä§Ö§Ý§î§ß§à §ß§Ñ§ã§ä§â§à§Ö§ß§à §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö PSK.

§©§Ñ§á§â§à§ã:

{
           "jsonrpc": "2.0",
           "method": "host.create",
           "params": {
               "host": "PSK host",
               "interfaces": [
                   {
                       "type": 1,
                       "ip": "192.168.3.1",
                       "dns": "",
                       "port": "10050",
                       "useip": 1,
                       "main": 1
                   }
               ],
               "groups": [
                   {
                       "groupid": "2"
                   }
               ],
               "tls_accept": 2,
               "tls_connect": 2,
               "tls_psk_identity": "PSK 001",
               "tls_psk": "1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952"
           },
           "id": 1
       }

§°§ä§Ó§Ö§ä:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10590"
               ]
           },
           "id": 1
       }

Creating a host monitored by a proxy

Create a host that will be monitored by proxy with ID "1".

Request:

{
           "jsonrpc": "2.0",
           "method": "host.create",
           "params": {
               "host": "Host monitored by proxy",
               "groups": [
                   {
                       "groupid": "2"
                   }
               ],
               "monitored_by": 1,
               "proxyid": 1
           },
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10591"
               ]
           },
           "id": 1
       }

Creating a host monitored by a proxy group

Create a host that will be monitored by proxy group with ID "1".

Request:

{
           "jsonrpc": "2.0",
           "method": "host.create",
           "params": {
               "host": "Host monitored by proxy group",
               "groups": [
                   {
                       "groupid": "2"
                   }
               ],
               "monitored_by": 2,
               "proxy_groupid": 1
           },
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10592"
               ]
           },
           "id": 1
       }

§³§Þ§à§ä§â§Ú§ä§Ö §ä§Ñ§Ü§Ø§Ö

§ª§ã§ä§à§é§ß§Ú§Ü

CHost::create() §Ó ui/include/classes/api/services/CHost.php.