public int send(Map<String, String> record) {
		
		String[] emails = record.get("email").split("[|]");
		String[] telnos = record.get("telno").split("[|]");
		String[] pernrs = record.get("pernr").split("[|]");
		
		// 获得并设置接收人
		Map<String, String> recieversMap = service.getRecievers(emails, telnos, pernrs);
		telMap = new HashMap<String, String>();
		for (String tel : telnos) {
			telMap.put(tel, tel);
		}
		for (String key : recieversMap.keySet()) {
			telMap.put(recieversMap.get(key), recieversMap.get(key));
		}
		
		// 拼装手机群发号码
		allTelno = new StringBuffer();
		for (String tel : telMap.keySet()) {
			allTelno.append(tel);
			allTelno.append(UnsConsts.MARK_COMMA);
		}
		allTelno.deleteCharAt(allTelno.length() - 1);
		
		Map<String, String> smsSendInfo = service.getSmsSendInfo(record);
		String sn = smsSendInfo.get("sn");
		String orgaddr = smsSendInfo.get("orgaddr");
		String content = smsSendInfo.get("content");
		String telno = allTelno.toString();

		if ("".equals(telno) || telno == null) {
			logger.log(Level.INFO,
					"Telephone can not be empty, message is rejected!");
			return 0;
		}
		
		// switch controller
		if ("N".equals(service.getSwitchOnFlg(record.get("sys")))) {
			logger.log(Level.INFO, ">>> Switch OFF!!!");
			return 0;
		}
		
		try {
			sendMessageOne(sn, orgaddr, telno, content);
		} catch (MalformedURLException e) {
			return 0;
		} catch (IOException e) {
			return 0;
		}

		return 1;
	}