SMS Flow (Common for Wholesale, Retail & SMPP)
1. Every SMS is inserted into respective table and finally added in Queue Table
2. It is the Job of DC to fetch Messages from Queue and Distribute Them to Nodes.
Retail & API SMS Logic
1. We Find Out MCC & MNC
2. Check for Blocked MCC & MNC
3. Check Phone Number Length for Operator
4. Check for SenderID Blocklist
5. Check for Blocked Keyword
6. Content Translation
7. Sender ID Overwrite
8. Check for Phone Number in Blacklist
9. If SMS Type Is Promotional Check for DND List
10. Check if HLR is required for this MCC & MNC
11. If HLR is required then HLR is fetched from HLR-Lookups.com API
12. Check for SenderID Routing
13. Check for Load Balance (Load Balance is disabled on reroute)
14. LCR
a. First Check in LCR Override/LCR Rules
b. If No Vendor Found in LCR Override Then Check in Normal LCR
15. Check for Manual Routing (Next Priority on Reroute)
16. Get Customer Rate/ Reseller Rate
17. Check for Loss Prevention
a. Get Termination Rate from Vendor and Compare with Customer Rate
b. If Vendor and Customer Currency is Different, they both are converted into base
currency and compared.
c. If there is a loss then Dynamic Rates slabs are checked for rate increase (Not
applicable in reroute).
d. If Loss prevention is disabled whole logic is skipped.
18. If SMS is in cutting list fake dlr are generated.
i. DLR Status Depends Upon Setting in Service Config File CuttingType
1. If CuttingType = A Then Accepted ELSE Delivered
19. Vendor Content Translation
20. Vendor Content Append
21. Finally, Message Submitted to Vendor Internal Queue.
Wholesale SMS Logic
1. Check for Open Sender ID Allowed
2. Check for DND Scrubbing
3. We Find Out MCC & MNC
4. Check for Blocked MCC & MNC
5. Check Phone Number Length for Operator
6. Check for SenderID Blocklist
7. Check for Blocked Keyword
8. Content Translation
9. Sender ID Overwrite
10. Check for Phone Number in Blacklist
11. If SMS Type Is Promotional Check for DND List
12. Check if HLR is required for this MCC & MNC
13. If HLR is required then HLR is fetched from HLR-Lookups.com API
14. Check for SenderID Routing
15. Check for Load Balance (Load Balance is disabled on reroute)
16. LCR
a. First Check in LCR Override/LCR Rules
b. If No Vendor Found in LCR Override Then Check in Normal LCR
c. Check for bilateral relation
17. Check for Manual Routing (Next Priority on Reroute)
18. Get Customer Rate/ Reseller Rate
19. Check for Loss Prevention
a. Get Termination Rate from Vendor and Compare with Customer Rate
b. If Vendor and Customer Currency is Different, they both are converted into base
currency and compared.
c. If there is a loss then Dynamic Rates slabs are checked for rate increase (Not
applicable in reroute).
d. If Loss prevention is disabled whole logic is skipped.
20. Vendor Content Translation
21. Vendor Content Append
22. Finally, Message Submitted to Vendor Internal Queue.