#!/bin/bash # query_type - (Day | Month | Year) for querying data. START="2022-02-08 00:00:00" STOP="2022-02-08 23:59:59" export TOKEN="$(jq -r .result_data.token login.response)" export USERID="$(jq -r .result_data.user_id login.response)" export EMAIL="$(jq -r .result_data.email login.response)" export APPKEY="$(jq -r .appkey login.post)" export PSID="$(jq --tab '.result_data.pageList[0].ps_id' getPsList.response)" export START_TIMESTAMP="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%Y%m%d%H%M00')" export END_TIMESTAMP="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%Y%m%d%H%M00')" export START_EPOCH="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%s000')" export END_EPOCH="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%s000')" export START_DATE="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%Y-%m-%d')" export END_DATE="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%Y-%m-%d')" export START_TIME="$(date -j -f '%Y-%m-%d %H:%M:%S' "${START}" +'%H:%M:%S')" export END_TIME="$(date -j -f '%Y-%m-%d %H:%M:%S' "${STOP}" +'%H:%M:%S')" export SERIAL_NO="B2192301528" # SERIAL_NO="A2192703899" # Inverter sn export PS_KEY="1129147_11_0_0" export TASK_ID="$2" export USER_AGENT="$(cat user_agent.data)" (cat<<EOF { "user_id": "${USERID}", "valid_flag": "1,3", "lang": "_en_US", "token": "${TOKEN}", "appkey": "${APPKEY}", "sys_code": "200" } EOF ) > default.json export JSON="$(jq -r . default.json)" API="$1" export POSTFILE="${API}.post" export RESPONSEFILE="${API}.response" shift case ${API} in 'login') URL="foo" ;; 'getPowerDevicePointNames') URL="/v1/reportService/getPowerDevicePointNames" # DEVICE_TYPE = 1, 3, 4, 5, 7, 11, 14, 17 export DEVICE_TYPE="$1" if [ "${DEVICE_TYPE}" == "" ]; then DEVICE_TYPE="1"; fi RESPONSEFILE="${API}-${DEVICE_TYPE}.response" JSON="$(jq -r '. += {"device_type": env.DEVICE_TYPE}' default.json)" ;; # getTemplateList -> queryUserCurveTemplateData -> getPsList -> queryMutiPointDataList 'queryMutiPointDataList') URL="/v1/commonService/queryMutiPointDataList" export POINTS="$2" if [ "${POINTS}" == "" ]; then POINTS="p83033,p83022"; fi # p13116,p13199,p13174,p13028,p13173,p13147,p13112,p13122,p83002,p83032,p83011,p83549,p83072,p83119,p83097,p83102,p83033,p83022,p83006 export PS_KEY="$3" if [ "${PS_KEY}" == "" ]; then PS_KEY="1129147_11_0_0,1129147_11_0_0"; fi # 1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_14_1_1,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0,1129147_11_0_0 export MINUTE_INTERVAL="5" export START_TIMESTAMP="${1}000000" export END_TIMESTAMP="${1}235900" RESPONSEFILE="${API}-${1}.response" JSON="$(jq -r '. += {"start_time_stamp": env.START_TIMESTAMP, "end_time_stamp": env.END_TIMESTAMP, "ps_key": env.PS_KEY, "points": env.POINTS, "minute_interval": env.MINUTE_INTERVAL}' default.json)" ;; 'getHouseholdStoragePsReport') URL="/v1/powerStationService/getHouseholdStoragePsReport" # Day export DATE_TYPE="1"; export DATE_ID="20220208" # Month #export DATE_TYPE="2"; export DATE_ID="202202" # Year #export DATE_TYPE="3"; export DATE_ID="2022" # Total #export DATE_TYPE="3"; export DATE_ID="2022" export DATE_TYPE="$1" export DATE_ID="$2" if [ "${DATE_TYPE}" == "" ]; then DATE_TYPE="1"; fi if [ "${DATE_ID}" == "" ]; then DATE_ID="$(date +'%Y%m%d')"; fi RESPONSEFILE="${API}-${DATE_ID}.response" JSON="$(jq -r '. += {"ps_id": env.PSID, "date_type": env.DATE_TYPE, "date_id": env.DATE_ID}' default.json)" ;; ################################################################################ 'getAPIServiceInfo') URL="/v1/commonService/getAPIServiceInfo" ;; 'getAccessedPermission') URL="/v1/commonService/getAccessedPermission" ;; 'getAllDeviceByPsId') URL="/v1/devService/getAllDeviceByPsId" ;; 'getAllPowerDeviceSetName') URL="/v1/devService/getAllPowerDeviceSetName" JSON="$(jq -r '.sys_code = "900"' default.json)" ;; 'getAllPowerRobotViewInfoByPsId') URL="/v1/devService/getAllPowerRobotViewInfoByPsId" ;; 'getAllPsIdByOrgIds') URL="/v1/devService/getAllPsIdByOrgIds" ;; 'getPsReport') URL="/v1/reportService/getPsReport" ;; 'getPsDetail') URL="/v1/powerStationService/getPsDetail" ;; 'getPsDetailForSinglePage') URL="/v1/powerStationService/getPsDetailForSinglePage" ;; 'getPsHealthState') URL="/v1/powerStationService/getPsHealthState" ;; 'getPowerStationData') URL="/v1/powerStationService/getPowerStationData" ;; 'getPowerStationBasicInfo') URL="/v1/powerStationService/getPowerStationBasicInfo" ;; 'getPowerStationInfo') URL="/v1/powerStationService/getPowerStationInfo" ;; 'getPowerStationPR') URL="/v1/powerStationService/getPowerStationPR" ;; 'getPsListStaticData') URL="/v1/powerStationService/getPsListStaticData" ;; 'getReportData') URL="/v1/powerStationService/getReportData" ;; 'getReportExportColumns') URL="/v1/reportService/getReportExportColumns" ;; 'getBoxData') URL="/v1/devService/getBoxData" ;; 'getPowerTrendDayData') URL="/v1/powerStationService/getPowerTrendDayData" JSON="$(jq -r '. += {"beginTime": env.START_TIME, "endTime": env.END_TIME, "ps_id": env.PSID}' default.json)" ;; 'getPowerTrendMonthData') URL="/v1/powerStationService/getPowerTrendMonthData" ;; 'getPowerTrendYearData') URL="/v1/powerStationService/getPowerTrendYearData" ;; ################################################################################ # Invalid data. 'getDataFromHBase') URL="/v1/commonService/getDataFromHBase" export TABLE_NAME="inverter" export PRIMARY_KEY="inverter" export POINT_IDS="81012" JSON="$(jq -r '. += {"table": env.TABLE_NAME, "primaryKey": env.PRIMARY_KEY, "pointIds": env.POINT_IDS, "datetime": env.START_TIMESTAMP}' default.json)" ;; # Invalid args. 'getDataFromHbaseByRowKey') URL="/v1/commonService/getDataFromHbaseByRowKey" export TABLE_NAME="inverter" export ROW_KEY_LIST="inverter" export FAMILY_NAME="Hellstrom" export COLUMN="2" JSON="$(jq -r '. += {"table_name": env.TABLE_NAME, "row_key_list": env.ROW_KEY_LIST, "family_name": env.FAMILY_NAME, "column": env.COLUMN}' default.json)" ;; # Unknown args. 'getListMiFromHBase') URL="/v1/commonService/getListMiFromHBase" export TABLE_NAME="inverter" export PRIMARY_KEY="inverter" JSON="$(jq -r '. += {"table": env.TABLE_NAME, "primaryKey": env.PRIMARY_KEY}' default.json)" ;; # Invalid data 'getMapMiFromHBase') URL="/v1/commonService/getMapMiFromHBase" export TABLE_NAME="inverter" JSON="$(jq -r '. += {"tableName": env.TABLE_NAME, "ps_key": env.PS_KEY, "beginTime": env.START_TIME, "endTime": env.END_TIME}' default.json)" ;; # Invalid data 'getValFromHBase') URL="/v1/commonService/getValFromHBase" export TABLE_NAME="inverter" export ROWKEY="inverter" JSON="$(jq -r '. += {"table": env.TABLE_NAME, "rowkey": env.ROWKEY}' default.json)" ;; # Error 'getStationInfoSql') URL="/v1/devService/getStationInfoSql" ;; # Uses ps_key from 'devicePointsDataFromMySql') URL="/v1/devService/devicePointsDataFromMySql" JSON="$(jq -r '. += {"ps_key": env.PS_KEY}' default.json)" ;; # OK 'getPListinfoFromMysql') URL="/v1/powerStationService/getPListinfoFromMysql" JSON="$(jq -r '. += {"psIds": env.PSID}' default.json)" ;; # Error 'getPowerStationTableDataSql') URL="/v1/devService/getPowerStationTableDataSql" ;; # Error 'getPowerStationTableDataSqlCount') URL="/v1/devService/getPowerStationTableDataSqlCount" ;; # OK 'getPListinfoFromMysql') URL="/v1/powerStationService/getPListinfoFromMysql" ;; # Unknown args. 'getTableDataSql') URL="/v1/devService/getTableDataSql" ;; # Unknown args. 'getTableDataSqlCount') URL="/v1/devService/getTableDataSqlCount" ;; ################################################################################ 'getPowerDeviceSetTaskDetailList') URL="/v1/devService/getPowerDeviceSetTaskDetailList" export QUERY_TYPE="1" if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi #JSON="$(jq -r '. += {"ps_key": env.PS_KEY, "data_point": env.DATA_POINT, "data_type": env.DATA_TYPE, "query_type": env.QUERY_TYPE, "start_time": env.START_TIME, "end_time": env.END_TIME}' default.json)" JSON="$(jq -r '. += {"query_type": env.QUERY_TYPE, "task_id": env.TASK_ID}' default.json)" ;; 'getPowerDeviceSetTaskList') URL="/v1/devService/getPowerDeviceSetTaskList" export SIZE="256" export CURRENT_PAGE="$1" if [ "${CURRENT_PAGE}" == "" ]; then CURRENT_PAGE="1"; fi JSON="$(jq -r '. += {"size": env.SIZE, "curPage": env.CURRENT_PAGE}' default.json)" ;; 'getPsDataSupplementTaskList') URL="/v1/powerStationService/getPsDataSupplementTaskList" export SIZE="256" export CURRENT_PAGE="$1" if [ "${CURRENT_PAGE}" == "" ]; then CURRENT_PAGE="1"; fi JSON="$(jq -r '. += {"size": env.SIZE, "curPage": env.CURRENT_PAGE}' default.json)" ;; 'getRemoteUpgradeSubTasksList') URL="/v1/devService/getRemoteUpgradeSubTasksList" ;; 'getRemoteUpgradeTaskList') URL="/v1/devService/getRemoteUpgradeTaskList" ;; 'getModuleLogTaskList') URL="/integrationService/getModuleLogTaskList" #export SIZE="256" #export CURRENT_PAGE="$1" #if [ "${CURRENT_PAGE}" == "" ]; then CURRENT_PAGE="1"; fi # JSON="$(jq -r '. += {"curPage": env.CURRENT_PAGE}' default.json)" ;; # Error 'getSerialNum') URL="/v1/devService/getSerialNum" ;; # Error 'getPsCurveInfo') URL="/v1/devService/getPsCurveInfo" ;; 'getLoadCurveList') URL="/v1/reportService/getLoadCurveList" JSON="$(jq -r '. += {"ps_id": env.PSID, "monthDate": env.START_DATE}' default.json)" ;; 'getPsKpiForHoursByPsId') URL="/v1/powerStationService/getPsKpiForHoursByPsId" export DAY="1" JSON="$(jq -r '. += {"ps_id": env.PSID, "day": env.DAY}' default.json)" ;; 'getDevicePointMinuteDataList') URL="/v1/commonService/getDevicePointMinuteDataList" export POINTS="$1" if [ "${POINTS}" == "" ]; then POINTS="288"; fi JSON="$(jq -r '. += {"start_time_stamp": env.START_TIMESTAMP, "end_time_stamp": env.END_TIMESTAMP, "ps_key": env.PS_KEY, "points": env.POINTS}' default.json)" ;; 'getUpTimePoint') URL="/v1/devService/getUpTimePoint" ;; 'getDevicePoints') URL="/v1/devService/getDevicePoints" export POINT_ID="$1" if [ "${POINT_ID}" == "" ]; then POINT_ID="13003"; fi RESPONSEFILE="${API}-${POINT_ID}.response" JSON="$(jq -r '. += {"point_id": env.POINT_ID}' default.json)" ;; 'getApiCallsForAppkeys') URL="/v1/commonService/getApiCallsForAppkeys" ;; 'getAuthKey') URL="/v1/powerStationService/getAuthKey" ;; 'getPsAuthKey') URL="/v1/powerStationService/getPsAuthKey" JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)" ;; # OK 'getPowerStatistics') URL="/v1/powerStationService/getPowerStatistics" JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)" ;; # OK 'getPsList') URL="/v1/powerStationService/getPsList" ;; # OK 'createAppkeyInfo') URL="/v1/userService/createAppkeyInfo" export APP_KEY_NAME="MickMake" JSON="$(jq -r '. += {"appkey_name": env.APP_KEY_NAME, "user_account": env.USERID}' default.json)" ;; # OK 'exportPlantReportPDF') URL="/v1/powerStationService/exportPlantReportPDF" JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)" ;; # OK 'findPsType') URL="/v1/powerStationService/findPsType" JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)" ;; # Error 'findInfoByuuid') URL="/v1/devService/findInfoByuuid" export UUID="$1" if [ "${UUID}" == "" ]; then UUID="844775"; fi JSON="$(jq -r '. += {"uuid": env.UUID}' default.json)" ;; # OK 'findCurrentTask') URL="/v1/faultService/findCurrentTask" if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi JSON="$(jq -r '. += {"taskId": env.TASK_ID}' default.json)" ;; 'executeTask') URL="/v1/faultService/executeTask" ;; # OK 'queryBatchCreatePsTaskList') URL="/v1/powerStationService/queryBatchCreatePsTaskList" ;; # OK 'queryAllPsIdAndName') URL="/v1/powerStationService/queryAllPsIdAndName" ;; # Error 'queryCtrlTaskById') URL="/v1/devService/queryCtrlTaskById" ;; # UUID and TASK_ID from getPowerDeviceSetTaskList OR getPowerDeviceSetTaskDetailList 'queryParamSettingTask') URL="/v1/devService/queryParamSettingTask" export QUERY_TYPE="1" export UUID="844775" if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi JSON="$(jq -r '. += {"query_type": env.QUERY_TYPE, "task_id": env.TASK_ID, "uuid": env.UUID}' default.json)" ;; # Requires task_id from getModuleLogTaskList 'exportParamSettingValPDF') if [ "${TASK_ID}" == "" ]; then TASK_ID="1566045"; fi URL="/v1/devService/exportParamSettingValPDF" JSON="$(jq -r '. += {"task_id": env.TASK_ID}' default.json)" ;; # OK 'energyTrend') URL="/v1/powerStationService/energyTrend" ;; # OK 'communicationModuleDetail') URL="/v1/devService/communicationModuleDetail" JSON="$(jq -r '. += {"sn": env.SERIAL_NO}' default.json)" ;; # Error 'checkUnitStatus') URL="/v1/devService/checkUnitStatus" ;; 'saveEnvironmentCurve') URL="/v1/devService/saveEnvironmentCurve" ;; ################################################################################ 'updateTemplate') URL="/v1/devService/updateDataCurveTemplate" ;; 'getTemplateList') URL="/v1/devService/getTemplateList" ;; 'getTemplateByInfoType') URL="/v1/messageService/getTemplateByInfoType" export INFO_TYPE="1" # Power Station Income Monthly Report-Mail Template export INFO_TYPE="2" # Power Plant Revenue Annual Report-Mail Template export INFO_TYPE="3" # Power station revenue report - email template export INFO_TYPE="4" # Household Energy Storage Monthly Report-Mail Template export INFO_TYPE="5" # Household Energy Storage Annual Report-Mail Template export INFO_TYPE="6" # Household energy storage general report-mail template JSON="$(jq -r '. += {"info_type": env.INFO_TYPE}' default.json)" ;; # OK - template_id from getTemplateList 'queryUserCurveTemplateData') URL="/v1/devService/queryUserCurveTemplateData" export TEMPLATE_ID="7981" # JSON="$(jq -r '. += {"template_id": env.TEMPLATE_ID, "start_time": env.START_TIMESTAMP, "end_time": env.END_TIMESTAMP}' default.json)" export SELECT_DATE="2022-02-08 00:00~2022-02-08 23:59" export START_DATE="2022-02-08" export START_DATE="2022-02-08 00:00" export START_TIME="00:00" export START_TIME="20220208000000" export STOP_DATE="2022-02-08" export STOP_DATE="2022-02-08 23:59" export STOP_TIME="23:59" export STOP_TIME="20220208235959" JSON="$(jq -r '. += {"template_id": env.TEMPLATE_ID, "view_select_date": env.SELECT_DATE}' default.json)" JSON="$(echo "${JSON}" | jq -r '. += {"start_time_stamp": env.STARTT, "start_time": env.START_TIME, "begin_time": env.START_TIME, "startTime": env.START_TIME}')" JSON="$(echo "${JSON}" | jq -r '. += {"end_time_stamp": env.STOPT, "end_time": env.STOP_TIME, "endTime": env.STOP_TIME, "endtime": env.STOP_TIME}')" JSON="$(echo "${JSON}" | jq -r '. += {"start_date": env.START_DATE, "startDate": env.START_DATE, "startdate": env.START_DATE}')" JSON="$(echo "${JSON}" | jq -r '. += {"end_date": env.STOP_DATE, "endDate": env.STOP_DATE, "enddate": env.STOP_DATE, "date_type": "2"}')" ;; ################################################################################ # Possible hourly data. 'psHourPointsValue') URL="/v1/powerStationService/psHourPointsValue" JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)" ;; 'powerDevicePointList') URL="/v1/reportService/powerDevicePointList" ;; 'queryDevicePointMinuteDataList') URL="/v1/commonService/queryDevicePointMinuteDataList" export POINTS="$1" if [ "${POINTS}" == "" ]; then POINTS="13150"; fi JSON="$(jq -r '. += {"start_time_stamp": env.START_TIMESTAMP, "end_time_stamp": env.END_TIMESTAMP, "ps_key": env.PS_KEY, "points": env.POINTS}' default.json)" ;; 'queryDevicePointsDayMonthYearDataList') URL="/v1/commonService/queryDevicePointsDayMonthYearDataList" export DATA_POINT="81012" export DATA_TYPE="17" export QUERY_TYPE="1" JSON="$(jq -r '. += {"ps_key": env.PS_KEY, "data_point": env.DATA_POINT, "data_type": env.DATA_TYPE, "query_type": env.QUERY_TYPE, "start_time": env.START_TIME, "end_time": env.END_TIME}' default.json)" ;; 'queryUnitList') URL="/v1/userService/queryUnitList" ;; 'showPSView') URL="/v1/powerStationService/showPSView" JSON="$(jq -r '. += {"ps_id": env.PSID}' default.json)" ;; *) echo "Unknown API endpoint..." grep "')$" get.sh exit ;; esac echo "${JSON}" | jq -r > ${POSTFILE} curl -X POST -H 'Content-Type: application/json' -A "${USER_AGENT}" --stderr error.log \ --data-binary "@${POSTFILE}" \ https://augateway.isolarcloud.com${URL} | tee ${RESPONSEFILE}