coolSMS 이용하기위한 준비물


javaSDK-2,2jar

https://github.com/coolsms/java-sdk/releases



JSON은 COOLSMS 실행에는 필요하지는 않습니당

json-simple-1.1.jar

http://www.java2s.com/Code/Jar/j/Downloadjsonsimple11jar.htm



coolSMS 회원가입후 대시보드(문자메시지 관리페이지) 에서 API KEY 발급받기





public class ExampleSend { public static void main(String[] args) { String api_key = "키입력"; String 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", "발신번호"); params.put("from", "수신번호"); //무조건 자기번호 (인증) params.put("type", "SMS"); params.put("text", "보낼 메시지를 입력하시오"); params.put("app_version", "test app 1.2"); // application name and version try { //send() 는 메시지를 보내는 함수 JSONObject obj = (JSONObject) coolsms.send(params); System.out.println(obj.toString()); } catch (CoolsmsException e) { System.out.println(e.getMessage()); System.out.println(e.getCode()); } } 

}


class명을 ExampleSend 로 해서 메인함수 내의 코드만 복붙해 간다.

(이클립스 사용시) jar파일이 성공적으로 추가되었다면 Ctrl + Shift + O 를하면 자동으로 import가 될것이다.


JAR파일 추가하는법 (링크)


api_key , api_secert 에 발급받은 key를 대입한다.

발신번호와 수신번호에 각자 원하는 번호를 입력한다.


그러나 우리는 수신번호를 일부러 틀리게 적어서 error를 발생시킬것이다.



try문 안에있는 obj.toString()의 결과가 출력된다

{"group_id":"R2G9fqnb315X6VYf","error_list":{"1":"1062"},"success_count":0,"error_count":1}

key와 value값으로 이루어진 Json 형식의 데이터이다.



이 데이터를 String 클래스의 메서드로 뭔가뭔가 왤케왤케 하게 파싱을 해볼것이다

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package sms;
 
import lombok.Data;
 
@Data
public class Response {
    String group_id;
    String error_list;
    String success_count;
    String error_count;
 
    static String startEndTrim(String str) {
        return str.substring(str.indexOf("{")+1,str.lastIndexOf("}"));
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String data = "{\"group_id\":\"R2GtX62GMhUpnaem\",\"error_list\":{\"1\":\"1062\"},\"success_count\":0,\"error_count\":1}\r\n"
                + "";
        System.out.println(data);
        System.out.println("----------------------------------");
        data = data.replaceAll("\"""");
        data = startEndTrim(data);
 
        Response res = new Response();
        System.out.println(data);
 
        String s1[] = data.split(",");
        for (int i = 0; i < 4; i++) {
            if(s1[i].contains("{")||s1[i].contains("}")) {
                s1[i] = s1[i].replace("{""");
                s1[i] = s1[i].replace("}""");
                System.out.println("s1[" + i + "] " + s1[i]);
            }else
                System.out.println("s1[" + i + "] " + s1[i]);            
        }
 
        for (int i = 0; i < s1.length; i++) {
            String s2[] = s1[i].split(":");
            for (int j = 0; j < s2.length; j++) {
                System.out.println("s2[" + i + "]" + "[" + j + "] " + s2[j]);
            }
        }
 
        System.out.println(res);
    }
 
}
 
cs




출력 결과

{"group_id":"R2GtX62GMhUpnaem","error_list":{"1":"1062"},"success_count":0,"error_count":1}


----------------------------------

group_id:R2GtX62GMhUpnaem,error_list:{1:1062},success_count:0,error_count:1

s1[0] group_id:R2GtX62GMhUpnaem

s1[1] error_list:1:1062

s1[2] success_count:0

s1[3] error_count:1


s2[0][0] group_id

s2[0][1] R2GtX62GMhUpnaem

s2[1][0] error_list

s2[1][1] 1

s2[1][2] 1062

s2[2][0] success_count

s2[2][1] 0

s2[3][0] error_count

s2[3][1] 1


+ Recent posts