Канал получения отчетов о доставке

Я использую смс-шлюз kannel для отправки смс

Извините, если этот вопрос задавали раньше, но я пытался найти решение, но ничего не нашел, к сожалению, я должен опубликовать этот вопрос.

Я отправляю сообщение через php-скрипт (smpp-клиент) на smpp-сервер, который подключается к ящику-носителю и отправляет сообщение.

Столкнулся с несколькими проблемами: 1. Не могу получить отчет о доставке 2. В журналах smsbox получаю сообщение об ошибке: ОШИБКА: URL-адрес ‹03b3423a> не начинается с http://' norhttps://'

Я пробовал разные решения, но ни одно из них не работает. Мне нужно, чтобы если номер «А» отправляет сообщение на номер «Б», то номер «А» должен получить подтверждение того, что сообщение было доставлено на номер «Б».

Вот мои подробности файлов конфигурации:

kannel.conf

group = core
dlr-storage=internal
admin-port = 13000
smsbox-port = 13001
admin-password = bar
log-file = "/var/log//kannel/kannel.log"
box-deny-ip = "*.*.*.*"
box-allow-ip = "127.0.0.1"
access-log = "/var/log/kannel/access.log"

#---------------------------------------------
# SMSC CONNECTIONS

group = "smsc"
smsc = "http"
smsc-id = "http"
#system-type = "generic"
system-type = "kannel"
port = 13015
log-file = /var/log/kannel/smsc.log
status-success-regex = "success"
status-permfail-regex = "failure"
status-tempfail-regex = "retry later"
generic-status-sent = 200
generic-status-error = 404
#reroute-dlr = true
#transceiver-mode = 0
receive-port=13015
send-url = "http://192.168.1.124:8090"
smsc-username = "cust2"
smsc-password = "cust@123"
connect-allow-ip = "*.*.*.*"
#dlr-url="http://192.168.1.106/dlr.php?type=%d"

#---------------------------------------------
# SMSBOX SETUP

group = smsbox
bearerbox-host = 127.0.0.1
bearerbox-port = 13001
smsbox-id = cust2

#---------------------------------------------
# SEND-SMS USERS

group = sendsms-user
username = cust2
password = cust@123
#user-deny-ip = ""
#user-allow-ip = ""

#---------------------------------------------
# SERVICES

group = sms-service
keyword = default
text = "No service specified"

group = smsbox-route
smsbox-id = cust2
smsc-id = "http"

opensmppbox.conf

group = core
dlr-storage = internal

group = opensmppbox
opensmppbox-id = OPENSMPP
opensmppbox-port = 2775
bearerbox-host = 127.0.0.1
bearerbox-port = 13001
our-system-id = outbind
smpp-logins = /usr/local/kannel/smpplogins.txt
use-systemid-as-smsboxid = true
route-to-smsc = http 
log-file = /usr/local/kannel/smppbox.log

передатчик.php

<?php
//print "<pre>";
require_once "smpp.php";
$tx=new SMPP('192.168.1.81',2775);

$tx->debug=true;
$tx->system_type="http";
$tx->addr_npi=1;
$tx->sms_registered_delivery_flag=1;
$tx->sms_sm_default_msg_id=1;
//$tx->dlr_url="http://192.168.1.124/cgi-bim/drl";
//$tx->dlr_url="http://192.168.1.124:8090";
print_r($tx);
//print "open status: ".$tx->state."\n";
$tx->bindTransmitter("cust2","cust@123");
$tx->sms_source_addr_npi=1;
//$tx->sms_source_addr_ton=1;
$tx->sms_dest_addr_ton=1;
$tx->sms_dest_addr_npi=1;
$tx->sendSMS("2121","791400000","Hello world");
//$tx->sendSMS("2121","2121","Hello world!!!");
$tx->close();
unset($tx);

Пожалуйста, дайте мне знать, если потребуется какая-либо дополнительная информация. Спасибо за помощь заранее.


person gehlotparesh    schedule 11.03.2016    source источник


Ответы (1)


Каков ответ на вызов http://192.168.1.124:8090

send-url = "http://192.168.1.124:8090" 

Ответ должен быть похож на success, failure или retry later

status-success-regex = "success"
status-permfail-regex = "failure"
status-tempfail-regex = "retry later"

Если ответ правильный, вы получите правильный DLR

person Vinayak    schedule 04.09.2016