본문 바로가기
API사용

CoolSms (문자 보내기api) 사용 방법

by 미눅스[멘토] 2023. 6. 24.
728x90

 

세상에서 가장 안정적이고 빠른 메시지 발송 플랫폼 - 쿨에스엠에스 (coolsms.co.kr)

 

세상에서 가장 안정적이고 빠른 메시지 발송 플랫폼 - 쿨에스엠에스

손쉬운 결제 전용계좌, 신용카드, 계좌이체 등 국내 결제 뿐만 아니라 해용신용카드로 한번의 카드번호 등록으로 자동충전까지 지원합니다. 전용계좌, 신용카드, 계좌이체 등 다양한 결제 방식

coolsms.co.kr

 

 

CoolSMS 가입 및 로그인

 

 

가입후 200원줌 이걸로 테스트 몇번 돌릴 수 있음

 

API KEY 및 API SIGNATURE발급 받기

 

1. coolsms에서 회원가입을 하고 사용하기 위한 api_key와 api_secret을 발급

2. 그 다음 REST-API SDK JAVA를 다운

 

java-sdk-2.2-http-cv52.zip
0.06MB

 

다운 받은 파일을 라이브러리에 추가

 

 

 

3. example에 예제 코드를 다운받아 사용

https://developer.coolsms.co.kr/SDK_Java_Examples_ko

 

 

 

밑에 코드 복붙 후 본인 api key & secret작성

		String api_key = ""; // Api 키
	    String api_secret = ""; // Api secret
	    Message coolsms = new Message(api_key, api_secret);
	    // 4 params(to, from, type, text) are mandatory. must be filled
	    HashMap<String, String> params = new HashMap<String, String>();
	    params.put("to", "0101234****"); 	// 수신 번호 (받는사람 번호)
	    params.put("from", "0107442****");	// 발신번호  (보내는 사람 번호)
	    params.put("type", "SMS");
	    params.put("text", "신청하신 빈자리 알람 발송(-야캠-) : 자리가 나왔습니다 서둘러 예약하세요!!");
	    params.put("app_version", "test app 1.2"); // application name and version
	    try {
	    	//메세지 전송
	    	JSONObject obj = (JSONObject) coolsms.send(params);
	      	//보내진 이후에 해야할 행위들 작성
	    	System.out.println(obj.toString());
	    } catch (CoolsmsException e) {
	    	System.out.println(e.getMessage());
	    	System.out.println(e.getCode());
	    }

 

실행 후 확인

 

 

 


나의 실제 사용 코드

package kr.or.ddit.alarm.dao;

import java.util.HashMap;
import java.util.List;

import javax.annotation.processing.SupportedSourceVersion;

import org.apache.ibatis.session.SqlSession;
import org.json.simple.JSONObject;

import kr.or.ddit.alarm.vo.AlarmVO;
import kr.or.ddit.basic.util.MyBatisSqlSessionFactory;
import kr.or.ddit.member.vo.MemberVO;
import net.nurigo.java_sdk.api.Message;
import net.nurigo.java_sdk.exceptions.CoolsmsException;
public class AlarmDAOImpl implements IAlamDAO{
	
	
	public static void main(String[] args) {
//		String api_key = ""; // Api 키
//	    String api_secret = ""; // Api secret
//	    Message coolsms = new Message(api_key, api_secret);
//	    // 4 params(to, from, type, text) are mandatory. must be filled
//	    HashMap<String, String> params = new HashMap<String, String>();
//	    params.put("to", "01074423311"); 	// 수신 번호 (받는사람 번호)
//	    params.put("from", "01074423311");	// 발신번호  (보내는 사람 번호)
//	    params.put("type", "SMS");
//	    params.put("text", "어서 예약하세요");
//	    params.put("app_version", "test app 1.2"); // application name and version
//	    try {
//	    	//메세지 전송
//	    	JSONObject obj = (JSONObject) coolsms.send(params);
//	      	//보내진 이후에 해야할 행위들 작성
//	    	System.out.println(obj.toString());s
//	    } catch (CoolsmsException e) {
//	    	System.out.println(e.getMessage());
//	    	System.out.println(e.getCode());
//	    }
		
		AlarmDAOImpl impl = new AlarmDAOImpl();
		AlarmVO vo = new AlarmVO();
//		vo.setMem_id("asd");
//		vo.setZone_no("1");
//		vo.setCamp_no("A001");
//		System.out.println(impl.insertAlarm(vo));
//		System.out.println(impl.deleteAlarm("1"));
//		System.out.println(impl.selecrAlarm("asd"));
//		impl.sendAlarm(null);
	}

	private static IAlamDAO dao;
	
	public static IAlamDAO getinstace() {
		return dao=new AlarmDAOImpl();
	};
	
	private AlarmDAOImpl() {
		// TODO Auto-generated constructor stub
	}
	
	
	
	
	@Override
	public int insertAlarm(AlarmVO vo) {
		int cnt = 0;
		SqlSession session = MyBatisSqlSessionFactory.getSqlSession();
		
		try {
			cnt = session.insert("alarm.insertAlarm",vo);
			
			if(cnt>0)session.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			session.close();
		}
		
		return cnt;
	}

	@Override
	public void sendAlarm(MemberVO vo) {
		System.out.println(vo);
		String api_key = ""; // Api 키
	    String api_secret = ""; // Api secret
	    Message coolsms = new Message(api_key, api_secret);
	    // 4 params(to, from, type, text) are mandatory. must be filled
	    HashMap<String, String> params = new HashMap<String, String>();
	    params.put("to", vo.getMem_tel()); 	// 수신 번호 (받는사람 번호)
	    params.put("from", "01074423311");	// 발신번호  (보내는 사람 번호)
	    params.put("type", "SMS");
	    params.put("text", "신청하신 빈자리 알람 발송(-야캠-) : 자리가 나왔습니다 서둘러 예약하세요!!");
	    params.put("app_version", "test app 1.2"); // application name and version
	    try {
	    	//메세지 전송
	    	JSONObject obj = (JSONObject) coolsms.send(params);
	      	//보내진 이후에 해야할 행위들 작성
	    	System.out.println(obj.toString());
	    } catch (CoolsmsException e) {
	    	System.out.println(e.getMessage());
	    	System.out.println(e.getCode());
	    }
	}

	@Override
	public int deleteAlarm(String memId) {
		int cnt = 0;
		SqlSession session = MyBatisSqlSessionFactory.getSqlSession();
		
		try {
			cnt = session.delete("alarm.deleteAlarm",memId);
			
			if(cnt>0)session.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			session.close();
		}
		
		return cnt;
	}

	@Override
	public List<AlarmVO> selecrAlarm(String memId) {
		List<AlarmVO> list = null;
		SqlSession session = MyBatisSqlSessionFactory.getSqlSession();
		
		try {
			list = session.selectList("alarm.selecrAlarm",memId);
			
			
			if (session != null) {
				session.commit();
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			session.close();
		}
		
		return list;
	}

	@Override
	public List<AlarmVO> userAlarm(String zoneNo) {
		List<AlarmVO> list = null;
		SqlSession session = MyBatisSqlSessionFactory.getSqlSession();
		
		try {
			list = session.selectList("alarm.userAlarm",zoneNo);
			
			
			if (session != null) {
				session.commit();
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally {
			session.close();
		}
		
		return list;
	}
}

'API사용' 카테고리의 다른 글

Chart.Js(라이브러리) 사용 방법  (0) 2023.06.21
NaverMap (지도api) 사용방법  (0) 2023.06.21
OpenWeather(날씨api) 사용 방법  (0) 2023.06.21