3.3. Kiến trúc hệ thống và các công cụ hỗ trợ hệ thống bằng nguồn mở
3.3.4. Kết nối Kannel và SMPPSim để gửi tin nhắn
Để thực hiện kết nối giữa Kannel và SMPPSim cần thực hiện lần lượt các lệnh sau:
- Chạy các chương trình hỗ trợ trong gói xampp-linux-1.7.2.tar.gz bằng lệnh: sudo /opt/lampp/lampp start
- Chạy tệp startsmppsim.sh bằng lệnh cd SMPPSim
./startsmppsim.sh
- Trên 2 cửa sổ dòng lệnh khác nhau thực hiện 2 lệnh sau: bearerbox –v 1 smsgateway.conf
smsbox – v 1 smsgateway.conf
Cách gửi một tin nhắn đến thuê bao qua Kannel:
Ta sử dụng localhost: http://localhost:8888/inject_mo.htm, qua giao diện gửi như hình 3.2.
Trong đó:
source_addr: là số điện thoại gửi
destination_addr: là số điện thoại nhận
short_message: là nội dung tin nhắn với từ đầu tiên là từ khóa dịch vụ (location), từ tiếp theo là tên dịch vụ (BANK, GAS, CAFE....)
Những tham số trên sẽ được SMSC xử lí và gửi đến smsbox của Kannel, ngồi những tham số trên, smsbox còn nhận được thời gian nhận tin nhắn.
Sau khi điền các tham số trên ta nhấn nút Submit Message để gửi tin nhắn qua Kannel.
Việc nhận tin nhắn và xử lý thông tin để trả lại kết quả cho người dùng:
Cần có một chương trình để phân tích các tham số nhận được qua Kannel: các tham số cần lấy là: số điện thoại gửi, từ khóa của dịch vụ, tên dịch vụ để biết số điện thoại nào yêu cầu dịch vụ và họ u cầu dịch vụ gì. Có thể dùng PHP để viết chương trình lấy các tham số.
Khi lấy được các tham số cần đó, cần có một chương trình trả lại kết quả cho người dùng, kết quả đó sẽ được gửi đến số yêu cầu dịch vụ bằng hàm:
send_sms_base('localhost', SEND_SMS_PORT, KANNEL_USER, KANNEL_PASS, $X, $Y, DEFAULT_DLRMASK, $respond, $reqid);
Trong đó:
$X: là số dịch vụ, số người dùng gửi để yêu cầu dịch vụ
$respond: là tin nhắn cần gửi cho $Y
$reqid: đặt là -1
'$host: localhost gửi
$port: gửi từ cổng nào
$username: cấu hình của Kannel
$password: cấu hình của Kannel
$dlrmask: cấu hình của Kannel
Khi viết chương trình gọi đến hàm trên, nó sẽ trả lại kết quả cho người dùng.