Mobile Wireless và hệ thống dịch vụ giá trị gia tăng trên Web
Trang 1Mục lục
Mục lục 1
Danh mục thuật ngữ và từ viết tắt sử dụng trong báo cáo tốt nghiệp 3
Danh mục các hình vẽ trong báo cáo tốt nghiệp 4
Danh mục các bảng trong đồ án tốt nghiệp 5
LỜI NÓI ĐẦU 5
CHƯƠNG 1 6
TỔNG QUAN 6
1.1 Dịch vụ giá trị gia tăng trên di động là gì? 7
1.2 Các loại hình dịch vụ giá trị gia tăng 7
1.2.7 Các dịch vụ giải trí trên WAP 13
1.2.8 Các dịch vụ đa phương tiện 14
1.2.9 Các dịch vụ thoại mở rộng 15
1.2.10 Các dịch vụ khác trên WAP 16
1.2.11 Dịch vụ cung cấp nhạc chuông, hình ảnh 17
1.2.12 Tình hình các dịch vụ giá trị gia tăng trên di động ở Việt nam 17
1.3 Nhiệm vụ của đồ án tốt nghiệp 17
2.5.3 Bộ giao thức WAP (WAP Protocol Stack) 44
2.5.4 Môi trường ứng dụng WAP, WML và WMLScript 44
3.2.2 Biểu đồ phân cấp chức năng 52
3.2.3 Chi tiết các chức năng 53
3.2.4 Thiết kế cơ sở dữ liệu 55
Trang 23.3 Xây dựng hệ thống MVAS 62
3.3.1 Xây dựng hệ MVAS-WEB 62
3.3.2 Xây dựng hệ MVAS-SMS 72
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 80
TÀI LIỆU THAM KHẢO 81
Trang 3Danh mục thuật ngữ và từ viết tắt sử dụng trong báo cáo tốt nghiệp
Trang 4Danh mục các hình vẽ trong báo cáo tốt nghiệp
Hình 2.1: Kiến trúc mạng cơ bản khi triển khai SMS 18
Hình 2.2: Cơ sở hạ tầng mạng thực hiện các dịch vụ ESME 19
Hình 2.12: Bộ giao thức WAP so sánh với bộ giao thức internet 44
Hình 3.1: Biểu đồ phân cấp hệ thống MVAS 50
Hình 3.2: Mô hình hệ thống MVAS 51
Hình 3.3: Biểu đồ phân cấp chức năng hệ thống MVAS-WEB 52
Hình 3.4: Biểu đồ phân cấp chức năng hệ thống MVAS-SMS 52
Hình 3.5: Cơ sở dữ liệu hệ thống 61
Hình 3.6: Kiến trúc 1 63
Hình 3.7: Kiến trúc MVC 63
Hình 3.8: Trang chủ hệ thống web 64
Hình 3.9: Trang web ringtone.jsp 65
Hình 3.10: Màn hình chức năng nghe thử nhạc chuông 65
Hình 3.11: Trang web image.jsp 66
Hình 3.12: Trang web logo.jsp 67
Hình 3.13: Đăng ký tài khoản người dùng 68
Hình 3.14: Thay đổi thông tin cá nhân 69
Hình 3.15: Gửi nhạc chuông từ trên web 70
Hình 3.16: Gửi hình nền từ trên web 71
Hình 3.17: Gửi logo từ trên web 72
Hình 3.18: Kết nối điên thoại Nokia 6100 với máy tính thông qua NowSMS 73
Hình 3.19: Thiết lập WebService cho NowSMS 74
Hình 3.20: Thiết lập chức năng gọi mô đun xử lý tin nhắn cho NowSMS 75
Trang 5
Danh mục các bảng trong đồ án tốt nghiệp
Bảng 2.1: Số tối đa ký tự được gửi ứng với từng loại mã 26
Bảng 2.2: Thiết lập sử dụng UDH 26
Bảng 2.3: Số lượng tối đa ký tự khi sử dụng UDH 27
Bảng 2.4: Tham số SMPP trong việc ghép nối tin nhắn 27
Bảng 2.5 : So sánh giữa WAP Push SL và SI 48
Bảng 3.1: Chi tiết các chức năng hệ thống MVAS 54
Bảng 3.16: Thông tin người sử dụng 60
Bảng 3.17: So sánh giữa cơ sở dữ liệu DB2, MS SQL Server, Oracle 62
LỜI NÓI ĐẦU
Trang 6Lịch sử phát triển của loài người luôn gắn liền với những phát minh Máy tính điện tử có thể được coi là một trong những phát minh vĩ đại nhất Sự ra đời của máy tính điện tử chưa đầy 100 năm nhưng nó đã làm thay đổi mạnh mẽ cuộc sống của con người Ngày nay chiếc máy tính điện tử đã thâm nhập vào mọi lĩnh vực của đời sống xã hội Bên cạnh chiếc máy tính điện tử thì còn phải kể đến chiệc điện thoại do Abraham Bell phát minh ra Giao tiếp bằng chiếc điện thoại đã làm thay đổi căn bản phương thức giao tiếp của con người và nó đã xóa mờ mọi khoảng cách về địa lý.
Trong những năm vừa qua, sự phát triển mạng mẽ của internet và các trang Web khiến người ta hay nói nhiều đến công nghệ thông tin và đặc biệt là thương mại điện tử (E-commerce) Quả thật thương mại điện tử là một phương pháp kinh doanh mới nhưng nó cũng có những hạn chế khi đòi hỏi những người mua và bán ngồi liên tục bên chiếc máy tính của mình Đối với các doanh nhân hay thế hệ trẻ việc ngồi liên tục ở một chỗ là điều không thích hợp Những tiến bộ nhanh chóng về công nghệ điện thoại di dộng khiến người ta đề cập đến một vấn đề mới đó là M-commerce Với M-commerce thì vẫn là thương mại nhưng các doanh nhân hay khách hàng đều có thể tìm kiếm, giao dịch thông qua chiếc điện thoại di động luôn mang theo bên mình M-commerce đã khắc phục được hạn chế của E-commerce thông qua việc kết hợp thêm tính năng di động của chiếc điện thoại.
commerce là một khái niệm mới, để xây dựng được các ứng dụng commerce đòi hỏi các nhà phát triển vượt qua những rào cản về mặt kỹ thuật Với mong muốn tìm hiểu những kỹ thuật và công nghệ để xây dựng các ứng dụng M-
M-commerce, em đã chọn và thực hiện đề tài tốt nghiệp: “Mobile Wireless và hệ thống dịch vụ giá trị gia tăng trên Web”.
CHƯƠNG 1TỔNG QUAN
Trang 7Nội dung chương này đề cập đến những vấn đề chính sau: Dịch vụ giá trị gia tăng trên di động là gì?
Các loại hình dịch vụ giá trị gia tăng trên di động Nhiệm vụ của đồ án tốt nghiệp
1.1 Dịch vụ giá trị gia tăng trên di động là gì?
Trước khi đi vào tìm hiểu các dịch vụ giá trị gia tăng trên điện thoại di động và các loại hình dịch vụ đó thì chúng ta cùng nhau làm rõ khái niệm dịch vụ “giá trị gia tăng” (value added) trên điện thoại di động
minh ra điện thoại năm 1876, điện thoại đã đi vào cuộc sống và làm thay đổi cách thức giao tiếp của loài người cũng như ảnh hưởng tới các mặt của đời sống kinh tế, xã hội một cách sâu sắc Đó là chúng ta nói đến điện thoại có dây Khi mà khoa học phát triển hơn thì điện thoại di động đã ra đời Nếu như vào năm 1993 ở nước ta khi một bài báo viết về một thiết bị điện thoại không dây nối lúc đó đang có ở Thái Lan thì đối với mọi người Việt Nam thì đó là một thứ gì đó hoàn toàn xa lạ Đến thời điểm hiện nay của năm 2006 thì số thuê bao di động trên tất cả các mạng ở Việt nam đã là khoảng 11 triệu thuê bao và đang có xu hướng tăng mạnh khi mà có thêm các nhà cung cấp mới như EVN Telecom, Hà nội Telecom.
Khi điện thoại ra đời thì mục đích đơn thuần của nó chỉ là truyền âm thanh và cụ thể là giọng nói của con người, nhưng hiện nay khi mà điện thoại di động phát triển thì mục đích của nó không đơn thuần là các cuộc đàm thoại thông thường và tất cả các dịch vụ mà các thuê bao di động được sử dụng ngoài các cuộc đàm thoại ra đều được gọi là các dịch vụ “giá trị gia tăng”, ví dụ như nhắn tin ngắn, tải nhạc chuông, hình ảnh,… Các dịch vụ này có thể do nhà cung cấp dịch vụ điện thoại cung cấp hoặc do một đối tác trung gian thứ ba Ở các phần tiếp theo sau đây chúng ta sẽ đi tìm hiểu cụ thể về các loại hình dịch vụ giá trị gia tăng.
1.2 Các loại hình dịch vụ giá trị gia tăng
1.2.1 Email di động
Thư điện tử (Email) từ lâu đã trở thành ứng dụng quan trọng bậc nhất, thành công nhất của mạng Internet Thư điện tử cho phép người sử dụng làm việc có hiệu quả hơn, giao tiếp với nhau nhanh hơn, tăng tốc độ và chất lượng của việc ra quyết định trong các doanh nghiệp Thư điện tử còn cho phép hỗ trợ và chăm sóc khách hàng trực tuyến tốt hơn Sức mạnh của thư điện tử đã san bằng khoảng cách về địa lý, ngôn ngữ và trở thành phương tiện giao tiếp hiệu quả nhất trong kinh doanh.
Thư điện tử không dây (Wireless Email) càng làm cho thư điện tử truyền thống tăng thêm sức mạnh Nó cho phép người sử dụng đọc và trả lời Email mọi lúc, mọi nơi, không nhất thiết phải ngồi ở văn phòng hoặc ở nhà mới kiểm tra, đọc và trả
Trang 8lời được Email.
Email di động đã tồn tại dưới nhiều dạng khác nhau Ví dụ như người sử dụng có thể gửi và nhận Email dưới dạng nhắn tin ngắn SMS (Short Message Service), một dịch vụ rất phổ biến trên tất cả các mạng di động Một dạng Email di động khác là việc truy nhập Email sử dụng các thiết bị PDA, thiết bị nhắn tin (Pager) hoặc các thiết bị không dây khác để tải Email từ máy tính cá nhân hoặc là qua mạng không dây.
Tuy nhiên, các dạng Email di động trên đều có những hạn chế nhất định Ví dụ như các dạng Email di động trên không có khả năng sử dụng cho những người sử dụng chuyên nghiệp, cần nhận và gửi những Email có kích thước lớn và truy nhập Email theo thời gian thực (real-time) Thay vào đó, các dạng Email di động này đòi hỏi phải tạo ra và lưu trữ các bản sao của Email trên máy chủ, trên máy trạm hoặc trên các thiết bị Email Gateway Kết quả là người sử dụng phải xem, quản lý và lưu trữ Email ở nhiều chỗ khác nhau.
Email di động, truy nhập qua WAP, cho phép truy nhập trực tuyến (live) vào bản sao của Email ở trên máy chủ Web-based Email Server Chỉ tồn tại một bản sao duy nhất của Email, do đó, một sự thay đổi từ thiết bị WAP sẽ dẫn đến thay đổi tức thì và tự động trên hộp thư của người sử dụng trên máy chủ Và như vậy là người sử dụng sẽ chỉ phải xử lý Email một lần duy nhất Các thiết bị hỗ trợ WAP-based Email cho phép đọc thư, trả lời thư, nhận biết thư mới và thậm chí là định tuyến các file gửi kèm tới các máy in hoặc máy Fax gần đó.
Email di động là ứng dụng quan trọng nhất của dịch vụ WAP và các khả năng về giao diện thân thiện với người sử dụng, khả năng báo Email mới (Mail Notification) là những ưu điểm lớn nhất của việc truy nhập Email qua WAP.
1.2.2 Quản lý thông tin cá nhân
Quản lý thông tin cá nhân (PIM - Personal Information Management) bao gồm các công cụ rất cần thiết cho công việc hàng ngày như lịch, lịch công tác, danh sách những địa chỉ liên hệ, danh bạ điện thoại và danh mục những việc cần làm Cùng với thư điện tử, PIM đã trở thành một trong những ứng dụng quan trọng nhất, cho phép người sử dụng lập lịch cho các cuộc họp và quản lý được danh sách các địa chỉ liên hệ và số điện thoại của các đối tác, ngay cả khi đang ở trên đường.
Giải pháp quản lý thông tin cá nhân qua WAP cho phép người sử dụng tải về và đồng bộ cơ sở dữ liệu PIM qua không gian, truy nhập vào danh bạ điện thoại, cơ sở dữ liệu về số điện thoại, địa chỉ cũng như các thông tin khác mọi lúc, mọi nơi Khi người sử dụng cập nhật thông tin về một địa chỉ liên hệ mới qua giao diện Web, thông tin mới được cập nhật này sẽ cập nhật vào cơ sở dữ liệu PIM và ngay lập tức có thể tải về các thiết bị không dây.
Trang 9Giao diện thân thiện của danh mục người cần liên hệ trên máy điện thoại di động có hỗ trợ WAP sẽ cho phép người sử dụng gọi điện thoại ngay cho người đó chỉ bằng một động tác bấm phím quay số (one-touch dial) Khi PIM được sử dụng kết hợp với nhận dạng tiếng nói, người sử dụng thậm chí còn có thể quay số bằng giọng nói tới một số điện thoại lưu trong sổ điện thoại Một ưu điểm nữa của việc quản lý thông tin cá nhân qua giao diện WAP là cho phép nhắc người sử dụng về một cuộc hẹn hoặc một buổi họp nào đó sử dụng các biện pháp thông báo qua mạng không dây, ví dụ như sử dụng SMS.
1.2.3 Unified Messaging
Unified Messaging cho phép người sử dụng trả lời một bản tin đa phương tiện mà không cần quan tâm đến dạng của bản tin đó Unified Messaging cho phép tích hợp cả thoại, Email và Fax vào trong một hộp thư duy nhất để người sử dụng có thể truy nhập Theo dự báo của các chuyên gia, toàn thế giới sẽ có 200 triệu hộp thư vào năm 2006.
Với việc sử dụng các dịch vụ Voicemail của điện thoại và Email trên Internet, người sử dụng đồng thời sẽ có một số hộp thư: một hộp thư thoại cho điện thoại để bàn, một hộp thư thoại cho điện thoại di động, một hộp thư đa phương tiện cho Email, một hộp thư dạng văn bản cho máy nhắn tin … Hơn thế nữa, rất nhiều người lại sử dụng cùng lúc nhiều thiết bị và kết quả là rất nhiều loại hộp thư đang chờ họ!
Unified Messaging cho phép người sử dụng sử dụng các thiết bị khác nhau không những chỉ để truy nhập một hộp thư chứa nhiều dạng bản tin khác nhau mà còn có thể trả lời các bản tin đó theo dạng bản tin mà người gửi có thể đọc được Đây là ứng dụng quan trọng cho việc kết hợp giữa các bản tin trong hai thế giới thoại và dữ liệu.
Với việc sử dụng Unified Messaging, người sử dụng có thể sử dụng điện thoại bấm số, máy tính cá nhân đa phương tiện, điện thoại điều khiển bằng tiếng nói, giao diện Web hoặc máy điện thoại di động với giao diện WAP để truy nhập một hộp thư duy nhất Với sự hỗ trợ của công nghệ Push của mạng không dây, người sử dụng sẽ được thông báo khi có bản tin mới thông qua máy nhắn tin, điện thoại di động hoặc các thiết bị cầm tay khác Người sử dụng sẽ biết được mức độ quan trọng của bản tin đó thông qua tên người gửi, thời gian gửi bản tin, độ dài bản tin và chủ đề của bản tin Người sử dụng có thể soạn, chuyển tiếp hoặc lưu trữ bản tin đó dưới dạng Email hoặc Voicemail.
1.2.4 Instant Messaging
Instant Messaging (hội thoại tức thời) cho phép hai hoặc nhiều người đối thoại
Trang 10trực tuyến qua mạng Không giống như Email, giao tiếp giữa hai người diễn ra cùng một lúc khi sử dụng Instant Messaging Không giống như chat vô danh, Instant Messaging cho phép tạo ra một danh sách những người bạn chat riêng và cho phép xác định bạn chat nào đang on-line.
Những tính năng thông dụng của Instant Messaging bao gồm khả năng nhận biết bạn chat có on-line hay không hoặc nhận thông báo khi bạn chat on-line, khả năng trao đổi thông điệp tức thời, gửi ảnh, văn bản cũng như khả năng tham gia vào các phòng chat Khi mạng có vấn đề làm gián đoạn cuộc hội thoại, Instant Messaging cho phép thực hiện chức năng của một hệ thống lưu trữ và chuyển sau (store and forward) để đảm bảo bạn chat vẫn nhận được thông điệp khi họ on-line trở lại Một số ứng dụng Intstant Messaging còn cho phép tích hợp tính năng Voice Chat và cả WebCam như Yahoo Messenger.
Những chương trình Instant Messenger nổi tiếng nhất hiện nay trên Internet là AIM (American Online Instant Messenger), Yahoo Messenger, Microsoft Messenger và ICQ Theo như Jupiter Communications, Instant Messaging là một trong mười ứng dụng on-line hàng đầu ngày nay trên mạng Internet và số lượng người sử dụng Instant Messaging sẽ đạt con số trên 400 triệu vào năm 2006 Hiện tại, dịch vụ AIM của American Online đã có hơn 90 triệu người sử dụng, trao đổi hơn 1 tỷ thông điệp một ngày trong khi hàng ngày chỉ có 110 triệu Email được gửi đi Có thể nói, Instant Messaging có sức cuốn hút cả người vị thành niên và người lớn và ngày càng lấn át Email để trở thành ứng dụng hàng đầu trên mạng Internet.
Cùng với WAP, Instant Messaging sẽ có thêm hàng tỷ người sử dụng trên khắp thế giới Người sử dụng sẽ có thể giao tiếp với bạn chat sử dụng máy tính cá nhân hoặc là máy điện thoại cầm tay Các ứng dụng Instant Messaging có ưu điểm là chủ yếu chỉ truyền dữ liệu dạng văn bản Vì vậy, các ứng dụng này có thể tối ứu hóa cho máy điện thoại di động với những hạn chế về bàn phím Hãng AOL đã hợp tác với hãng Nokia, Motorola và các hãng sản xuất điện thoại di động khác để phát triển phần mềm AOL Mobile Messenger mới cho các thiết bị di động Cả Microsoft cũng đã vào cuộc với phần mềm Microsoft Mobile Messenger.
1.2.5 Các dịch vụ thông tin (Information Services)
World Wide Web từ lâu đã trở thành cơ sở dữ liệu phân tán lớn nhất thế giới Đó là một mỏ thông tin vô giá khi bạn cần tra cứu thông tin Mọi người truy nhập Web vào thời gian rảnh rỗi để tìm kiếm thông tin về lĩnh vực mà mình ưa thích, có thể là các sự kiện mới nhất, các thông tin về tiến bộ khoa học công nghệ hoặc các thông tin giật gân Nói chung, các thông tin trên tràn ngập máy tính của bạn khi bạn truy nhập Web.
Với các thiết bị WAP, việc bị quá tải bởi quá nhiều thông tin như trên sẽ không xảy ra Những hạn chế của thiết bị đầu cuối WAP buộc các thông tin cung cấp
Trang 11qua WAP không những cần phải đơn giản và thân thiện với người sử dụng mà còn cần phải rõ ràng và có những giá trị tức thời Điều quan trọng hơn là người sử dụng WAP mong muốn nhận được những thông tin mình mong muốn tại thời điểm mong muốn và với lượng thông tin Những thông tin này cũng có thể được thay đổi phù hợp với từng người sử dụng, ví dụ như tự động thay đổi ngôn ngữ hoặc thay đổi nội dung theo vị trí của người sử dụng dịch vụ WAP Ví dụ như một người khách du lịch đến New York có thể tìm hiểu về thời tiết tại New York hoặc thông tin về các quán ăn nổi tiếng ở New York cũng như đường đến các quán ăn đó từ vị trí hiện tại của thuê bao.
Khác với những người sử dụng Web, những người sử dụng WAP cần những thông tin thay đổi theo từng phút ví dụ như những thông tin về chứng khoán, những thông tin theo vị trí thuê bao cũng như những thông tin chỉ đường hoặc đơn giản là những trò chơi và giải trí.
Tương tự như với Web, người sử dụng dịch vụ WAP cũng có thể lưu lại các địa chỉ WAP Site thường xuyên truy nhập vào sổ bookmark, lưu trên thiết bị điện thoại di động hoặc lưu trên máy chủ Tính năng này trở nên rất hữu ích đối với những thiết bị di động bị hạn chế về khả năng bàn phím.
Những dịch vụ thông tin sau đây có thể được cung cấp qua giao diện WAP: Tin tức: Các tin tức xã hội, tài chính, chính trị, tin thể thao có thể cung cấp cho
người sử dụng dịch vụ WAP với ngôn ngữ và dạng tùy chọn Một số hãng thông tấn như CNN và Reuters đã cung cấp những thông tin này cho những người sử dụng di động WAP còn cho phép quảng cáo dựa theo sở thích và vị trí của người sử dụng, với thông tin được đẩy (push) thẳng tới thiết bị đầu cuối của người sử dụng.
Bản tin giao thông: Khi kết hợp giữa thông tin dạng văn bản và đồ họa, các
thông tin về tình trạng giao thông trong thành phố có thể được cập nhật đến người sử dụng WAP Ví dụ như thuê bao có thể xác định được tình trạng giao thông, mật độ xe trên các đường cao tốc và có thể định ra được các tuyến đường để tránh kẹt xe giờ cao điểm.
Dự báo thời tiết kết hợp với dữ liệu về vị trí thuê bao: Thông tin dự báo thời
tiết có thể được cập nhật từng phút đến người sử dụng dịch vụ WAP Các hình ảnh dự báo thời tiết chụp từ vệ tinh cũng có thể được cung cấp tuỳ theo vị trí của thuê bao Kết hợp với khả năng thông báo, những bản tin dự báo thời tiết này sẽ báo cho mọi người biết về nguy cơ xảy ra bão, vòi rồng hoặc bão tuyết Các thông tin dự báo thời tiết này có thể được thay đổi tuỳ theo nhu cầu người sử dụng muốn biết thông tin về dự báo thời tiết biển, dự báo thời tiết cho tàu, cho người trượt tuyết hay người thường hay đánh golf Việc nhận được thông tin dự báo thời tiết mọi lúc, mọi nơi sẽ giúp cho người sử dụng đưa ra những
Trang 12quyết định chính xác hơn.
Các dịch vụ thông tin khác: Người sử dụng WAP có thể tìm kiếm số điện
thoại và đường đi đến quán ăn Italia gần nhất, địa điểm có máy đổi tiền ATM gần nhất, lịch tàu chạy … Hơn thế nữa, người sử dụng WAP còn có thể xem các bản đồ trên màn hình điện thoại di động để tìm hiểu về một vùng xa lạ Bản đồ này còn được cập nhật thường xuyên thông tin về tình trạng hiện tại của các tuyến đường.
1.2.6 Mobile Commerce
Thương mại điện tử (E-Commerce) là việc triển khai các hoạt động thương mại qua mạng Internet bằng cách thiết lập thị trường trên mạng và chuyển tiền qua mạng Thương mại điện tử bao gồm việc lưu trữ các kho hàng điện tử trên các Web Site, catalog on-line trên mạng về các mặt hàng rao bán, bao gồm các ứng dụng cho phép thay đổi giá động và triển khai các hoạt động xúc tiến bán hàng, đồng thời bao gồm các giao tiếp đến hệ thống thanh toán, chuyển khoản qua mạng Thương mại điện tử là ứng dụng giao dịch phổ biến nhất và có sức phát triển mạnh mẽ nhất trên mạng Internet
Mobile Commerce (thương mại di động) mở rộng thêm khả năng giao tiếp của thương mại điện tử tới mọi khách hàng sử dụng điện thoại di động, đưa các kho hàng điện tử tới khách hàng ở mọi lúc, mọi nơi Những tiến bộ trong công nghệ xác thực khách hàng cho phép thực hiện một cách an toàn các giao dịch kinh doanh giữa các Web Site bán hàng và thiết bị di động của khách hàng và của nhà cung cấp.
Những ứng dụng chính của thương mại di động bao gồm:
Ngân hàng điện tử: Người sử dụng WAP có thể kiểm tra số dư trong tài khoản
ngân hàng, chuyển tiền giữa các tài khoản Khách hàng sẽ bị cuốn hút bởi khả năng tự do thanh toán ở mọi nơi, không bị ràng buộc bởi các máy tính cá nhân, máy rút tiền ATM hoặc ngân hàng Việc sử dụng thiết bị di động cho các giao dịch ngân hàng làm giảm thiểu chi phí của các nhà băng Có đến 300.000 người hiện đang sử dụng các dịch vụ giao dịch ngân hàng trực tuyến qua các thiết bị di động tại Anh và tất cả các ngân hàng lớn ở Nhật Bản đều có dịch vụ e-banking tương thích với dịch vụ Internet không dây i-mode nổi tiếng của NTT DoCoMo Theo Meridien Research, dự kiến có khoảng 40 triệu người sẽ sử dụng các dịch vụ tài chính điện tử qua thiết bị di động vào năm 2006 và hơn 70% các ngân hàng ở Châu Âu sẽ sử dụng dịch vụ này.
Thanh toán hóa đơn: Thanh toán hóa đơn trực tuyến qua mạng mang lại cơ
hội giảm chi phí in hóa đơn và chuyển hóa đơn đến khách hàng cho người bán hàng Gartner Group dự báo rằng tỷ lệ phần trăm số người nội trợ tại Mỹ thanh toán qua mạng sẽ tăng từ 4% năm 1999 lên 70% vào năm 2009 Việc thanh toán hóa đơn qua mạng sử dụng thiết bị di động có thể thực hiện theo
Trang 13nhiều cách khác nhau Ví dụ như người sử dụng có thể truy nhập Web Site của người bán hàng từ máy tính cá nhân và nhập vào các thông tin cần thiết về số tài khoản tại ngân hàng hoặc số thẻ tín dụng Người sử dụng sau đó có thể sử dụng điện thoại di động để kiểm tra hạn thanh toán và số tiền của hóa đơn cần thanh toán Chỉ cần sử dụng phím bấm của điện thoại di động, người sử dụng có thể xác nhận việc thanh toán từ một tài khoản ngân hàng hoặc một thẻ tín dụng Hơn thế nữa, người sử dụng còn có thể chuyển tiền giữa các tài khoản tại ngân hàng Vào một ngày nhất định trong tháng, người sử dụng có thể nhận được một thông báo nhắc trên điện thoại di động về việc cần phải thanh toán một khoản tiền nào đó.
Mua bán hàng hóa và dịch vụ qua mạng: Thương mại di động cho phép người
sử dụng mua hàng và dịch vụ sử dụng các thiết bị không dây Ví dụ như khách hàng có thể đặt chỗ máy bay, mua vé xem ca nhạc và xem phim, chuyển hoa Với thương mại di động, khách hàng sẽ được phục vụ tốt hơn, hợp với các sở thích cá nhân hơn Ví dụ như với hồ sơ lưu về sở thích cá nhân của khách hàng, máy chủ sẽ đưa ra các lời khuyên thông minh dựa trên sở thích cá nhân của khách hàng, kết quả là khách hàng sẽ được đáp ứng nhanh hơn và hài lòng hơn Việc thanh toán có thể được thực hiện thông qua các tài khoản trả trước, sử dụng tài khoản ngân hàng hoặc thẻ tín dụng hoặc tính thẳng vào hóa đơn cước điện thoại hàng tháng của khách hàng Việc tính thẳng vào hóa đơn cước điện thoại hàng tháng của khách hàng đã trở nên phổ biến ở Nhật Bản và Châu Âu và khách hàng sẽ nhận được một hóa đơn tổng hợp vào cuối tháng.
Hợp đồng: Hợp đồng qua mạng thông qua các thiết bị di động cũng là một
ứng dụng khác của thương mại điện tử Các ứng dụng điển hình của dạng hợp đồng này là các hợp đồng bảo hiểm và đánh bạc qua mạng.
1.2.7 Các dịch vụ giải trí trên WAP
Các dịch vụ giải trí hiện nay là một trong những dịch vụ có số người sử dụng cao nhất trên mạng Internet Một phần ba số người sử dụng Internet hiện nay tham gia vào các trò chơi trực tuyến trên mạng và các công ty chuyên về trò chơi đang cố gắng tấn công vào thị trường trò chơi qua máy điện thoại di động với những hạn chế về băng thông hẹp và hạn chế về khả năng của máy đầu cuối.
Các trò chơi điện tử và giải trí sẽ thích hợp nhất với trẻ em và lứa tuổi vị thành niên, những người luôn cảm thấy sành điệu khi sử dụng những chiếc máy điện thoại di động có thể sử dụng những tính năng đặc biệt Ví dụ như hãng Nintedo đã có kế hoạch phát triển trò chơi Pokemon, trò chơi phổ biến nhất hiện nay đối với trẻ em, cho các thiết bị Game Boy cầm tay Cùng với bộ Adapter cho phép kết nối giữa thiết bị Game Boy và điện thoại di động, người sử dụng có thể chơi qua mạng với những người chơi khác Đồng thời, trò chơi này còn cho phép kết nối tới máy chủ của
Trang 14Nintendo và thay đổi các tính cách khác nhau của Pokemon.
Các trò chơi giao tiếp không đòi hỏi chất lượng dịch vụ cao và băng thông rộng là các ứng dụng thích hợp với WAP và Internet di động Ví dụ như các trò chơi đánh cờ Những người sử dụng mạng i-mode ở Nhật Bản đã rất quen thuộc với trò chơi gà ảo Tamagochi nổi tiếng cũng như các dịch vụ giải trí khác như tử vi, cá cược và dự đoán vận mệnh Một trong những dịch vụ giải trí phổ biến khác của i-mode của NTT DoCoMo là dịch vụ Photonet cho phép người sử dụng chụp ảnh kỹ thuật số, tải lên máy chủ và sau đó tải về máy điện thoại di động.
Các dịch vụ giải trí đầy tiềm năng khác là xổ số và cá cược Ví dụ như một số WAP Site cho phép dự đoán đội nào sẽ vô địch giải bóng rổ nhà nghề NBA của Mỹ hoặc ai sẽ được bầu là tổng thống! Những người đoán đúng sẽ nhận được một phần thưởng nhỏ Ở Hong Kong, điện thoại di động được sử dụng phổ biến để tham gia trò cá ngựa
1.2.8 Các dịch vụ đa phương tiện
Trên mạng Internet, các dịch vụ đa phương tiện (multimedia) cho phép tích hợp âm thanh, hình ảnh đồ họa, dữ liệu dạng văn bản và video Một số dịch vụ đa phương tiện có thể triển khai với các thiết bị không dây bao gồm:
Thư điện tử dạng video và bưu thiếp điện tử: Với các thiết bị đầu cuối di động
thế hệ sau, người sử dụng sẽ có khả năng nhận và gửi Email kèm theo video, âm thanh, nhạc và hình ảnh Trong thư điện tử đó, người sử dụng có thể chỉ đường dẫn URL đến Web Site có hình ảnh và âm thanh Ví dụ như người sử dụng có thể lưu các tấm ảnh gia đình Trong tương lai, máy quay phim (camera) sẽ được tích hợp với thiết bị đầu cuối di động hoặc PDA và giao tiếp với ứng dụng chạy trên thiết bị đầu cuối di động đó Hình ảnh, âm thanh hoặc video sẽ được ghi lại từ máy quay, gửi kèm theo Email và tải lên máy chủ qua mạng không dây.
Hội thảo truyền hình (Video Conference): Các thiết bị có tích hợp video như
điện thoại di động và PDA có thể cho phép cha mẹ theo dõi con cái mà không cần dùng đến máy tính để bàn Nếu như cả hai người tham gia vào cuộc gọi đều sử dụng điện thoại di động đa phương tiện, họ có thể thiết lập cuộc gọi video từ các thiết bị điện thoại di động Ngoài ra, điện thoại di động có gắn video còn cho phép ông bà và các thành viên gia đình ở xa theo dõi một đứa trẻ ra đời ở bệnh viện Một ứng dụng khác của điện thoại di động có tích hợp video là khả năng cho phép nhân viên bảo vệ theo dõi hình ảnh từ các máy quay an ninh qua màn hình điện thoại di động của họ.
Các ứng dụng giải trí đa phương tiện: Công nghệ WAP tích hợp với đa
phương tiện hỗ trợ thông tin mọi lúc, mọi nơi ví dụ như người sử dụng có thể xem trực tiếp một sự kiện quan trọng nào đó như bài phát biểu của tổng thống
Trang 15hoặc xem trực tiếp một trận bóng đá Người sử dụng còn có thể tải về các bài hát mà mình ưa thích từ các WAP Site ca nhạc.
Các trò chơi trực tuyến: Một số loại trò chơi đòi hỏi máy điện thoại di động
phải hỗ trợ đa phương tiện Đặc biệt, người sử dụng có thể tải trò chơi về máy điện thoại di động và sau đó chơi với máy chủ hoặc với những người chơi khác.
Catalog đa phương tiện cho việc mua hàng trực tuyến trên mạng: Catalog đa
phương tiện với màu sắc, hình ảnh, âm thanh và văn bản sẽ trở thành phương tiện quảng cáo rất phong phú cho các hàng hóa bán trên mạng Chúng ta hãy thử tưởng tượng một người sử dụng muốn mua vé xem phim qua mạng từ thiết bị di động không dây Anh ta sẽ có thể xem phần giới thiệu phim qua màn hình điện thoại di động và sẽ dễ dàng chọn phim cần mua vé Một ứng dụng khác của catalog đa phương tiện có thể áp dụng cho người bán bất động sản khi muốn trình diễn cho người mua một đoạn video quay toàn cảnh ngôi nhà muốn bán nhằm tránh việc phải dẫn người mua đến tận nơi để xem ngôi nhà.
1.2.9 Các dịch vụ thoại mở rộng
Công nghệ WAP ra đời đem lại khả năng hội tụ giữa thoại và số liệu hay hội tụ giữa Internet có dây và Internet không dây Hãy thử tưởng tượng khi bạn đang truy nhập Internet từ máy điện thoại di động có hỗ trợ WAP, bạn sẽ nhận được bản tin báo có một cuộc gọi đến Dựa trên mức độ quan trọng của cuộc gọi đến thông qua số gọi đến, bạn có thể trả lời cuộc gọi đó và sau đó lại tiếp tục phiên làm việc trên Internet khi kết thúc cuộc gọi hoặc có thể chuyển tiếp cuộc gọi đó vào hộp thư thoại.
Các dịch vụ thoại mở rộng bao gồm các ứng dụng sau:
Hộp thư di động ảo: Dịch vụ này mang lại khả năng truy nhập ảo vào một hộp
thư trên mạng để lấy các bản tin đa phương tiện như thoại, Email và Fax Một trong những nhược điểm của hộp thư thoại là các bản tin được ghi vào hộp thư thoại một cách tuần tự Giao diện ảo của hộp thư di động ảo cho phép tìm kiếm các bản tin một cách tùy chọn và đặt độ ưu tiên cho các bản tin trong hộp thư.
Xử lý các cuộc gọi đến: WAP, khi tích hợp với công nghệ mạng thông minh
IN (Interligent Network), sẽ mang lại cho thuê bao các cách xử lý khác nhau đối với một cuộc gọi đến Dựa trên số điện thoại của người gọi đến, thời gian cuộc gọi hoặc các tham số đặt trước khác, người sử dụng có thể quyết định trả lời cuộc gọi đó ngay lập tức khi đang truy nhập WAP, chuyển tiếp cuộc gọi đó đến máy điện thoại khác hoặc chuyển vào hộp thư thoại.
Lưu các thông tin về số gọi đến vào sổ điện thoại: Nếu như số điện thoại của
Trang 16người gọi đến hiển thị, thuê bao WAP có thể lưu số điện thoại và tên người gọi vào sổ điện thoại hoặc danh mục địa chỉ liên hệ trên máy điện thoại di động hoặc trên máy chủ Bằng cách này, WAP cho phép hợp nhất các ứng dụng thoại và dữ liệu.
Thiết lập cuộc gọi hội nghị: Điện thoại di động có hỗ trợ WAP cho phép thiết
lập cuộc gọi hội nghị (conference call) giữa nhiều người Với giao diện ảo, người sử dụng có thể theo các hướng dẫn đơn giản trên màn hình để thiết lập một cuộc gọi hội nghị.
Các ứng dụng quản lý dịch vụ thoại khác: WAP hỗ trợ các ứng dụng quản lý
dịch vụ thoại khác Ví dụ như WAP cho phép quản lý một cuộc gọi đang diễn ra Người sử dụng có thể chuyển tiếp cuộc gọi đó đến máy điện thoại khác hoặc chuyển vào hộp thư thoại Một dịch vụ đầy tiềm năng khác là ứng dụng cho phép người sử dụng thiết lập một danh sách cấm các cuộc gọi đến Các bậc phụ huynh có thể cấm điện thoại của con, chỉ cho phép nhận cuộc gọi và gọi đến một số số điện thoại nhất định.
Nhận dạng tiếng nói: Công nghệ nhận dạng tiếng nói ngày càng phát triển
Ngày nay, người sử dụng có thể quay số bằng giọng nói hoặc là sử dụng thực đơn tương tác Nhận dạng tiếng nói rất phù hợp với điện thoại di động khi người sử dụng không thể dùng tay để quay số, ví dụ như khi đang bận lái xe Công nghệ nhận dạng tiếng nói kết hợp với WAP cho phép ra lệnh tìm kiếm một thông tin nào đó trên Internet bằng tiếng nói Sử dụng tiếng nói để soạn thảo và gửi Email là một ứng dụng đang được thử nghiệm.
1.2.10 Các dịch vụ khác trên WAP
Cùng với sự ra đời của công nghệ WAP, các nhà khai thác đang triển khai rất nhiều dịch vụ khác nhau trên thế giới Ví dụ như NTT DoCoMo đã cho triển khai dịch vụ tìm trẻ lạc trên mạng không dây Mỗi đứa trẻ sẽ có một điện thoại dạng đồ chơi Nếu đứa trẻ bị lạc, cha mẹ đứa trẻ đó sẽ tới một máy Fax và nhập vào số điện thoại cùng với mã truy nhập Máy Fax sẽ in ra bản đồ vẽ vị trí của đứa trẻ trong một vùng có bán kính 100m Trẻ cũng có thể bấm vào một nút trên điện thoại để báo cho cha mẹ về vị trí hiện tại của trẻ Tại Phần Lan, người sử dụng có thể trả tiền mua đồ uống hoặc rửa xe bằng máy điện thoại di động Sonera đang triển khai một dự án thử nghiệm cho phép người sử dụng mua hàng bằng các thiết bị không dây.
Một ứng dụng khác liên quan đến chăm sóc sức khỏe Một trong những Web Site trên mạng Internet là LogonHealth cho phép các bác sỹ kê đơn thuốc, kiểm tra các thông tin về sức khỏe bệnh nhân và truy nhập các thông tin khác của bệnh nhân thông qua thiết bị PDA không dây Đơn thuốc sẽ được chuyển tới hiệu thuốc Với thiết bị điện thoại di động có hỗ trợ WAP, người sử dụng sẽ nhận được bản tin thông báo khi đơn thuộc đã được xử lý.
Trang 171.2.11 Dịch vụ cung cấp nhạc chuông, hình ảnh
Trong số các khách hàng dùng điện thoại di động thì một phần không nhỏ là giới trẻ Chính vì thế việc tạo cho điện thoại của mình một phong cách riêng là điều họ luôn luôn mong muốn Việc có được một nhạc chuông hay hình ảnh theo mong muốn của mình thì người dùng điện thoại chỉ cần gửi tin nhắn đến một số dịch vụ nào đó và họ phải trả một phí nhất định tùy thuộc vào nhà cung cấp dich vụ
1.2.12 Tình hình các dịch vụ giá trị gia tăng trên di động ở Việt nam
Trong những năm gần đây ở Việt nam cũng như nhiều nước trên thế giới bùng nổ một loại hình dịch vụ mới đó là các cuộc thi bình chọn bằng việc gửi các tin nhắn văn bản có cú pháp đến một tổng đài nào đó mà tiêu biểu của nó là cuộc thi dự đoán kết quả các trận đấu bóng đá.
Bên cạnh đó là các dịch vụ cung cấp thông tin như thời tiết, giá vàng, tỷ giá ngoại tệ mạnh, kết quả xổ số,…Theo một thống kê thì trong năm 2005 tổng doanh thu của các dịch vụ này trên tất cả các mạng điện thoại di động của Việt nam vào khoảng 140 tỷ đồng.
1.3 Nhiệm vụ của đồ án tốt nghiệp
Như đã trình bày ở phần trước các dịch vụ giá trị gia tăng trên điện thoại di động là rất nhiều và phức tạp Để xây dựng được một dịch vụ nào đó đòi hỏi những điều kiện kỹ thuật về cả phần cứng và phần mềm và là sự kết hợp của nhiều doanh nghiệp,… Trong khuôn khổ đồ án tốt nghiệp này em sẽ tập trung vào hai nhiệm vụ chính sau:
Tìm hiểu cơ sở lý thuyết cho phép xây dựng các dịch vụ giá trị gia tăng trên điện thoại di động
Xây dựng hệ thống cung cấp các dịch vụ nội dung cho điện thoại di động: nhạc chuông, logo, hình ảnh dựa trên tin nhắn SMS, WAP và Web.
Trang 18 WAP
2.1 Dịch vụ nhắn tin ngắn (SMS)
SMS (Short Message Service) là dịch vụ nhắn tin ngắn cho phép gửi và nhận những tin nhắn dạng chữ số và ký tự giữa các thuê bao di động và các hệ thống bên ngoài như thư điện tử, hộp thư thoại
SMSC (Short Message Service Centrer) là trung tâm dịch vụ nhắn tin ngắn SMSC là sự kết hợp giữa phần cứng và phần mềm Mỗi SMSC có một số dịch vụ, mục đích là để gửi và nhận tin nhắn giữa các thuê bao di động Khi người dùng điện thoại gửi tin nhắn cho một ai đó thì trước tiên nó sẽ được gửi đến SMSC SMSC lưu lại tin nhắn đó để chuyển đến người nhận bất cứ khi nào điện thoại người nhận còn trong vùng phủ sóng Nếu thuê bao đó ngoài vùng phủ sóng, tắt máy hoặc không tồn tại thì tin nhắn đó được lưu lại trên SMSC trong một khoảng thời gian đã được cấu hình trước Mỗi một mạng điện thoại phải có tối thiểu một số dịch vụ Ngoài ra SMSC còn có vai trò trong việc tính cước SMSC còn hỗ trợ rất nhiều giao thức kết nối mà hay dùng nhất là giao thức SMPP Chính vì thế sẽ có rất nhiều ứng dụng được xây dựng dựa trên các giao thức đó.
Cell phoneAIR
Cell phone
Cell phoneMSC
Cell phone
Hình 2.1: Kiến trúc mạng cơ bản khi triển khai SMS
Trang 19SME (Short Messaging Entities) là tên gọi của điện thoại di động hay trung tâm dịch vụ.
ESME (External Short Messaging Entities) là tên gọi chung nhất cho tất cả các thiết bị khác với SME nhưng cũng có thể nhận hoặc gửi tin nhắn như: Voice mail, Web, Email,
NetworkCell phone
.OPERATOR WORKSTATION
.PAGING TERMINAL
Hình 2.2: Cơ sở hạ tầng mạng thực hiện các dịch vụ ESME
SMS xuất hiện lần đầu tiên vào năm 1991 tại châu Âu Tổ chức tiêu chuẩn cho các thiết bị số di động của châu Âu – GSM (Global System for Mobile
các thiết bị và mạng di động ngay từ đầu bởi những nhà tiên phong như BellSouth Mobility, PrimeCo, và Nextel,…
Tin nhắn trên các thiết bị di động là một trong những ứng dụng đầu tiên làm thay đổi căn bản từ giao tiếp điện thoại đơn thuần trở thành một giao tiếp phức hợp bao gồm đàm thoại, nhắn tin, duyệt web Nếu như các mạch chuyển dữ liệu lúc đầu được thiết lập để chuyển các giao tiếp thoại thì giờ đây có rất nhiều dạng dữ liệu được chuyển qua chúng
Sự thành công của những ứng dụng mới này được đánh giá bởi sự tiện lợi mà nó đem lại cho người sử dụng Cùng với sự phát triển về phần cứng của các loại điện thoại di động thì các nhà sản xuất điện thoại di động mà đi đầu là hãng Nokia đã đưa ra một chuẩn mới đó là Smart SMS, nghĩa là dựa trên cơ sở của dịch vụ nhắn tin ngắn
Trang 20thì giờ đây người dùng điện thoại di động không chỉ nhắn tin dưới dạng văn bản cho nhau mà còn có thể gửi nhạc chuông đơn âm, hình nền, logo đen trắng Từ năm 2001 các hãng điện thoại khác như Samsung cũng bắt đầu đưa chuẩn trên vào các loại điện thoại của mình.
Các tin nhắn này được gửi dưới dạng tin nhắn nhị phân chứ không phải dạng text Cụ thể là các loại sau:
• Gửi và nhận bussiness card
• Gửi và nhận cấu hình WAP, GPRS, WAP Push • Gửi và nhận lịch
• Gửi và nhận nhạc chuông đơn âm • Gửi và nhận logo, hình ảnh đen trắng • Gửi và nhận multipart message
2.2 Giao thức SMPP
2.2.1 Định nghĩa
SMPP là chữ viết tắt của Short Message Peer to Peer là một giao thức mở và là chuẩn công nghiệp được sử dụng trong việc truyền nhận dữ liệu dưới dạng tin nhắn giữa các External Short Message Entities (ESME), Routing Entities (RE) và Message Centres(MC) MC là cách gọi chung nhất cho các tổng đài tin nhắn SMSC(Short Message Service Centre) Quan hệ giữa các thành phần trên được mô tả qua hình vẽ sau:
Hình 2.3: Mạng các ứng dụng dùng giao thức SMPP
Trang 212.2.2 Phiên bản SMPP
Vì SMPP là một chuẩn công nghiệp theo dạng mở cho nên nó vẫn đang tiếp tục được xây dựng và hoàn thiện Phiên bản 1.0 ra bắt đầu được xây dựng bởi công ty Aldiscon Ltd (bây giờ là Logica Ltd) và được công ty này xây dựng đến phiên bản 4.0 SMS Forum bắt đầu xây dựng phiên bản 3.4 dựa trên phiên bản 3.3 và hiện nay đã cho ra đời phiên bản 5.0
2.2.3 Những công nghệ điện thoại di dộng được hỗ trợ bởi SMPP
Hiện nay SMPP hỗ trợ hầu hết các mạng di động và sau đây là danh sách:• GSM
• UMTS
• IS-95 (CDMA)• ANSI-136• iDEN
2.3.4 Phiên giao dịch SMPP
Trong trình tự sử dụng giao thức SMPP thì một phiên giao dịch SMPP cần được thiết lập giữa ESME và MC hoặc SMPP Routing Entity Việc thiết lập một phiên giao dịch thường được khởi tạo bởi ESME và chạy trên tầng ứng dụng trong mô hình OSI của mạng kết nối theo TCP/IP hoặc X25 Tuy nhiên việc khởi tạo phiên giao dịch cũng có thể được thiết lập bởi MC.
Hình 2.4: Kết nối ở tầng ứng dụng giữa ESME và MC
Trang 22Như đã mô tả ở trên ESME bắt đầu một phiên bằng việc kết tới MC qua mạng TCP/IP hoặc X25 Sự kết nối này được gọi là một phiên giao dịch SMPP và có những trạng thái sau đây:
ESME thiết lập kết nối mạng tới MC nhưng chưa gửi bất kỳ một lệnh yêu cầu kết nối nào cả MC chỉ hỗ trợ kết nối qua giao thức TCP/IP và X25 và chưa có sự thay đổi nào cả.
Hình 2.5: Trạng thái Open
Sau khi kết nối mạng thì ESME gửi một yêu cầu kết nối dưới dạng transmitter (sử dụng một bind_transmitter PDU) và nhận một phản hồi dưới dạng bind_transmitter_resp PDU từ MC ESME có thể gửi một SMS đến MC hoặc chuyển tiếp tới một thuê bao di động hoặc một ESME khác ESME cũng có thể thay thế, truy vấn hay hoãn tin đã gửi.
Hình 2.6: Trạng thái Bound_TX
Sau khi kết nối mạng thì ESME gửi một yêu cầu kết nối dưới dạng receiver (sử dụng một bind_receiver PDU) và nhận một phản hồi dưới dạng bind_receiver_resp PDU từ MC ESME có thể nhận một SMS từ MC được gửi từ một thuê bao di động hoặc một ESME khác hoặc chính MC.
Trang 23Hình: Trạng thái Bound_RXHình 2.7: Trạng thái Bound_RX
Hình 2.9: Trạng thái Outbound
Trang 24Sau đây là hình minh họa khi sử dụng yêu cầu kết nối dưới dạng receiver sau khi thiết lập dưới dạng Outbound:
Hình 2.9: Một phiên thiết lập bởi outbind và kết nối dạng receiver2.3.5 Gửi nhận tin nhắn qua SMPP
Gửi tin nhắn văn bản
Thao tác và tham số được sử dụng
Có 2 thao tác và 2 trường được sử dụng để gửi tin nhắn văn bản đến SMSC
Thao tác
Một ứng dụng ESME có thể gửi tin nhắn văn bản bằng 2 thao tác submit_sm và data_sm Thao tác submit_sm chỉ được sử dụng bởi ESME để gửi mộ tin nhắn ngắn đến SMSC để chuyển tới một SME cụ thể Thao tác data_sm sử dụng để truyền dữ liệu giữa SMSC và ESME, nghĩa là tin nhắn có thể được gửi từ ESME đến SMSC và ngược lại Thao tác này là một thay thế cho 2 thao tác submit_sm và diliver_sm
Tham số
Khi sử dụng thao tác submit_sm nội dung tin nhắn văn bản cần được chèn vào một trong 2 tham số sau: short_message (bắt buộc) và message_payload (tùy chọn)
Sử dụng cả hai tham số cùng một lúc là không được phép Khi sử dụng tham số
short_message thì trường sms_length là chiều dài của dữ liệu phải được thiết lập Nếu tham số message_payload được dùng thì trường sms_length cũng được dùng và được thiết lập giá trị 0 để chỉ ra rằng tham số message_payload.
Trang 25Khi sử dụng thao tác data_sm thì dữ liệu tin nhắn văn bản chỉ được chèn vào tham số message_payload còn tham số sms_length thì không hiện thị.
Với 2 thao tác trên thì có 256 octec được chèn vào tham số short_message còn tham số message_payload có thể chứa tới 64K octec Tuy nhiên chuẩn GSM chỉ hỗ
trợ đến 140 octec chính vì thế thông thường SMSC sẽ không chấp nhận thao tác lớn hơn mà tham số chứa hơn 140 octec, trừ khi nó thiết lập kỹ thuật ghép nối tự động nghĩa là một tin nhắn dài được chia thành nhiều phần mà mỗi phần chứa tối đa 140 octec.
Mã hóa dữ liệu và kích thướcMã hóa dữ liệu
Khi gửi ký tự từ ESME đến SMSC, điều quan trọng nhất là việc mã hóa Việc mã hóa này phải đảm bảo nội dung của tin nhắn được SMSC gửi đến các thuê bao sẽ hiện thị đúng như những gì ESME đã gửi GSM định nghĩa hai chuẩn mã hóa ký tự sau:
GSM Default Alphabet tương tự như nửa đầu bảng mã ASCII ( từ 0 đến 127) Giao thức SMPP thì lại hỗ trợ nhiều loại mã hóa ký tự Thông thường là các loại sau đây:
Trang 26LATIN-1 0x03 GSM mặc định 160
Bảng 2.1: Số tối đa ký tự được gửi ứng với từng loại mã
Tin nhắn dài và ghép nối tin nhắn
Một ứng dụng đòi hỏi gửi một tin nhắn văn bản dài hơn 160 ký tự có thể được gửi bằng cách sử dụng tham số message_payload với kích thước tối đa là 64K Tuy nhiên kích thước tối đa còn phụ thuộc vào SMSC Vì thế có một cách khác để gửi tin nhắn văn bản dài hơn 160 ký tự đó là kỹ thuật ghép nối tin nhắn Một tin nhắn dài trước khi được gửi đi sẽ được chia thành nhiều tin nhắn nhỏ nhưng đến khi điện thoại di động nhận được thì chúng sẽ tự động ghép lại thành một tin nhắn Kỹ thuật này được thực hiện bởi hai phương pháp sau đây:
Phương pháp sử dụng GSM User data header
Theo chuẩn GSM phần dữ liệu tin nhắn có một phần gọi là User Data Header (UDH) Để sử dụng trong việc ghép nối tin nhắn thì UDH cần chứa các thông tin sau:
tách ra được coi là thuộc một nhóm)
Những thông tin sau sẽ giúp cho việc ghép nối các tin nhắn lại với nhau theo đúng thứ tự bất cứ khi nào nhận đủ tất cả các tin nhắn trong cùng một nhóm Để sử dụng tin nhắn dài thì User Data Header Indication (UDHI) phải được thiết lập trong tham
số esm_class và phần UDHI phải được để trước phần dữ liệu.
Bảng 2.2: Thiết lập sử dụng UDHVí dụ trong trường hợp 2 tin nhắn
UDH SM 1 : UDHL=05 IEI(1)=00 IEIDL(1)=03 IED(1)=64 IED(1)=02 IED(1)=01DATA SM 1 : <text part 1-2>
UDH SM 2 : UDHL=05 IEI(1)=00 IEIDL(1)=03 IED(1)=64 IED(1)=02 IED(1)=02DATA SM 1 : <text part 2-2>
User Data Header là một phần của dữ liệu điều đó có nghĩa khi sử dụng UDH thì dung lượng dữ liệu sẽ giảm đi Dung lượng này phụ thuộc vào các mã hóa:
Trang 27Sau đây là danh sách các tham số cần thiết lập trong mỗi tin nhắn ngắn:
Bảng 2.4: Tham số SMPP trong việc ghép nối tin nhắn
Gửi dữ liệu nhị phân, nhạc chuông, logoThao tác và tham số
Có 2 thao tác và 2 trường được sử dụng để gửi tin nhắn dữ liệu nhị phân đến SMSC
Thao tác
Một ứng dụng ESME có thể gửi tin nhắn nhị phân bằng 2 thao tác submit_sm và data_sm Thao tác submit_sm chỉ được sử dụng bởi ESME để gửi mộ tin nhắn ngắn đến SMSC để chuyển tới một SME cụ thể Thao tác data_sm sử dụng để truyền
dữ liệu giữa SMSC và ESME, nghĩa là tin nhắn có thể được gửi từ ESME đến SMSC
và ngược lại Thao tác này là một thay thế cho 2 thao tác submit_sm và diliver_sm.
Tham số
Khi sử dụng thao tác submit_sm nội dung tin nhắn nhị phân cần được chèn vào một trong 2 tham số sau: short_message (bắt buộc) và message_payload (tùy
chọn) Sử dụng cả hai tham số cùng một lúc là không được phép Khi sử dụng tham
số short_message thì trường sms_length là chiều dài của dữ liệu phải được thiết lập Nếu tham số message_payload được dùng thì trường sms_length cũng được dùng và được thiết lập giá trị 0 để chỉ ra rằng tham số message_payload.
Khi sử dụng thao tác data_sm thì dữ liệu tin nhắn nhị phân chỉ được chèn vào tham số message_payload còn tham số sms_length thì không hiện thị.
Với 2 thao tác trên thì có 256 octec được chèn vào tham số short_message còn tham số message_payload có thể chứa tới 64K octec Tuy nhiên chuẩn GSM chỉ hỗ
trợ đến 140 octec chính vì thế thông thường SMSC sẽ không chấp nhận thao tác lớn hơn mà tham số chứa hơn 140 octec, trừ khi nó thiết lập kỹ thuật ghép nối tự động
Trang 28nghĩa là một tin nhắn dài được chia thành nhiều phần mà mỗi phần chứa tối đa 140 octec.
Mã hóa
Một ứng dụng ESME sử dụng mã nhị phân để gửi dữ liệu không phải dạng ký
tự như nhạc chuông hay logo Để làm được việc này thì tham số data_coding phải được thiết lập giá trị 0x04
UDH (User Data Header)
Ở phần trước đã trình bày qua về UDH trong việc ghép nối tin nhắn trong trường hợp tin nhắn dài.Ngoài ra UDH cho phép người dùng gửi dữ liệu theo định dạng đặc biệt như nhạc chuông hay logo.
Sau đây là việc gửi nhạc chuông qua việc gửi 2 tin nhắn ngắn:
UDH SM 1 : UDHL=0B IEI(1)=05 IEIDL(1)=04 IED(1)=15810000 IEI(2)=00 IEIDL(2)=03
0B là tổng chiều dài của UDH
0504158100000 nghĩa là địa chỉ ứng dụng dưới dạng 16 bit với cổng đích là 1581 và cổng khởi tạo là 0000
0003010201 cho biết tin nhắn được tách làm 2 và đây là tin nhắn thứ nhất.
Hiện nay có rất nhiều sản phẩm SMS Gateway có bản quyền như Exomi SMS
Trang 29Gateway, NowSMS và phần mềm mã nguồn mở như Kannel chạy trên nền tảng hệ điều hành Linux Các sản phẩm này cho phép người ta xây dựng các hệ thống giá trị gia tăng trên điện thoại di động mà không cần phải quá quan tâm đến chi tiết của các giao thức gửi nhận tin nhắn mà họ sử dụng.
2.3.2 Kannel SMS Gateway
Giới thiệu
Kannel là một phần mềm mã nguồn mở được khởi tạo bởi Wapit Ltd vào tháng 6 năm 1999 và được tiếp tục phát triển cho đến nay bởi Kannel Group Kannel hoạt động như là một SMS Gateway và WAP Gateway Ngoài ra nó còn có thể hoạt động như một Push Proxy Gateway Phiên bản mới nhất tính tới thời điểm hiện tại là 1.4.0 Tháng 7 năm 2001, Kannel là phần mềm đầu tiên được WAP Forum chứng nhận là WAP 1.1 gateway và đến tháng 10 năm 2004 thì WAP Forum chứng nhận là WAP 2.0 gateway Một điều vô cùng quan trọng là Kannel hỗ trợ rất nhiều chuẩn kết nối tới SMS Center trong đó có SMPP – chuẩn giao thức kết nối được dùng bởi hầu hết các nhà cung cấp dịch vụ ở Việt Nam (Vinaphone, Mobiphone, Viettel mobile).
Kannel được phát triển chính cho môi trường Linux và có thể khá dễ dàng chuyển sang dùng trên các hệ thống Unix Để cài đặt và sử dụng Kannel cần phải có các phần mềm sau trong hệ thống:
Trình biên dịch C và các thư viện phát triển phần mềm cùng các công cụ liên quan.
Gnome-xml (khuyến cáo dùng libxml 2.2.5).GNU Make
POSIX threads (pthread.h).
Với $install_dir là thư mục mà bạn sẽ cài kannel vào.
Sau khi thực hiện thành công, trong thư mục $install_dir/sbin sẽ có các file sau: bearerbox, smsbox, wapbox … File bearerbox là file thực thi chính cho hệ thống
Trang 30của Kannel, nó sẽ kết nối các thành phần khác của Kannel và phụ trách việc kết nối tới các SMS Center File smsbox chính là file đảm nhiệm chức năng gửi nhận tin nhắn SMS File wapbox đảm nhiệm chức năng của WAP Gateway.
Sử dụng Kannel
Để sử dụng Kannel, cần phải tạo ra file cấu hình cho hệ thống File này thực ra là một file văn bản chứa các nhóm của các biến cấu hình của hệ thống Các nhóm được chia ra bởi các dòng không có gì Nhóm cấu hình sẽ được biểu lộ bởi biến group Các dòng chú thích có thể đặt sau dấu # và các dòng này sẽ bị bỏ qua.
Các dòng định nghĩa các biến cấu hình có tên của biến đó, dấu bằng ( = ) và giá trị tương ứng được gán cho biến đó Tên của biến có thể chứa bất kỳ ký tự nào ngoại trừ dấu trắng và dấu bằng ( = ) Giá trị của biến là một xâu có thể có cặp dấu “” bao quanh chúng Cặp dấu “” có tác dụng khi mà giá trị của biến đó có các dấu trắng ở đầu hay cuối (bình thường các dấu này sẽ bị bỏ đi) Sau đây là một ví dụ:
# A do-nothing service.group = sms-servicekeyword = nop
text = "You asked nothing and I did it!"# Default service.
group = sms-servicekeyword = default
text = "No services defined"
Cũng có thể dùng include để ghép các file cấu hình nhỏ vào vị trí dùng include Điều này giúp việc quản trị file cấu hình trong những hệ thống lớn dễ dàng và hiệu quả hơn Chúng ta có thể ghép một file hay tất cả các file trong một thư mục Ví dụ:
#include one fileinclude = "file.conf"#include one directoryinclude = "conf_dir"
Sau đây là cách thiết lập cấu hình cho các nhóm cần thiết để Kannel có thể hoạt động như một SMS Gateway và kết nối tới SMS Center thông qua giao thức SMPP phiên bản 3.4 Để đơn giản chúng ta sẽ chỉ nêu ra những thành phần cần thiết
Trang 31Nhóm core
Đây là nhóm bắt buộc phải có và thường là nhóm đầu tiên trong tệp cấu hình Nhóm này chứa các cấu hình chung cho hoạt động của toàn hệ thống.
Sau đây là danh sách các biến cấu hình trong nhóm này và ý nghĩa của chúng:
admin-port: Cổng mà bearerbox đợi các lệnh điều khiển thông qua giao thức HTTP Các lệnh điều khiển này bao gồm các lệnh như tạm dừng hệ thống (suspend), cho hệ thống tiếp tục chạy (resume), khởi động lại hệ thống (restart), tắt hệ thống (shutdown), xem trạng thái của hệ thống (status) …
admin-password: Mật khẩu cần khi thực hiện các lệnh điều khiển.
smsbox-port: Đây là cổng mà bearerbox sẽ mở ra để đợi kết nối từ các smsbox Tham số này giúp cho nhiều smsbox có thể kết nối tới một bearerbox và smsbox không nhất thiết phải chạy trên cùng một máy tính với bearerbox Nếu không chỉ định tham số này thì bearerbox sẽ không mở cổng để đợi kết nối từ smsbox và vì vậy Kannel sẽ không xử lý bất kỳ một tin SMS nào Trong trường hợp này các chức năng của SMS Gateway sẽ không được sử dụng.
wapbox-port:Cũng giống như smsbox-port, nhưng là cho các kết nối từ wapbox Trong trường hợp không chỉ định các chức năng của WAP Gateway sẽ không được sử dụng.
box-deny-ip: Danh sách các địa chỉ IP không được phép kết nối tới bearerbox Có thể dùng dấu ‘*’ để đại diện cho một số bất kỳ Các địa chỉ được phân cách bởi dấu ‘;’.
box-allow-ip: Danh sách các địa chỉ IP được phép kết nối tới bearerbox, ngay cả khi nó nằm trong danh sách box-deny-ip.
access-log: Tên của tệp sẽ ghi lại các thông tin về việc gửi nhận tin nhắn SMS qua hệ thống.
Nhóm smsc
Nhóm này chứa các cấu hình cho việc kết nối tới SMS Center Nó bao gồm một số các biến cấu hình chung cho tất cả các loại SMS Center và một số biến cấu hình đặc thù cho từng loại SMS Center.
Các biến cấu hình chung:
smsc: Là xâu chỉ định loại SMS Center Với các SMS Center dùng giao thức SMPP thì nó là “smpp”.
Trang 32smsc trùng với bí danh của SMS Center nào thì tin nhắn sẽ được gửi tới SMS Center đó Điều này giúp cho việc gửi tin nhắn hiệu quả hơn Ví dụ khi cần gửi tới 1 thuê bao trong mạng Vinaphone thì việc gửi qua SMS Center của Vinaphone sẽ nhanh hơn nhiều so với việc gửi tin qua SMS Center của Viettel Mobile.
denied-smsc-id: Nếu như không tìm thấy SMS Center có bí danh được chỉ định hay hiện tại không kết nối được tới SMS Center đó thì Kannel tiến hành quá trình chọn đường đi cho tin nhắn Với những tin có smsc chỉ định nằm trong danh sách này sẽ không bao giờ được đi qua SMS Center này Các phần tử được phân cách bởi dấu trắng.
allowed-smsc-id: Chỉ các tin nhắn có smsc chỉ định nằm trong danh sách này mới đi qua được SMS Center này.
allowed-prefix: Danh sách các tiền tố của số điện thoại nhận tin được cho phép qua SMS Center này Ví dụ nếu là SMS Center của Vinaphone thì chúng ta có thể đặt biến này bằng “+8491;8491;091”.
denied-prefix: Danh sách các tiền tố của số điện thoại nhận tin không cho phép qua SMS Center này Ví dụ nếu là SMS Center của Vinaphone thì chúng ta có thể đặt biến này bằng “+8490;8490;090;+8498;8498;098”.
reconnect-delay: Số lượng giây đợi giữa hai lần cố gắng tạo lại kết nối.Mặc định là 10s.
Các biến cấu hình cho các SMS Center dùng giao thức SMPP phiên bản 3.4:host: Địa chỉ IP của máy đang thực thi SMS Center.
port: Cổng dùng để kết nối tới SMS Center.
transceiver-mode: Là giá trị logic, nếu là true thì sẽ cố gắng sử dụng chế độ TRANSCEIVER để kết nối tới SMS Center Đây là tính năng mới của giao thức SMPP phiên bản 3.4 Các phiên bản trước sẽ không hỗ trợ tính năng này Khi dùng nó thì việc gửi và nhận tin nhắn sẽ trên cùng một kết nối và sẽ không cần thiết phải đặt receive-port.
receive-port: Cổng sẽ thực hiện các kết nối RECEIVER tới SMS Center Các kết nối này phụ trách việc kiểm tra tin nhắn mới và lấy về Nó có thể có cùng giá trị với port.
smsc-username: Tài khoản mà nhà cung cấp dịch vụ cung cấp để kết nối tới SMS Center của họ.
smsc-password: Mật khẩu tương ứng với tài khoản được cung cấp.system-type: Thường là VMA (viết tắt cho Voice Mail Activation).
interface-version: Là phiên bản của giao thức SMPP được SMS Center dùng
Trang 33Mặc định sẽ là “34” (phiên bản 3.4) Với phiên bản 3.3 sẽ là “33”.
address-range: Là dải số mà nhà cung cấp dịch vụ cấp cho Ví dụ với công ty VMG là 8xxx (8009 - 8709).
source-addr-ton: Giá trị của TON (Type of number) của địa chỉ gửi tin Bằng 0 cho Unknown (SMS Center sẽ tự xác định) hoặc bằng 1 cho mạng ISDN (Integrated Services Digital Network - mạng được dùng bởi điện thoại số).
source-addr-npi: Giá trị của NPI (Numbering plan indicator) Ý nghĩa cũng giống như TON Việc kết hợp hai giá trị TON và NPI sẽ lựa chọn ra kiểu của địa chỉ là chữ hay số, có phải là số điện thoại theo kiểu toàn cầu (có mã nước hay không), ….Thường thì các thông số này phụ thuộc vào SMS Center của nhà cung cấp dịch vụ.
source-addr-autodetect: Nếu đặt bằng yes Kannel sẽ cố gắng thử các giá trị có thể của source-addr-ton và source-addr-npi.
dest-addr-ton: Tương tự như trên nhưng là cho số điện thoại nhận tin.dest-addr-npi: Tương tự như trên nhưng là cho số điện thoại nhận tin.
connection-timeout: Thời gian tối đa giữa hai lần có trao đổi với SMS Center, mặc định là 300s Nếu vượt quá thời gian này Kannel sẽ coi rằng kết nối đó không còn hoạt động và sẽ tạo lại kết nối Đặt bằng 0 để tắt chức năng này.
Nhóm smsbox
Nhóm này bắt buộc phải được thêm vào tệp cấu hình thì mới có thể sử dụng Kannel như một SMS Gateway Nhóm này chứa các tham số cấu hình cho smsbox Module smsbox khi được thực thi sẽ kết nối tới bearerbox và nhận các tin nhắn từ SMS Center đồng thời cung cấp một giao diện để gửi tin nhắn qua giao thức HTTP.
Sau đây là các biến cấu hình cho nhóm này:
bearerbox-host: Địa chỉ của máy chạy bearerbox
sendsms-port: Cổng dùng để gửi tin nhắn thông qua giao thức HTTP.
sendsms-url: Địa chỉ URL của dịch vụ gửi tin nhắn Mặc định là bin/sendsms
/cgi-global-sender: Nếu như được đặt thì tất cả các tin nhắn gửi ra ngoài sẽ được tự động đặt số điện thoại gửi tin là số này.
access-log: Tên file ghi các thông tin về việc gửi nhận các tin thông qua smsbox này.
reply-couldnotfetch: Tin nhắn trả về cho điện thoại nếu như không thể lấy
Trang 34được nội dung tin nhắn trả về.
reply-couldnotrepresent: Tin nhắn trả về cho điện thoại nếu như không thể đóng gói kết quả trả về thành tin nhắn SMS.
reply-requestfailed: Tin nhắn trả về cho điện thoại nếu như khi không thể kết nối đến dịch vụ HTTP.
reply-emptymessage: Tin nhắn trả về khi nội dung trả về là rỗng.http-request-retry: Số lần cố gắng làm lại khi gọi yêu cầu HTTP bị lỗi.http-queue-delay: Thời gian dừng để đợi giữa hai lần làm lại.
Nhóm sms-service
Nhóm này sẽ cấu hình việc xử lý tin nhắn tới hệ thống Mỗi khi có một tin nhắn tới Kannel sẽ truyền nội dung của tin nhắn tới thành phần khác để xử lý tin Việc truyền này có thể là gọi trực tiếp tệp thực thi của thành phần đó hay một yêu cầu HTTP.
Sau đây các biến cấu hình của nhóm này:
với nhau Một tin nhắn sẽ được phân tách bởi nhiều từ Từ đầu tiên trong nội dung tin sẽ được coi là từ khoá Tin nhắn nào có từ đầu tiên trùng với biến cấu hình này sẽ được xử lý bởi dịch vụ này Ngoài ra việc chỉ định số tham số để truyền cho module xử lý tin nhắn cũng ảnh hưởng đến việc chọn dịch vụ sẽ xử lý tin Nếu có nhiều nhóm sms-service có cùng từ khoá thì Kannel sẽ chọn dịch vụ có số tham số phù hợp đầu tiên với số từ trong tin nhắn đến Nếu như không tìm thấy nó sẽ dùng dịch vụ có từ khoá là default.
name: Tên để phân biệt dịch vụ trong tệp ghi nhật ký (log file).
có thể bao gồm một danh sách các tham số (sẽ nói rõ về các tham số này ở phần sau) Phương thức gọi yêu cầu HTTP ở đây là phương thức GET Nội dung trả về sẽ được coi là tin nhắn sẽ trả về cho người sử dụng.
HTTP ở đây là phương thức POST.
bao hàm các tham số giống như đối với get-url.
text: Nội dung trả về định sẵn Các tham số cũng có thể được sử dụng.
exec: Gọi một lệnh shell để xử lý tin nhắn này và coi nội dung của stdout chính là nội dung trả về Các tham số cũng có thể được dùng ở đây Cách này không
Trang 35được khuyến cáo dùng do vấn đề bảo mật.
accepted-smsc: Chỉ chấp nhận các tin nhắn tới từ smsc có số hiệu (smsc-id) nằm trong danh sách này Các số hiệu cách nhau bởi dấu ‘;’.
catch-all: Nếu được đặt bằng true thì sẽ xử lý tất cả các tin nhắn mà không quan tâm đến nội dung của tin Thường chỉ được đặt bằng true với dịch vụ có từ khoá là default.
max-messages: Nếu như tin nhắn trả về có nội dung vượt quá 160 ký tự thì tin nhắn đó sẽ phải được chia thành nhiều tin nhắn nhỏ Tham số này sẽ quyết định số lượng tin nhắn tối đa có thể gửi trả lại cho người dùng dịch vụ.
concatenation: Nếu được đặt bằng true thì khi gửi tin trả lại có nội dung dài hơn 160 ký tự, tin trả lại sẽ được chia thành nhiều tin nhỏ và các tin này sẽ được gửi đi như một tin nhắn dài Với các loại điện thoại có hỗ trợ tin nhắn dài thì nó sẽ tự động ghép các tin nhắn ngắn lại và coi như là chỉ nhận được một tin nhắn Hầu hết các loại điện thoại ngày này đều hỗ trợ tính năng này.
accept-x-kannel-headers: Chấp nhận các Kannel header (sẽ mô tả chi tiết trong phần sau) trong nội dung trả về trong trường hợp dùng yêu cầu HTTP.
assume-plain-text: Trong trường hợp dùng yêu cầu HTTP, nếu như module xử lý tin không đặt Content-Type cho nội dung trả về thì nó sẽ được xử lý như là dữ liệu nhị phân (kiểu application/octet-stream) Nếu đặt biến này bằng true thì trong trường hợp này dữ liệu trả về sẽ được coi là plain/text và được xử lý như là tin nhắn văn bản (text message).
omit-empty: Nếu biến này được đặt bằng true thì khi nội dung trả về là rỗng Kannel sẽ không gửi trả người dùng tin nhắn có nội dung được đặt trong biến cấu hình reply-emptymessage của nhóm smsbox Người dùng sẽ không được gửi trả bất cứ tin nhắn nào Thường được dùng nếu hệ thống muốn tự gửi tin nhắn (thông qua giao diện gửi tin qua các yêu cầu HTTP của Kannel) trả lại sau khi đã xử lý mà không trả lại ngay để có thể đóng kết nối hiện tại.
Sau đây là danh sách các tham số có thể truyền cho module xử lý tin nhắn:%k – Từ khoá trong tin nhắn SMS (là từ đầu tiên trong tin nhắn)
%s – Từ tiếp theo trong tin nhắn SMS, bắt đầu từ từ thứ hai, mỗi lần dùng tham số này số thứ tự của từ trong tin sẽ được tăng thêm 1 (lần đầu tiên dùng tham số này là từ thứ 2, lần thứ 2 dùng tham số này sẽ là từ thứ 3 …) Đã xử lý vấn đề các ký tự không được cho phép khi sử dụng URL (URL encoded, ví dụ '+' trở thành '%2B').
%S – Giống như %s, nhưng '*' được chuyển thành '~' (có ích khi tự gõ URL).%r – Toàn bộ các từ chưa được dùng bởi các %s.
%a – Tất cả các từ trong tin nhắn kể cả từ đầu tiên Nếu có nhiều dấu trắng
Trang 36liên tiếp sẽ được chuyển thành còn 1 dấu trắng.
%b – Nội dung của tin nhắn dưới dạng nhị phân.
%t – Thời gian tin nhắn được gửi với cấu trúc "YYYY-MM-DD HH:MM", ví dụ "2006-04-20 14:00".
%T – Thời gian tin nhắn được gửi theo định dạng UNIX epoch timestamp (là một số nguyên chính là số giây tính từ 00:00:00 01/01/1970 cho tới thời điểm hiện tại).
%p – Số điện thoại của người đã gửi tin nhắn này.
%P – Số điện thoại đã nhận tin nhắn này, thường được dùng để phân biệt xem người dùng đã gửi vào số dịch vụ nào trong dải số của mình để có những xử lý phù hợp.
%q – Giống %p, nhưng nếu bắt đầu bằng ‘00’ sẽ được thay thế bằng ‘+’.%Q - Giống %P, nhưng nếu bắt đầu bằng ‘00’ sẽ được thay thế bằng ‘+’.%i - smsc-id của kết nối đã nhận tin nhắn này.
%I - SMS ID của chính tin nhắn này (nằm ở trong cấu trúc của tin nhắn).
%d – Giá trị của bản ghi thông tin truyền nhận (delivery report) Sẽ nói chi tiết hơn ở phần riêng cho Delivery Report.
%n – Tên của sendsms-user hay sms-service.
%c – Cách số hoá tin nhắn: 0 (mặc định, 7 bits), 1 (7 bits), 2 (8 bits) hay 3 (Unicode).
%C – Bộ chữ cái của tin nhắn: cho các tin nhắn bình thường thì sẽ là: "GSM" (mã là 1), "binary" (mã là 2) or "UTF16-BE" (mã là 3) Nếu tin nhắn đã số hoá lại thành công từ Unicode bộ chữ sẽ là "ISO-8859-1".
%u – udh (User Data Header) của tin nhắn đến.
password: Mật khẩu tương ứng với tài khoản này.
name: Tên được dùng để phân biệt khi ghi nhật ký (file log).
user-deny-ip: Danh sách các ip không được gửi tin nhắn bằng tài khoản này.
Trang 37user-allow-ip: Danh sách các ip được phép gửi tin nhắn bằng tài khoản này.forced-smsc: Tin nhắn khi gửi bằng tài khoản này bắt buộc phải gửi qua SMSC có smsc-id trùng với biến này.
default-smsc: Tin nhắn khi gửi bằng tài khoản này sẽ được gửi qua SMSC có smsc-id trùng với biến này đầu tiên Nếu tại thời điểm gửi kết nối tới SMSC này bị ngắt thì Kannel sẽ thử với các SMSC khác Biến này sẽ không có ý nghĩa nếu đặt biến forced-smsc.
default-sender: Biến này sẽ được đặt là số điện thoại đã gửi tin này nếu như không được đặt bởi tham số dùng khi gửi tin.
max-messages: Giống với trong nhóm sms-service nhưng là cho tài khoản này.
concatenation: Giống với trong nhóm sms-service nhưng là cho tài khoản này.dlr-url: URL sẽ được gọi khi có thông tin về việc chuyển tin nhắn (delivery report) của hệ thống và tham số dlr-mask được đặt Có thể xem kỹ hơn ở phần sau.
split-chars: Ký tự dùng để phân cách các tin nhắn nếu như muốn gửi nhiều tin nhắn bằng cùng một yêu cầu HTTP.
Cách gửi tin nhắn thông qua giao diện HTTP của Kannel
Phần này sẽ trình bày cách để gửi tin nhắn thông qua giao diện HTTP của Kannel Để gửi tin nhắn cần phải gửi tới một yêu cầu HTTP tới Kannel URL đó sẽ bắt đầu bằng giá trị của biến sendsms-url trong nhóm smsbox Sau đó là các tham số nếu dùng phương thức GET, hoặc phần HTTP header sẽ chứa các tham số dưới dạng X-Kannel-header nếu sử dụng phương thức POST Sau đây là một ví dụ url gửi tin nhắn thông qua giao diện này:
Sau đây là danh sách các tham số với X-Kannel-header tương ứng có thể được dùng để gửi tin nhắn:
username hay user - X-Kannel-Username.password hay pass - X-Kannel-Password.from - X-Kannel-From.
to - X-Kannel-To.
text - Nội dung của yêu cầu HTTP.
charset - Trùng với trường charset ở Header Content-Type của yêu cầu HTTP.
Trang 38udh - X-Kannel-UDH.smsc - X-Kannel-SMSC.
dlr-mask - X-Kannel-DLR-Mask.dlr-url - X-Kannel-DLR-Url.Sau đây là ý nghĩa của các tham số trên:
username hay user: Tên của tài khoản, tài khoản này phải được tạo ra bằng một nhóm sendsms-user.
password hay pass: Mật khẩu tương ứng với tài khoản trên.
from: Số điện thoại sẽ được coi là số điện thoại gửi tin nhắn này Thường dùng để chọn số gửi trong dải số được cung cấp.
text: Nội dung của tin Phải được chuẩn hoá cho việc sử dụng URL (URL encoded).
tham số dlr-mask thì URL này sẽ được gọi.Sau đây là một ví dụ về file cấu hình của group = core
admin-port = 10000#sms section
smsbox-port = 10001#others
admin-password = xxxadmin-deny-ip = "*.*.*.*"
Trang 39admin-allow-ip = "127.0.0.1"box-deny-ip = "*.*.*.*"box-allow-ip = "127.0.0.1"unified-prefix = "+84,0"access-log = "access.log"# SMSC CONNECTIONS# include all smpp configure
include = "/programs/kannel/sbin/smpps"# SMSBOX SETUP
group = smsbox
bearerbox-host = localhostsendsms-port = 8068access-log = "access.log"http-request-retry = 3http-queue-delay = 10
reply-couldnotfetch = "Xin loi ban, hien tai dich vu dang duoc sua chua Xin vui long thu lai sau."
reply-couldnotrepresent = "Xin loi ban, hien tai dich vu dang duoc sua chua Xin vui long thu lai sau."
reply-requestfailed = "Xin loi ban, hien tai dich vu dang duoc sua chua Xin vui long thu lai sau."
# SEND-SMS USERSgroup = sendsms-userusername = xxxpassword = xxxmax-messages = 3concatenation = true#user-deny-ip = "*.*.*.*"#user-allow-ip = "127.0.0.1"# SERVICES
# there should be default always
Trang 40group = sms-servicekeyword = default
get-url= "http://111.111.111.111:1111/newsms?send=%p&type=%P&smscid=%i&time=%T&content=%a"
omit-empty = yescatch-all = truemax-messages = 3concatenation = true
2.4 GSM Modem và các loại điện thoại chuẩn GSM
Việc sử dụng tin nhắn SMS vào mục đích tra cứu, cung cấp thông tin hoặc điều khiển hệ thống có thể thực hiện mà không cần có một số điện thoại dịch vụ mà các nhà cung cấp sóng điện thoại cung cấp Việc đó có thể thực hiện được nhờ một GSM Modem hay một loại điện thoại chuẩn GSM hỗ trợ lập trình AT Command Các thiết bị phần cứng này có thể kết nối trực tiếp với máy tính và cho phép lập trình để gửi và nhận cũng như xử lý tin nhắn dưới dạng tin nhắn văn bản thông thường cũng như dưới dạng tin nhắn thông minh Các loại thiết bị này có thể thực hiện vai trò như một tổng đài dịch vụ giả lập Có thể kể tên một số loại GSM Modem và điện thoại chuẩn sau đây: Modem Siemens MC35, điện thoại Nokia 8310, 6100, 6610, 7250, 6230,…Sony Ericson T68, T610…
Để sử dụng các GSM Modem hay các loại điện thoại chuẩn GSM hỗ trợ AT Command chúng ta cần thiết phải làm các bước sau đây:
Mua các thiết bị GSM Modem hay loại điện thoại chuẩn cùng với dây cáp nối qua cổng COM, USB hoặc kết nối qua hồng ngoại hay Bluetooth.
Kết nối các thiết bị với máy tính và cài đặt phần mềm cho modem Các phần mềm này được cung cấp bởi các nhà sản xuất thiết bị đó.
Sử dụng phần mềm có sẵn hoặc lập trình để gửi nhận tin nhắn từ điện thoại vào máy tính.
Xây dựng các ứng dụng xử lý tin nhắn.
2.5 WAP
WAP (Wireless Application Protocol - Giao thức ứng dụng không dây) là một tiêu chuẩn dùng cho thông tin di động WAP cho phép các thiết bị di động như máy điện thoại di động, PDA (Personal Digital Assistant), máy nhắn tin, truy nhập và lấy các thông tin từ các nguồn khác nhau, chủ yếu là từ các Website.
WAP, theo định nghĩa của WAP Forum, là những chỉ tiêu kỹ thuật mang tính mở, toàn cầu, cho phép người sử dụng di động dùng các thiết bị không dây dễ dàng