de link
"Eu não sou um guru de Kannel, mas eu já vi isso muitas vezes, pode acontecer devido a pelo menos 4 motivos:
(1) Você enviou uma mensagem através de uma conexão diferente com diferentes SMSC ID, o retorno de chamada DLR não receberá uma correspondência, por exemplo A conexão de transmissão usa um ID SMSC diferente da conexão do receptor, porque o kannel corresponde ao SMSC ID também !!
(2) Você enviou uma mensagem sem pedir DLR, por exemplo. dlr_mask = 0, kannel então não armazena uma referência para a mensagem enviada. Mas a transportadora enviou-lhe um DLR !! este caso pode acontecer porque algumas operadoras lhe enviam um DLR mesmo se você não peça por isso.
(3) Quando você envia um MT concatenado, o kannel mantém uma referência para o primeiro parte apenas e ignora as outras partes, mas alguns operadores enviam os DLRs para todas as partes, as outras partes não encontrarão uma correspondência.
(4) Este caso é o mais crítico, algumas operadoras lhe enviam o DLR antes enviando o ACK! o DLR não vai conseguir um jogo porque o kannel não salvou o referência de mensagem ainda! aguarda o submit_sm_resp (ACK, NACK, ...) antes de armazenar a referência na loja, Alex tinha uma correção para isso, mas tem penalidades de desempenho. "
Bem, espero que isso ajude você:)