recebeu DLR mas não conseguiu encontrar a mensagem ou não estava interessado em algumas mensagens - kannel

3

Eu configurei o kannel com o smsc. O problema é que recebo relatórios de entrega para algumas mensagens e para algumas outras eu recebo:

ERROR: SMPP[XXX]: got DLR but could not find message or was not interested in it id<2691146294> dst<98XXXXXXXXXX>, type<1>

aqui está minha configuração:

group = core
admin-port = 13000
admin-password = 123456
status-password = 654321
admin-deny-ip = "*.*.*.*"
admin-allow-ip = "127.0.0.1"
smsbox-port = 13001
box-deny-ip = "*.*.*.*"
box-allow-ip = "127.0.0.1"
log-file = "/var/log/kannel/bearerbox.log"
log-level = 1
store-type = spool
store-location = "/var/lib/kannel"
store-dump-freq = 60
sms-incoming-queue-limit = 10000000
sms-outgoing-queue-limit = 10000000
sms-resend-freq = 10
sms-resend-retry = -1
access-log = "/var/log/kannel/bearerbox-access.log"

group = smsc
smsc = smpp
smsc-id = my-smsc
host = XXX.XXX.XXX.XXX
port = 5019
receive-port = 5019
system-type = VMA
smsc-username = XXX
smsc-password = XXX
throughput = 1
reconnect-delay = 10
msg-id-type = 0x01

group = smsbox
smsbox-id = my-smsbox
bearerbox-host = 127.0.0.1
sendsms-port = 13013
log-file = "/var/log/kannel/smsbox.log"
log-level = 1

group = smsbox-route
smsbox-id = my-smsbox
smsc-id = my-smsc

group = sendsms-user
username = username
password = password
concatenation = true
max-messages = 100

Estou enviando cada mensagem com dlr-mask definido como 3 e dlr-url assim:

http://10.0.0.1/delivery?id=12345687&type=%d"

id é o ID da mensagem no banco de dados. alguém pode ajudar?

    
por Majid Azimi 22.06.2013 / 13:48

2 respostas

2

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ê:)

    
por 27.08.2014 / 18:01
0

Você kannel pode não conseguir processar o dlr, pois pode estar ocupado. Você pode usar o banco de dados mysql para armazenamento dlr, nenhum dos seus dlr se perder. referir

http://eshaiju.blogspot.in/2013/09/configuring-mysql-dlr-storage.html

    
por 20.09.2013 / 11:47