All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.xiaoleilu.ucloud.umon.UMon Maven / Gradle / Ivy

package com.xiaoleilu.ucloud.umon;

import java.util.Arrays;
import java.util.Collection;

import org.slf4j.Logger;

import com.xiaoleilu.hutool.Log;
import com.xiaoleilu.hutool.StrUtil;
import com.xiaoleilu.hutool.Validator;
import com.xiaoleilu.ucloud.core.Param;
import com.xiaoleilu.ucloud.core.Response;
import com.xiaoleilu.ucloud.core.UcloudApiClient;
import com.xiaoleilu.ucloud.util.Config;

/**
 * 云监控
 * @author Looly
 *
 */
public class UMon {
	private final static Logger log = Log.get();
	
	private final UcloudApiClient client;
	
	// --------------------------------------------------------------- Constructor start
	public UMon() {
		this.client = new UcloudApiClient();
	}
	public UMon(Config config) {
		this.client = new UcloudApiClient(config);
	}
	// --------------------------------------------------------------- Constructor end
	
	/**
	 * 发送短信
* 1. 短信内容无论字母,汉字,中英文标点符号,均按照1个字符计算,内容长度不能多于600字。
* 2. 增加内容:超过70字的短信,按照每条65字收取费用。
* @param content 短信内容 * @param phoneNumbers 短信列表 * @return 响应内容 */ public Response sendSms(String content, Collection phoneNumbers){ Param param = Param.create() .set(UMonName.Content, content); int i = 0; for (String phoneNumber : phoneNumbers) { if(StrUtil.isNotBlank(phoneNumber) && Validator.isMobile(phoneNumber)) { param.set("Phone." + i, phoneNumber); i++; }else { log.warn("{} is not phone number!", phoneNumber); } } return client.get(UMonAction.SendSms, param); } /** * 发送短信
* 1. 短信内容无论字母,汉字,中英文标点符号,均按照1个字符计算,内容长度不能多于600字。
* 2. 增加内容:超过70字的短信,按照每条65字收取费用。
* @param content 短信内容 * @param phoneNumbers 短信列表 * @return 响应内容 */ public Response sendSms(String content, String... phoneNumbers){ return sendSms(content, Arrays.asList(phoneNumbers)); } /** * 获取监控数据 * @param param 参数 * @return 结果 */ public Response getMetric(Param param) { return client.get(UMonAction.GetMetric, param); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy