비즈고
Developer

API 연동으로

시스템 안에서

한 번에 시작하세요

간단한 프로세스로

비즈고 API를 연결해보세요

가이드

API 부터 AGENT까지

모든 유형을 커버합니다

Name :WebsendController.java
123456
@Service
@Slf4j
public class SmsAgentService {
@Autowired
private RestTemplate restTemplate;
@Autowired
private SmsRepository smsRepo;
@Value("${sms.api.url}")
private String smsApiUrl;
@Value("${sms.api.key}")
private String apiKey;
// 단일 문자 발송
public SmsResponse sendSms(
String phone,
String message
) {
log.info(
"SMS 발송 시작: {}",
phone
);
HttpHeaders headers =
createHeaders();
Map<String, Object> body =
createRequestBody(
phone,
message
);
HttpEntity<Map<String, Object>>
request = new HttpEntity<>(
body,
headers
);
ResponseEntity<String> response =
restTemplate.postForEntity(
smsApiUrl,
request,
String.class
);
saveSmsLog(phone, message);
return SmsResponse.success();
}
// 대량 문자 발송
public void sendBulkSms(
List<String> phones,
String message
) {
phones.forEach(phone ->
sendSms(phone, message)
);
}
// 헤더 생성
private HttpHeaders createHeaders() {
HttpHeaders headers =
new HttpHeaders();
headers.setContentType(
MediaType.APPLICATION_JSON
);
headers.set(
"Authorization",
"Bearer " + apiKey
);
return headers;
}
// 요청 바디 생성
private Map<String, Object>
createRequestBody(
String phone,
String message
) {
Map<String, Object> body =
new HashMap<>();
body.put("phone", phone);
body.put("message", message);
body.put(
"sendTime",
LocalDateTime.now()
);
return body;
}
// SMS 로그 저장
private void saveSmsLog(
String phone,
String message
) {
SmsLog log = SmsLog
.builder()
.phone(phone)
.message(message)
.sendTime(
LocalDateTime.now()
)
.build();
smsRepo.save(log);
}
}
@Service
@Slf4j
public class SmsAgentService {
@Autowired
private RestTemplate restTemplate;
@Autowired
private SmsRepository smsRepo;
@Value("${sms.api.url}")
private String smsApiUrl;
@Value("${sms.api.key}")
private String apiKey;
// 단일 문자 발송
public SmsResponse sendSms(
String phone,
String message
) {
log.info(
"SMS 발송 시작: {}",
phone
);
HttpHeaders headers =
createHeaders();
Map<String, Object> body =
createRequestBody(
phone,
message
);
HttpEntity<Map<String, Object>>
request = new HttpEntity<>(
body,
headers
);
ResponseEntity<String> response =
restTemplate.postForEntity(
smsApiUrl,
request,
String.class
);
saveSmsLog(phone, message);
return SmsResponse.success();
}
// 대량 문자 발송
public void sendBulkSms(
List<String> phones,
String message
) {
phones.forEach(phone ->
sendSms(phone, message)
);
}
// 헤더 생성
private HttpHeaders createHeaders() {
HttpHeaders headers =
new HttpHeaders();
headers.setContentType(
MediaType.APPLICATION_JSON
);
headers.set(
"Authorization",
"Bearer " + apiKey
);
return headers;
}
// 요청 바디 생성
private Map<String, Object>
createRequestBody(
String phone,
String message
) {
Map<String, Object> body =
new HashMap<>();
body.put("phone", phone);
body.put("message", message);
body.put(
"sendTime",
LocalDateTime.now()
);
return body;
}
// SMS 로그 저장
private void saveSmsLog(
String phone,
String message
) {
SmsLog log = SmsLog
.builder()
.phone(phone)
.message(message)
.sendTime(
LocalDateTime.now()
)
.build();
smsRepo.save(log);
}
}
Update Note

매달 새로워지는 API,

지금 바로 확인하세요

업데이트 보러가기

메시지 자동화
make와 N8N으로 시작해보세요

자동화 가이드 보기
SDK

다양한 언어로 바로

시작해보세요

메시지부터

스마트 자동화까지

지금 시작해보세요