Class: Sendgo::BrandTemplateService
- Inherits:
-
Object
- Object
- Sendgo::BrandTemplateService
- Defined in:
- lib/sendgo/management.rb
Overview
브랜드메시지(구 친구톡) 템플릿 관리.
v2 전용이며 기업(Team) 소유 애플리케이션만 사용할 수 있다. 알림톡 템플릿과 달리 검수 요청 단계가 없다.
template_type 은 친구톡 표기(FT/FI/FW/FL/FC/FM/FP/FA)를 그대로 쓴다 —
서버가 chatBubbleType 으로 변환한다.
Constant Summary collapse
- RESOURCE =
"brand-templates"
Instance Method Summary collapse
-
#create(kakao_sender_key:, template_name:, template_type:, **extra) ⇒ Object
템플릿 등록.
-
#delete(template_code) ⇒ Object
템플릿 삭제.
-
#import(kakao_sender_key) ⇒ Object
발신프로필 단위 가져오기 — 카카오 쪽에 이미 있는 템플릿을 들여온다.
-
#initialize(http:) ⇒ BrandTemplateService
constructor
A new instance of BrandTemplateService.
-
#list(kakao_sender_key: nil, search: nil, count: nil) ⇒ Object
목록 조회.
-
#show(template_code) ⇒ Object
상세 조회.
-
#sync(template_code) ⇒ Object
동기화.
-
#update(template_code, **fields) ⇒ Object
템플릿 수정.
Constructor Details
#initialize(http:) ⇒ BrandTemplateService
Returns a new instance of BrandTemplateService.
248 249 250 |
# File 'lib/sendgo/management.rb', line 248 def initialize(http:) @http = http end |
Instance Method Details
#create(kakao_sender_key:, template_name:, template_type:, **extra) ⇒ Object
템플릿 등록. 선택 필드는 extra 로 넘긴다 (snake_case 자동 변환).
263 264 265 266 267 268 269 |
# File 'lib/sendgo/management.rb', line 263 def create(kakao_sender_key:, template_name:, template_type:, **extra) @http.post(RESOURCE, { kakaoSenderKey: kakao_sender_key, templateName: template_name, templateType: template_type }.merge(Sendgo.camelize_keys(extra))) end |
#delete(template_code) ⇒ Object
템플릿 삭제. 알림톡과 달리 카카오 쪽에서도 실제로 삭제된다.
277 278 279 |
# File 'lib/sendgo/management.rb', line 277 def delete(template_code) @http.delete(path(template_code)) end |
#import(kakao_sender_key) ⇒ Object
발신프로필 단위 가져오기 — 카카오 쪽에 이미 있는 템플릿을 들여온다.
288 289 290 |
# File 'lib/sendgo/management.rb', line 288 def import(kakao_sender_key) @http.post("#{RESOURCE}/import", { kakaoSenderKey: kakao_sender_key }) end |
#list(kakao_sender_key: nil, search: nil, count: nil) ⇒ Object
목록 조회.
253 254 255 |
# File 'lib/sendgo/management.rb', line 253 def list(kakao_sender_key: nil, search: nil, count: nil) @http.get(RESOURCE, { kakaoSenderKey: kakao_sender_key, search: search, count: count }) end |
#show(template_code) ⇒ Object
상세 조회. sendgo 코드(+KFT-...+)와 카카오 브랜드 템플릿 코드 둘 다 받는다.
258 259 260 |
# File 'lib/sendgo/management.rb', line 258 def show(template_code) @http.get(path(template_code)) end |
#sync(template_code) ⇒ Object
동기화. 카카오 쪽에서 이미 삭제됐으면 로컬에서도 제거하고
data.deleted: true 를 반환한다.
283 284 285 |
# File 'lib/sendgo/management.rb', line 283 def sync(template_code) @http.post("#{path(template_code)}/sync", {}) end |
#update(template_code, **fields) ⇒ Object
템플릿 수정. 발신프로필은 바꿀 수 없다.
272 273 274 |
# File 'lib/sendgo/management.rb', line 272 def update(template_code, **fields) @http.put(path(template_code), Sendgo.camelize_keys(fields)) end |