int get_fan(int64 cz_index, int64 fan_index) { jrpc_req_pkg_t req_pkg = {}; fill_param(&req_pkg, JRPC_CZ_INDEX, &cz_index, JSON_INTEGER); fill_param(&req_pkg, JRPC_FAN_INDEX, &fan_index, JSON_INTEGER); return send_msg(&req_pkg, GET_FAN); }
int get_psu(int64 pz_index, int64 psu_index) { jrpc_req_pkg_t req_pkg = {}; fill_param(&req_pkg, JRPC_PZ_INDEX, &pz_index, JSON_INTEGER); fill_param(&req_pkg, JRPC_PSU_INDEX, &psu_index, JSON_INTEGER); return send_msg(&req_pkg, GET_PSU); }
int get_drawer(int64 draw_index) { jrpc_req_pkg_t req_pkg = {}; fill_param(&req_pkg, JRPC_DRAWER_INDEX, &draw_index, JSON_INTEGER); return send_msg(&req_pkg, GET_DRAWER); }
int get_tz(int64 cz_index) { jrpc_req_pkg_t req_pkg = {}; fill_param(&req_pkg, JRPC_CZ_INDEX, &cz_index, JSON_INTEGER); return send_msg(&req_pkg, GET_TZ); }
int get_powerzone(int64 pz_index) { jrpc_req_pkg_t req_pkg = {}; fill_param(&req_pkg, JRPC_PZ_INDEX, &pz_index, JSON_INTEGER); return send_msg(&req_pkg, GET_PZ); }
int gami_register_req(gami_reg_t *reg_info) { jrpc_req_pkg_t req_pkg = {}; json_t *cap_array = NULL; json_t *cap = NULL; int i = 0; int rc; int64 ip = reg_info->ip_addr; int64 port = reg_info->port; printf("gami_register, name %s, ip %d, port %d.\n", reg_info->name, reg_info->ip_addr, reg_info->port); fill_param(&req_pkg, JRPC_GAMI_REG_NAME, reg_info->name, JSON_STRING); fill_param(&req_pkg, JRPC_GAMI_REG_IP, &ip, JSON_INTEGER); fill_param(&req_pkg, JRPC_GAMI_REG_PORT, &port, JSON_INTEGER); /*mbp*/ cap_array = json_array(); if (cap_array == NULL) { return -1; } for (i = 0; i < GAMI_MAX_CAP_NUM; i++) { if (strlen((char *)reg_info->capability.cap_mbp[i]) != 0) { cap = NULL; cap = json_object(); if (cap == NULL) { return -1; } add_json_string(cap, JRPC_GAMI_CAP_NAME, (unsigned char *)reg_info->capability.cap_mbp[i]); json_array_add(cap_array, cap); } } fill_param(&req_pkg, JRPC_GAMI_REG_CAP_MBP, cap_array, JSON_ARRAY); /*psu*/ cap_array = json_array(); if (cap_array == NULL) { return -1; } for (i = 0; i < GAMI_MAX_CAP_NUM; i++) { if (strlen((char *)reg_info->capability.cap_psu[i]) != 0) { cap = NULL; cap = json_object(); if (cap == NULL) { return -1; } add_json_string(cap, JRPC_GAMI_CAP_NAME, (unsigned char *)reg_info->capability.cap_psu[i]); json_array_add(cap_array, cap); } } fill_param(&req_pkg, JRPC_GAMI_REG_CAP_PSU, cap_array, JSON_ARRAY); /*fan*/ cap_array = json_array(); if (cap_array == NULL) { return -1; } for (i = 0; i < GAMI_MAX_CAP_NUM; i++) { if (strlen((char *)reg_info->capability.cap_fan[i]) != 0) { cap = NULL; cap = json_object(); if (cap == NULL) { return -1; } add_json_string(cap, JRPC_GAMI_CAP_NAME, (unsigned char *)reg_info->capability.cap_fan[i]); json_array_add(cap_array, cap); } } fill_param(&req_pkg, JRPC_GAMI_REG_CAP_FAN, cap_array, JSON_ARRAY); /*drawer*/ cap_array = json_array(); if (cap_array == NULL) { return -1; } for (i = 0; i < GAMI_MAX_CAP_NUM; i++) { if (strlen((char *)reg_info->capability.cap_drawer[i]) != 0) { cap = NULL; cap = json_object(); if (cap == NULL) { return -1; } add_json_string(cap, JRPC_GAMI_CAP_NAME, (unsigned char *)reg_info->capability.cap_drawer[i]); json_array_add(cap_array, cap); } } fill_param(&req_pkg, JRPC_GAMI_REG_CAP_DRAWER, cap_array, JSON_ARRAY); rc = send_msg_to_registerd(&req_pkg, REG_APP); return rc; }