Class: Sendgo::MessageTemplateService

Inherits:
Object
  • Object
show all
Defined in:
lib/sendgo/management.rb

Overview

문자(SMS/LMS/MMS) 상용구 템플릿.

v2 전용. 카카오 템플릿과 달리 검수가 없어 만들면 바로 쓸 수 있고, 기업 계정이 아니어도 된다.

Constant Summary collapse

RESOURCE =
"message-templates"

Instance Method Summary collapse

Constructor Details

#initialize(http:) ⇒ MessageTemplateService

Returns a new instance of MessageTemplateService.



389
390
391
# File 'lib/sendgo/management.rb', line 389

def initialize(http:)
  @http = http
end

Instance Method Details

#create(message_tran_type:, message_tran_msg:, message_tran_subject: nil, is_favorite: false) ⇒ Object

등록. LMS·MMS 는 message_tran_subject 가 필수다.



404
405
406
407
408
409
410
411
412
413
# File 'lib/sendgo/management.rb', line 404

def create(message_tran_type:, message_tran_msg:, message_tran_subject: nil, is_favorite: false)
  body = {
    messageTranType: message_tran_type,
    messageTranMsg: message_tran_msg,
    isFavorite: is_favorite
  }
  body[:messageTranSubject] = message_tran_subject unless message_tran_subject.nil?

  @http.post(RESOURCE, body)
end

#delete(template_key) ⇒ Object

삭제 (소프트 삭제 — 목록에서만 사라진다).



421
422
423
# File 'lib/sendgo/management.rb', line 421

def delete(template_key)
  @http.delete("#{RESOURCE}/#{CGI.escape(template_key)}")
end

#list(message_type: nil, search: nil, count: nil) ⇒ Object

목록 조회.



394
395
396
# File 'lib/sendgo/management.rb', line 394

def list(message_type: nil, search: nil, count: nil)
  @http.get(RESOURCE, { messageType: message_type, search: search, count: count })
end

#show(template_key) ⇒ Object

상세 조회.



399
400
401
# File 'lib/sendgo/management.rb', line 399

def show(template_key)
  @http.get("#{RESOURCE}/#{CGI.escape(template_key)}")
end

#update(template_key, **fields) ⇒ Object

수정.



416
417
418
# File 'lib/sendgo/management.rb', line 416

def update(template_key, **fields)
  @http.put("#{RESOURCE}/#{CGI.escape(template_key)}", Sendgo.camelize_keys(fields))
end