Re: [PATCH] Fixing SMPP re-routing, DLR request indication
Alexander Malysh <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <[email protected]> |
hmm thinking a bit more about this... how SMSC should match re-routed
DLR?? we don't send any message id in deliver_sm_resp.
I'm really confused...
Am 29.01.2009 um 12:18 schrieb Alexander Malysh:
>
> Am 29.01.2009 um 12:05 schrieb Stipe Tolj:
>
>> Alexander Malysh schrieb:
>>>
>>> deliver_sm.registered_delivery allow flags: 4 (SME ACK), 8 (User
>>> ACK),
>>> 12 (Both ACKs)
>>
>> correct, that's bit 2 and 3.
>>
>>> flags 1 and 2 not allowed there -> not spec conform.
>>
>> that's NOT true. Literally they are NOT defined, and NOT NOT
>> allowed. In the
>> semantics of a protocol there is a difference between the semantics
>> of DEFINED
>> and ALLOWED. :p
>>
>> But I agree, let's assume we want only the bit 2,3, hence values
>> {4,8,12} to be
>> seeing in a deliver_sm for that field.
>>
>>> DLR_FAILED flag -> not spec conform (allowed only DLR_SUCCESS)
>>> how would you signal DLR_FAILED in submit_sm.esm_class???
>>> Here how esm_class defined for submit_sm:
>>> Message Type (bits 5-2)
>>> x x 0 0 0 0 x x Default message Type (i.e. normal message)
>>> x x 0 0 1 0 x x Short Message contains ESME Delivery Acknowledgement
>>> x x 0 1 0 0 x x Short Message contains ESME Manual/User
>>> Acknowledgement
>>>
>>> Do you see DLR_FAILED here?
>>
>> yes, th SME Delivery Acknowledgment CAN contain both, a positive,
>> hence
>> DLR_SUCCESS, but also a negative, hence DLR_FAILED acknowledgment.
>> There is
>> nothing defined that a SME Delivery Ack is ONLY positive.
>>
>> So what do we have?
>>
>> We get a deliver_sm from smsc-id A, with registered_delivery =
>> 0x04, as you
>> above said. Then we set the "want positive, and negative" in the re-
>> routed MT
>> submit_sm.registered_delivery = 0x01 to smsc-id B.
>>
>> We get a DLR back from B with deliver_sm.esm_class mask xx0001xx
>> set. Which also
>> does not imply if it's positive nor negative. And we then re-route
>> this DLR with
>> submit_sm.esm_class mask xx0010xx to smsc-id A again.
>>
>> Voila. There is no need to indicate success or failed here at all.
>> Only the
>> "type of message", that it is a SME Ack. The "contents" indicates
>> the state.
>
> Ok, this will work... But please kill flags 1 and 2 in
> deliver_sm.registered_delivery because we don't want trigger undefined
> behavior ;) and implement SMPP based DLR rerouting in smsc_smpp...
>
>
>>
>>
>>> Do they also expect to see DLR_FAIL??
>>
>> yes, as it ONLY defines "which content do I expect", and NOT "give
>> me a DLR at all".
>>
>> Stipe
>>
>> --
>> -------------------------------------------------------------------
>> Kölner Landstrasse 419
>> 40589 Düsseldorf, NRW, Germany
>>
>> tolj.org system architecture Kannel Software Foundation (KSF)
>> http://www.tolj.org/ http://www.kannel.org/
>>
>> mailto:st_{at}_tolj.org mailto:stolj_{at}_kannel.org
>> -------------------------------------------------------------------
>>
>