각종 데이터 조회 예제
해당 페이지에서는 SOLAPI Java/Kotlin SDK를 이용하여 각종 SOLAPI내 저장 된 데이터를 조회하는 방법에 대해 가이드하고 있습니다.
정보
- 해당 페이지에서 작성된 모든 코드는 Java로 작성되었습니다.
- 각 발송 예시에 대한 결과 값 표시 기능은 현재 준비중에 있습니다.
- 해당 예제는 Java/Kotlin SDK 4.2.7 버전을 기준으로 작성되었습니다.
- Java/Kotlin SDK 4.2.7 버전은 통계 조회가 지원되지 않습니다.
환경설정
연동하실 프로젝트로 이동하신 다음 선호하시는 환경을 선택하여 아래 코드를 추가하여 SDK를 설치해보세요!
- Maven
- Gradle
- Gradle(Kotlin)
pom.xml
<dependency>
<groupId>net.nurigo</groupId>
<artifactId>sdk</artifactId>
<version>4.2.7</version>
</dependency>
build.gradle
implementation 'net.nurigo:sdk:4.2.7'
build.gradle.kts
implementation("net.nurigo:sdk:4.2.7")
잔액 조회
Java
DefaultMessageService messageService = NurigoApp.INSTANCE.initialize("API 키 입력", "API 시크릿 키 입력", "https://api.solapi.com");
Balance balance = messageService.getBalance();
System.out.println(balance);
메시지 조회 예제(문자 알림톡 등)
Java
DefaultMessageService messageService = NurigoApp.INSTANCE.initialize("API 키 입력", "API 시크릿 키 입력", "https://api.solapi.com");
MessageListRequest messageListRequest = new MessageListRequest();
// 불러올 메시지 갯수 제한
// messageListRequest.setLimit(5); // 5를 입력하면 5건이 조회됩니다, 미 입력시 20개로 지정
// 메시지 ID로 검색
// messageListRequest.setMessageId("메시지 ID 입력"); // 메시지 ID는 대개 M4V로 시작합니다
// 여러 메시지 ID로 검색
// ArrayList<String> messageList = new ArrayList<>();
// messageList.add("메시지 ID 입력");
// messageListRequest.setMessageIds(messageList);
// 그룹 ID로 검색
// messageListRequest.setGroupId("그룹 ID 입력"); // 그룹 ID는 대개 G4V로 시작합니다
// 발신번호로 검색
// messageListRequest.setFrom("01012345678");
// 수신번호로 검색
// messageListRequest.setFrom("01012345678");
// 메시지 타입으로 검색
// 허용되는 메시지 타입: SMS(단문 문자), LMS(장문 문자), MMS(사진 문자), ATA(알림톡), CTA(친구톡), CTI(이미지 친구톡), NSA(네이버 스마트알림), RCS_SMS(RCS 단문 문자), RCS_LMS(RCS 장문 문자), RCS_MMS(RCS 사진 문자), RCS_TPL(RCS 템플릿)
// messageListRequest.setType("SMS");
// 메시지 날짜 별 검색
// messageListRequest.setDateType("CREATED"); // 조회 기준, CREATED: 메시지 생성 일 기준, UPDATED: 메시지 상태 갱신일 기준
// 현재는 Kotlinx Instant 타입만 허용됩니다, Java/Kotlin SDK 설치 시 자동으로 kotlinx.datetime이 내장됩니다.
// Kotlinx Instant 객체 생성 예시
// LocalDateTime localDateTime = LocalDateTime.parse("2022-05-30 00:00:00", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
// ZoneOffset zoneOffset = ZoneId.systemDefault().getRules().getOffset(localDateTime);
// Instant instant = localDateTime.toInstant(zoneOffset);
// kotlinx.datetime.Instant kotlinInstant = kotlinx.datetime.Instant.Companion.parse(instant.toString());
// messageListRequest.setStartDate(kotlinInstant); // 시작 시간 설정
// messageListRequest.setEndDate(kotlinInstant); // 종료 시간 설정
MessageListResponse response = messageService.getMessageList(messageListRequest);
System.out.println(response);