Please enable JavaScript.
Coggle requires JavaScript to display documents.
Api_site (Gửi tin qua API) - Coggle Diagram
Api_site
(Gửi tin qua API)
Lấy package_name theo contract_type và telco_id
Nội mạng CSKH: PACKAGE_NAME_CC_VNP (contract_type = 1 và telco_id = 1)
Ngoại mạng CSKH: PACKAGE_NAME_CC_EXT(contract_type = 1 và telco_id != 1)
QC: PACKAGE_NAME_ADS_VNP(contract_type =2)
ITEL: package_name_cc_itel (telco_id = 7)
REDDI: package_name_cc_mobicast (telco_id =8 )
Check Template, Label, Contract, Adser, Agent
Tìm kiếm trong Redis theo key || DB : agent , adser ,contract , label, template, label_type
null
Kiểm tra Template ID và Label ID, trả về lỗi nếu không hợp lệ.
(Check trong DB bảng template và label)
Kiểm tra nhà mạng telco_id nếu lỗi return lại luôn
! null
Kiểm tra hợp đồng (Contract Type và status).
Kiểm tra trạng thái Template.
Kiểm tra Label theo từng nhà mạng (status , thời gian)
Kiểm tra status agent , adser
=> return nếu không hợp lệ.
Check Agent Api có tồn tại trong Redis, DB (bảng agent_api)
Check ps_schedule_time có đặt lịch hay không?
format :dd-MM-yyyy HH:mm
Kiểm tra phải lớn hơn ngày hiện tại
Check Portal User có tồn tại trong Redis, DB (bảng portal_user)
Check template mới hay cũ
Gen SMS
Xử lý escape ký tự đặc biệt.
Mapping template params với danh sách nội dung truyền vào
Kiểm tra giới hạn tin nhắn quảng cáo.
Kiểm tra encoding tin nhắn.
Kiểm tra độ dài tin nhắn theo từng nhà mạng
Kiểm tra từ khóa cấm. (Redis)
Kiểm tra loại thanh toán (trả trước hay không).
Trả trước
Redis
Tạo key Redis phù hợp với thông tin .
Scan key trong redis thực hiện trừ quota
subtraction()
Kết nối đến Redis và lấy danh sách tin bằng key.
Kiểm tra quota trong gói tin có đủ không?
Thực hiện rpop theo số lượng yêu cầu và đếm số tin đã trừ.
Nếu đủ tin được trừ, kiểm tra xem key còn tồn tại hay không. Nếu không còn, cập nhật DB để đồng bộ.(AGENT_PACKAGE, ADSER_PACKAGE)
Nếu không đủ tin được trừ, phục hồi lại các tin đã trừ và trả về 1.
DB
Call pkg_agent_api_cc_vnp.fUpdateQuotaByTelco
Lưu các thông tin vào các bảng sms_pending tương ứng
Trả sau
không trừ redis