Read and write every copy of a TLV SMPP lets repeat, and drop the dormant tlvMap
Test / lint (pull_request) Successful in 21s
Test / test (18) (pull_request) Successful in 28s
Test / test (20) (pull_request) Successful in 31s
Test / test (22) (pull_request) Successful in 29s
Test / test (24) (pull_request) Successful in 30s
Test / test (26) (pull_request) Successful in 29s
Mirror / push (push) Successful in 6s

This commit is contained in:
2026-09-24 00:37:10 +02:00
parent c5ef4c4703
commit 224acca7d0
12 changed files with 120 additions and 52 deletions
+3
View File
@@ -70,6 +70,9 @@ have for these:
- Binary TLVs (`message_payload`, `network_error_code`, `callback_num` and the rest) were parsed into
a hex string and written back as the ASCII of that string, so every round trip corrupted them.
They are `Buffer`s in both directions now; drop any hex encoding of your own.
- A repeated `callback_num`, `callback_num_atag`, `callback_num_pres_ind`,
`broadcast_area_identifier` or `broadcast_error_status` kept only its last copy. Each of those tags
is a list now, read and written, even where one copy arrives.
- A body carried in the `message_payload` TLV was ignored, so the message arrived empty, and a
`data_sm` was answered `ESME_RINVCMDID`, so a receipt thrown on one was lost silently. Both reach
the application now: a receipt as `dlr`, answered for you, and a message as `sms` for you to answer.