Thông báo
Fibo
  1. Hướng dẫn chmod website vô hiệu hóa local attack (read file via symlink) hoàn toàn với host đặt tại Fibo
  2. Thông báo về qui định SPAM tin quảng bá và nội dung tin quảng bá
  3. Thông báo thay đổi đơn giá mới của Mobi và Vina
  4. Thông báo khách hàng dùng SMS Gateway [17/3/2010]

Ra mắt hệ thống tra cứu điểm thi 2010 của Fibo

Thông báo thanh toán doanh thu SMS tháng 3/2010

Trả lời
Old 04-11-2008, 12:06 AM   #1
[CTV]ttchau264
 
Status: Hỗ trợ khách hàng
Tham gia ngày: Jun 2008
Bài gởi: 555



Default Hướng dẫn sử dụng SMS Gateway cho người mới bắt đầu!

Dạo này thấy nhiều bạn vào đây hỏi về vấn đề SMS quá, đi support hoài cũng mệt, nên mình viết 1 bài hướng dẫn ở đây. Các bạn vào xem, nha!

Bài viết sẽ gồm các phần

1. Giới thiệu về FiboSMS Gateway, chi phí, lợi nhuận.
2. Cách đăng ký và tìm hiểu về khái niệm đầu số, tiếp đầu ngữ, trạng thái, và trang xử lý!
3. Áp dụng bước 2 để tạo 1 SMS Gateway đơn giản
4. Khai triển tiếp 1 code thứ 2
5. FAQs - Các vấn đề nảy sinh và 1 số vấn đề khác!

Đó là nội dung mình sẽ đưa lên cho các bạn.
Vì gồm nhiều phần, nên mình cần thời gian nhất định để viết!
Mình sẽ cố gắng hoàn thành nhanh cho các bạn!

thay đổi nội dung bởi: tct, 28-08-2009 lúc 10:34 AM
ttchau264 is offline   Trả Lời Với Trích Dẫn
Old 04-11-2008, 01:14 AM   #2
[CTV]ttchau264
 
Status: Hỗ trợ khách hàng
Tham gia ngày: Jun 2008
Bài gởi: 555



Default

I. Giới thiệu về FiboSMS Gateway, chi phí và lợi nhuận

1/ Giới thiệu:
FiboSMS gateway là 1 tương tác giữa nền tảng Web và SMS. Hệ thống sẽ xử lý các tin nhắn đến và trả về số di động của người nhắn 1 tin phản hồi!
FiboSMS Gateway được sử dụng nhằm kinh doanh, và tạo thêm thu nhập cho các bạn.
Các ứng dụng cơ bản của SMS Gateway: tải nhạc chuông, hình nền, truyện vui, xem bói, lời hay ý đẹp.... hay tích hợp vào diễn đàn như đăng ký nhanh, đổi tên nhanh, ủng hộ diễn đàn....

2/ Nguyên tắc hoạt động
SMS Gateway (sau này mình viết tắt là SG) hoạt động như thế nào:
  • Đầu tiên, khách hàng sẽ nhắn 1 tin, với nội dung theo đúng 1 cú pháp nhất định nào đó, và gửi đến 1 số điện thoại (nằm trong hệ thống số mà Fibo SG hỗ trợ).
  • SG sẽ xử lý tin nhắn vừa nhận được.
  • Trước hết, SG sẽ kiểm tra xem, cú pháp tin nhắn (bao gồm tối thiểu keyword và tiếp đầu ngữ) có đúng hay không, và có được đăng ký hay chưa (cú pháp bắt buộc này mình sẽ nói tiếp ở phần sau).
  • Trường hợp 1: Nếu cú pháp hợp lệ, và đã có đăng ký cho cú pháp đó, SG sẽ chuyển toàn bộ dữ liệu về tin nhắn đó đến trang xử lý được đăng ký ở trên. Trang xử lý này là 1 code được lập trình trên nền web động (như PHP, ASP...).
    • Đến lúc này, việc xử lý sẽ thuộc về trang code. Tùy nhu cầu mà các bạn có thể code cho phù hợp.
    • TRang code đó, sau khi xử lý xong, sẽ phải trả về cho SG 1 nội dung hồi đáp, đúng cú pháp.
    • SG nhận nội dung đó và kiểm tra xem nội dung trả về có đúng hay không, nếu đúng sẽ gửi nội dung 1 web trả về vào số điện thoại của người gửi. Nếu không, sẽ trả về nội dung là "Lỗi xử lý tin nhắn" cho người đó!
  • Trường hợp 2: Nếu cú pháp không hợp lệ, lúc này, tin ửi đến sẽ không được đưa đến 1 trang web xử lý nào cả, mà SG sẽ trả về ngay cho khách hàng 1 tin nhắn với nội dung là "Lỗi cú pháp tin nhắn" (hay giống thế, mình quên mất rồi )

3/ Các chi phí phải trả cho dịch vụ SG của Fibo?

Có 2 loại chi phí các bạn cần phải biết đến
Đó là chi phí khởi tạochi phí trong mỗi tin nhắn mà các bạn nhận được!

Chi phí khởi tạo


Hiện tại, Fibo đưa ra cho bạn 2 sự lựa chọn!
a. Sử dụng keyword (từ khóa) Free do Fibo cung cấp
b. Sử dụng keyword cá nhân

Để hiểu rõ hơn, mình sẽ nói về keyword (từ khóa).
Keyword là gì? Đó chính là yêu cầu bắt buộc đầu tiên trong nội dung tin nhắn mà khách hàng nhắn đến!
keyword dùng để xác định loại dịch vụ mà bạn dùng.
Ví dụ: Các bạn thường nghe quảng cáo
Trích:
<table width="100%" border="0" cellpadding="6" cellspacing="0"> <tbody><tr> <td class="alt2" style="border: 1px inset ;"> "Soạn tin RCV X Y, rồi gửi đến số xxxx, với RCV là từ khóa bắt buộc của chương trình, X là đáp án mà bạn chọn, Y là số nười có cùng ý kiến với bạn". </td> </tr> </tbody></table>
Ở đây RCV chính là từ khóa, hay còn gọi là keyword.

Bây giờ giới thiệu tiếp về sự lựa chọn của bạn nhé

a. Sử dụng keyword (từ khóa) Free do Fibo cung cấp

Bạn sẽ có 3 loại keyword để lựa chọn: FIBO, SMS và REG.
Đối với keyword SMS và REG, bạn cần vào phải đăng ký mới có được
Đăng ký keyword SMSĐăng ký keyword REG

Khi sử dụng các Keyword này, bạn sẽ không phải mất 1 khoản chi phí nào cả.
Từ việc đăng ký, tạo tài khoản, và thiết lập cấu hình tin nhắn đến.

b. Sử dụng keyword cá nhân (tùy chọn)
Như ví dụ ở trên, các bạn thấy RCV là 1 từ khóa, là viết tắt của từ Rung Chuông Vàng. Khi muốn nhắn tin đến chương trình Rung Chuông Vàng, người chơi nhớ ngay đến RCV, đó chính là thế mạnh mà loại từ khóa này mang lại.
Bạn sở hữu web vuihoc.info? Bạn sẽ rất thích từ khóa VUIHOC hay VHI phải ko nào?
Và, nếu bạn muốn như vậy thì bạn vui lòng trả
  • 10USD cho phí cài đặt đầu số lúc ban đầu (1 lần duy nhất)
  • 5USD để duy trì mỗi tháng
Và cũng chỉ phải trả như thế thôi, không thêm các chi phí nào khác!

Chi phí trong mỗi tin nhắn


Để có được 1 tin nhắn, bạn cần phải nhờ vào 2 dịch vụ, và bạn cũng phải trả tiền cho 2 dịch vụ này
  • Chi phí trả cho Telco + chủ sở hữu đầu số ( Vina, Mobi, Viettel, SFone….)
  • Chi phí phải trả cho dịch vụ SG của Fibo
Các bạn tham khảo http://www.fibosms.com/index.php?page=smsgateway để biết số tiền mà bạn phải trả tương ứng nhé!

Tất nhiên, bạn hoàn toàn chịu các chi phí về thuế thu nhập, hay thuế VAT từ việc kinh doanh của mình! Ở đây, mình chỉ nói các khoản phí mà bạn phải trả cho FIBO mà thôi!

4/ Lợi nhuận của tôi được tính như thế nào?

Sau khi biết các chi phí phải trả, thì các bạn dễ dàng tính ra lợi nhuận thôi.
Lợi nhuận sẽ được tính tự động trong trang đều khiển của các bạn.
Nhưng mình đưa ra 1 ví dụ để các bạn dễ hiểu hơn trước khi bắt đầu.
Mình sẽ chỉ tính lợi nhuận từ việc nhắn tin, và trừ chi phí cho mỗi tin nhắn.
Còn chi phí cài đặt đầu số và duy trì thì không liên quan đến việc nhận được tin nhắn nhiều hay ít nhé!

Ví dụ, các bạn chọn đầu số 8222.
Ứng với đầu số này, cước của 1 tin nhắn là 2.000 VND.
Và bạn nhận được 1.000 tin nhắn trong tháng!

Trước hết, Chi phí trả cho Telco + chủ sở hữu đầu số cho mỗi tin nhắn với đầu số 8222 là 667 đồng, vậy các bạn còn 1333 đồng.

Các bạn nhận được 1.000 tin nhắn, tức là < mức 40.000 tin, do đó, các bạn sẽ được thanh toán 70% phần còn lại đó.
Lúc này, lợi nhuận của bạn sẽ bằng

1333 x 70% x 1.000 = 933.100 đồng!

5/ Hiện tại Fibo hỗ trợ các đầu số nào?

Hiện tại, đối với các keyword free, Fibo chỉ hỗ trợ cho đầu số 8x22.
(x = 1 đến 7)
Các đầu số khác sẽ sớm trở lại trong thời gian tới.


6. Hình thức thanh toán :

Việc thanh toán sẽ được thực hiện dựa trên các yếu tố sau
  • Số dư tài khoản tối thiểu = 100.000 vnd
  • Hai bên đồng ý về chí phí chính xác trong quá trình đối soát cước hằng tháng ( sai số cho phép = 1% )
  • Chi phí sẽ được thanh toán sau 90 ngày kể từ lúc kết thúc 01 tháng kinh doanh
  • Vd :
    • Bạn kinh doanh từ ngày 1/8/2008 – 31/08/2008
    • Từ ngày 1/9 - 7/9 Fibo sẽ tiến hành đối soát cước với bạn ( lần 1 )
    • Fibo làm công văn đối soát cước với Telco ( Vina, Mobile, Viettel, SFone, HTMobile, EVN…)
    • 30/09/2008 :
      • Fibo sẽ nhận được văn bản đối soát cước của toàn bộ đối tác Telco ( sau một quá trình đối soát, kiểm tra, mất rất nhiều thời gian…)
      • Fibo sẽ đối soát cước lại với bạn 1 lần nữa ( lần 2 )
    • 30/11/2008 :
      • Fibo nhận được chi phí từ Telco ( 02 tháng từ khi đối soát cước thành công, Fibo mới nhận được chi phí từ Telco do các thủ tục kế toán của các Telco quy định)
      • Fibo tiến hành thanh toán chi phí cho bạn

thay đổi nội dung bởi: ttchau264, 04-11-2008 lúc 01:32 AM
ttchau264 is offline   Trả Lời Với Trích Dẫn
Old 04-11-2008, 01:34 AM   #3
[CTV]ttchau264
 
Status: Hỗ trợ khách hàng
Tham gia ngày: Jun 2008
Bài gởi: 555



Default

II. Cách đăng ký và tìm hiểu về khái niệm đầu số, tiếp đầu ngữ, trạng thái, và trang xử lý!

Trước hết, các bạn đọc quy định sử dụng dịch vụ tại
http://www.fibosms.com/index.php?page=quidinhsudung
1. Đăng ký
Giờ bắt đầu đăng ký nhé

1. Các bạn vào web http://www.fibosms.com/
2. Nhấn vào nút Đăng ký thành viên, 1 trang đăng ký sẽ hiện ra, các bạn cần điền đầy đủ thông tin vào form trên, lưu ý Họ tên phải chính xác, nếu không Fibo sẽ không thể thanh toán cho bạn. Nội dung điền sẽ tương tự như sau



Sau khi nhập đầy đủ thông tin, các bạn nhấn Enter, hệ thống sẽ gửi 1 email chứa link kích hoạt!
Các bạn mở mail và click vào link kích hoạt đó. Bạn sẽ tây1 bảng chào mừng, có dạng



Vậy là bạn đã đăng ký thành công rồi!
Chú ý cái chữ màu đỏ: CL1746 đó chính là mã số của bạn.
Sau này. bạn dùng mã số này, và password đã nhập lúc đăng ký để login vào tài khoản!

2. Tìm hiểu về Client CP

Sau khi đăng nhập thành công, các bạn sẽ vào Client CP, đây là nơi để các bạn thiết lập cấu hình tin nhắn đến ,kiểm tra các tin nắn đã nhận, các tin nhắn không thành công, thống kê doanh số.... nói chung là tất cả đều nằm ở đây

Sẽ có 1 menu như thế này


Đó là tất cả những gì các bạn có thể sử dụng cho SMS Gateway của mình!

cái này các bạn tự tìm hiểu nha!
Mình trích sơ nhé!

Danh sách tin nhắn đến
Thống kê cho các bạn danh sách tin nhắn gửi đến theo đúng cú pháp mà bạn thiết lập

Tin nhắn gởi đi: thống kê các tin nhắn được gởi đi từ Gateway đến các số điện thoại!

Báo cáo thống kê
: dùng để xem thông kê về doanh thu, chi phí và lợi nhuận của bạn!

Tài khoản Thông tin về tài khoản lúc bạn đăng ký, và các đầu số được kích hoạt

Cấu hình tin nhắn đến Cái quan trọng nhất, dùng để thiết lập, chỉnh sửa, xóa các cú pháp tin nhắn! Muốn có được tin nhắn gửi vào, các bạn phải làm cái này! Nó là phần quan trọng nhất quyết định mọi thứ còn lại ^.^

3. Tạo 1 cấu hình cho tin nhắn đến mới và tìm hiểu các khái niệm

Giờ click vào link Cấu hình tin nhắn đến nhé!
Xem thử xem



Rồi, giờ ta thử nhấn nút tạo mới nhé!



Bây giờ ta bắt gặp các định nghĩa mới.
Mình sẽ tiến hành tìm hiểu nhé

a. Dịch vụ
Các bạn thấy, ở mục dịch vụ, có 1 hộp combo box xổ xuống, bên trong nội dung là 8054 (FIBO)... Đây là gì?
Đó chính là đầu số sẽ tiếp nhận tin nhắn (8054), và keyword của chúng ta (FIBO).
Điều này có nghĩa là
Soạn tin
FIBO .... .... .... Gửi đến 8054
Nhưng bây giờ đầu số 8054 đã tạm ngưng sử dụng, vậy mình sẽ chọn cái khác vậy, xem có bao nhiêu cái nha.



Ok, bây giờ mình sẽ chọn dịch vụ 8222 (SMS), và cú pháp tin nhắn lúc này
Soạn tin: SMS ... ... ... gửi 8222


b. Tiếp đầu ngữ

Tại sao lại có thêm cái tiếp đầu ngữ này????
Đơn giản 1 điều, chúng ta đang sử dụng keyword Free, và cùng chung keyword với nhau.
Bạn dùng keyword FIBO, tôi cũng dùng FIBO, bạn dùng SMS, tôi cũng dùng SMS
Vậy làm sao hệ thống nhận ra tôi và bạn???
Chính vì thế, chúng ta phải dùng cái tiếp đầu ngữ này.
Nó là điều bắt buộc thứ 2, phải có trong cú pháp tin nhắn!
Và vui 1 điều (mà cũng phải như vậy thôi), cái tiếp đầu ngữ này là tùy chọn.
Lúc này, mình có thể dùng cái gì mình thích, ví dụ, mình dùng VUIHOC nhé!

Lúc này, cú pháp tin nhắn sẽ là
SMS VUIHOC ... ... và gửi đến 8222

c. Trạng thái

Ta có 3 trạng thái, DRAFT, Active và DeActive!
Nó là gì?
Nó dùng để làm cho cấu hình này của bạn có hiệu lực hay không.
Để tin nhắn hoạt động, bạn buộc phải chọn trạng thái là Active!

4. Trang web xử lý tin
Cái này cũng không thể thiếu, vì không có nó thì SG không biết trả về cho KH nội dung gì hết!
Nó là gì?
Đó là địa chỉ dẫn đến 1 trang web được viết bằng ngôn ngữ động (php cẳng hạn), và trang web đó sẽ xử lý nội dung tin nhắn, để trả về cho KH nội dung thích hợp.
Để viết được trang này, đòi hỏi các bạn phải có kỹ năng lập trình ngôn ngữ web động. Tuy nhiên, các bạn cũng có thể nhờ hỗ trợ ban đầu, hoặc dùng các code đã share trên forum! Mình bàn sâu cái này sau nhé!

Tùy vào code của các bạn mà cú pháp tin nhắn sẽ có dạng khác nhau.
Mấy cái chấm chấm ở trên của mình là có thể có hoặc không. Tùy vào code nha!
Như:
Code đơn giản thì chỉ cần: SMS VUIHOC
Phức tạp hơn tí thì cần: SMS VUIHOC Mã_số_1
vân vân....

Lưu ý: Gateway sẽ không phân biệt chữ hoa chữ thường
Vì thế, dù KH có nhắn tin SMS VUIHOC hay sms vuihoc thì SG cũng sẽ chuyển điều khiển cho trang code của các bạn!!!!


thay đổi nội dung bởi: ttchau264, 07-11-2008 lúc 12:44 AM
ttchau264 is offline   Trả Lời Với Trích Dẫn
Old 04-11-2008, 04:22 PM   #4
[CTV]ttchau264
 
Status: Hỗ trợ khách hàng
Tham gia ngày: Jun 2008
Bài gởi: 555



Default

III. Áp dụng bước 2 để tạo 1 SMS Gateway đơn giản

1. Chuẩn bị:
1. 1 phần mềm để có thể viết code, có thể dùng EmEditor, Notepad++, Frontpage hay không có thì xài cái Wordpad của Windows cũng chẳng sao!
2. Nội dung muốn thực hiện
Ở đây mình dùng ví dụ đơn giản nhất!
Nhắn tin với cú pháp: SMS VUIHOC gửi đến 8222.
Hệ thống sẽ trả về lời cám ơn "Cam on ban da ung ho VuiHoc. Chuc ban nhieu niem vui va hanh phuc".
3. Download code bắt buộc của Fibo. (bạn tìm hiểu thêm tại Yêu cầu chỉnh sửa CODE SMS)
Nếu không có đoạn code này, Gateway sẽ không hoạt động.

2. Bắt tay vào việc
Rồi, bây giờ mở EmEditor ra nhé!

Bây giờ tiến hành xử lý nhé!
Trước hết, muốn xử lý, ta phải có được các thông tin về tin nhắn mà khách hàng gửi đến. Chúng ta cần Request các thông tin này từ Gateway

PHP Code:
$cuphap=$_REQUEST['message'];
$phone$_REQUEST['phone'];
$service=$_REQUEST['service']; 
Ở đoạn code trên, ta đã request 3 thông số

  • cuphap: sẽ chứa toàn bộ nội dung trong tin nhắn khách hàng gởi đến
  • phone: số điện thoại của KH
  • service: mã dịch vụ (cái này không cần quan tâm, ta cần request để trả về chính xác thôi)
Sau khi request xong. Ta đã có nội dung tin nhắn để xử lý
Tiến hành xử lý nhé!

Trong ví dụ này, ta sẽ không cần phân tích nội dung tin nhắn là gì cả.
Vì Khách hàng chỉ cần gửi tin
Trích:
SMS VUIHOC gởi 8222
là gateway sẽ đưa đến trang xử lý của chúng ta.
Chúng ta chỉ cần trả về 1 tin nhắn hồi đáp mà thôi!
Nếu các bạn tham khảo 1 số đoạn ứng dụng mẫu ban đầu, chúng ta sẽ phải kiểm tra lại xem, Keyword có đúng là SMS không, và tiếp đầu ngữ có đúng là VUIHOC không?
Thật ra, việc kiểm tra này chỉ cần thiết, khi các bạn áp dụng 1 trang code duy nhất cho nhiều cấu hình tin nhắn đến!
Ví dụ như:
Bạn muốn dùng 1 code duy nhất để xử lý cho việc
Khách hàng nhắn tin:
Trích:
SMS VUIHOC gửi đến 8222
thì hồi đáp là:
Trích:
Cam on ban da ung ho Vui Hoc Forum
Và khách hàng nhắn tin
Trích:
SMS FIBO gửi đến 8222
Thì sẽ nhận được tin
Trích:
Cam on ban da ung ho Fibo Viet Nam
Nếu xử lý như thế, chúng ta mới cần dùng.
Vì đây là topic dùng cho người mới bắt đầu, không chuyên về code, nên mình sẽ làm thao cách
1 code duy nhất cho 1 cấu hình duy nhất

Ok! Giờ quay lại trang code.
Chúng ta bỏ qua bước xử lý tin nhắn, vì không có gì để xử lý.
Vì thế, chúng ta chỉ cần 1 code để trả về 1 tin nhắn cho KH.
Cấu trúc của lệnh trả về tin nhắn là
PHP Code:
echo '<ClientResponse>
        <Message>
           <PhoneNumber>'
.$phone.'</PhoneNumber>
           <Message>Nội dung tin nhắn trả về</Message>
           <SMSID> -1</SMSID>
           <ServiceNo>'
.$service.'</ServiceNo>
        </Message>
        </ClientResponse>'



Rồi, đơn giản là thế!

Đáp ứng cho tường hợp này của chúng ta, code trên sẽ là

PHP Code:
echo '<ClientResponse>
        <Message>
            <PhoneNumber>'
.$phone.'</PhoneNumber>
            <Message>Cam on ban da ung ho VuiHoc. Chuc ban nhieu niem vui va hanh phuc</Message>
            <SMSID> -1</SMSID>
            <ServiceNo>'
.$service.'</ServiceNo>
         </Message>
         </ClientResponse>'



Các bạn lưu ý 1 điều, nội dung nằm giữa <message> và </message> không được dài quá 160 ký tự, bao gồm luôn cả độ dài của biến.

Ok, bây giờ kết nối hoàn chỉnh các đoạn code lại với nhau. Ta sẽ có 1 file code hoàn chỉnh nha!

PHP Code:
<?php
//Bắt đầu xử lý nội dung tin nhắn
//Nhận dữ liệu từ GW
$cuphap=$_REQUEST['message'];
$phone$_REQUEST['phone'];
$service=$_REQUEST['service'];

//Trả về nội dung để GW gửi tin nhắn
echo '<ClientResponse>
         <Message>
              <PhoneNumber>'
.$phone.'</PhoneNumber>
              <Message>Cam on ban da ung ho VuiHoc. Chuc ban nhieu niem vui va hanh phuc</Message>
              <SMSID> -1</SMSID>
              <ServiceNo>'
.$service.'</ServiceNo>
           </Message>
       </ClientResponse>'
;
 
?>

Xong rồi, bây giờ save file đó lại, đặt 1 tên gì bạn thích!
Ví dụ: donggop.php
Giờ up lên host file này, và 3 file bắt buộc của Fibo trong cùng 1 thư mục.
(có thể up khác, nhưng khi require_once() phải đổi đường dẫn, cứ để chung cho nó tiện)
Ví dụ như bạn up vào thư mục sau trên host của mình:
http://vuihoc.info/donggop

Lúc đó, trong thư mục donggop trên host của bạn, bắt buộc phải có 4 tập tin sau:

  • fibosmsconfig.php : Chứa các hàm kiểm tra .
  • fibosmsserver.txt : chứa danh sách server của fibo.
  • testconnection.php : dùng để server của Fibo kiểm tra connection tới server của khách hàng.
  • donggop.php: Trang xử lý code vừa tạo
Và địa chỉ trang web xử lý tin lúc này của các bạn sẽ là
http://vuihoc.info/donggop/donggop.php

Đến đây là xem như xong 90%. Nhưng lúc này SG chưa được khai báo gì cả, nên hệ thống chưa hoạt động!



3. Tiến hành thiết lập cấu hình tin nhắn đến mới
Có code rồi, up lên host luôn rồi.
Giờ thiết lập thôi!
Vào trang http://fibosms.com
Login vào tài khoản, vào Cấu hình tin nắn đến, chọn Tạo mới. Và điền thông tin như sau:

Dịch vụ: Chọn 8222 (SMS) Lưu ý cái này, nhớ đừng chọn nhầm 8222 (FIBO) hay 8222 (REG), vì nếu chọn như vậy, KH sẽ phải nhắn tin với cú pháp khác
Tiếp đầu ngữ: VUIHOC
Trạng thái: ACTIVE
Trang web xử lý tin: http://vuihoc.info/donggop/donggop.php

Đó là cấu hình như nãy giờ mình nói, tất nhiên các bạn phải thay đổi dịch vụ, tiếp đầu ngữ, và trang web xử lý tin cho phù hợp về site của mình!

Xong thì các bạn nhấn Save nhé!
Lúc này, các bạn sẽ có 1 kết quả tương tự như thế này


Ok. Mọi chuyện đã hoàn tất!
Việc cuối cùng là
Soạn tin: SMS VUIHOC gửi 8222

(Hí hí, sẽ rất cám ơn nếu các bạn soạn và gửi tin nhắn như thế )

Đây là 1 code cực kỳ đơn giản, bài tiếp theo sẽ giới thiệu 1 code phức tạp hơn, đòi hỏi phải xử lý nội dung tin nhắn đến!

Chúc các bạn thành công!

thay đổi nội dung bởi: ttchau264, 04-11-2008 lúc 04:59 PM
ttchau264 is offline   Trả Lời Với Trích Dẫn
Old 05-11-2008, 02:39 PM   #5
[CTV]ttchau264
 
Status: Hỗ trợ khách hàng
Tham gia ngày: Jun 2008
Bài gởi: 555



Default

IV. Khai triển tiếp 1 code thứ 2

Sau bước 3, các bạn đã biết và hoàn thành 1 code đơn gia3n nhất rồi.
Cũng như đã có các file trên host!
Giờ mình sẽ khai triển tiếp 1 code thứ 2 cao cấp hơn nha!
Bây giờ mình làm 1 code thế này, ứng dụng với forum VBB và mod Casino - Shop
(các mod khác thì tương tự nhé)
Ứng dụng:
Soạn tin: SMS DONATE USERID gửi đến 8222
Trong đó:
  • SMS: keyword
  • DONATE: Tiếp đầu ngữ
  • USERID: mã số của user trong Forum, cái mã số này khi bạn click vào username, hiện trên thanh address mấy số cuối cùng đó
Khi KH nhắn tin như thế, tiền trong tài khoản của Forum sẽ tăng lên 1 số nhất định cho user có mã số là USERID!

1. Kiến thức cần có
Ở ứng dụng này, đòi hỏi các bạn ngoài kiến thức về php, cần phải có kiến thức về
+Forum VBB, cái này chắc các bạn biết ít nhiều!
+MySQL: đây là hệ CSDL mà VBB cũng như các host Linux cung cấp.
Vì ở ứng dụng này, chúng ta sẽ truy vấn đến CSDL của VBB, lấy các thông tin cũng như cập nhật lại!

2. Chuẩn bị trước khi code:


Trước khi code, các bạn cần phải vào CSDL của forum, để xem table và column tiền. Tong ví dụ này, Table là user, và column cash.
Tạo 1 code kết nối CSDL:
Để truy vấn vào MySQL, các bạn phải kết nối vào database.
Database này cũng chính là database của forum!
Cấu trúc file này đơn giản như sau:

PHP Code:
<?php
$dbname 
'tên_database';
$link mysql_connect("localhost","tên_user","mật_khẩu") or die("Couldn't make connection.");
$db mysql_select_db($dbname$link) or die("Couldn't select database");
?>
Các bạn mở EmEditor, dán đoạn code rồi save với 1 tên nào đó, ví dụ connect.php nhé!
Cái này mình sẽ không giải thích nhiều, quan trọng nhất là 2 lệnh
mysql_connect() và mysql_select_db()

3. Bắt tay vào code


Có file connect rồi, bây giờ, chúng ta mở Emeditr, và chuẩn bị cho 1 code mới.
Code này tất nhiên sẽ có những đều bắt buộc như code trên nha

PHP Code:
<?php
//Nhận nội dung từ GW
$cuphap=$_REQUEST['message'];
$phone$_REQUEST['phone'];
$service=$_REQUEST['service'];
?>
Bắt đầu suy nghĩ nha, ở ứng dụng này, chúng ta cần phải lấy ra userID phải không? Nếu không có userID, thì sẽ không cộng cho tiền cho tài khoản được.
Các bạn chú ý thấy, cú pháp tin nhắn là
SMS DONATE USERID
Vậy, 1 tin nhắn sẽ có 3 phần khác nhau, và cách nhau bằng dấu cách.
Để ấy được USERID, chúng ta có nhiều cách, mình dùng cách đơn giản nhất, là tách nguyên message trên ra các phần khác nhau, phân biệt bởi dấu cách nhé
Lệnh tách chuỗi sẽ là:

PHP Code:
$tmp=explode(" ",$cuphap); 
Lệnh trên, sẽ tách nội dung trong biến cuphap mà ta đã request, ra thành 1 mảng các phần tử, các phần tử này, được nhận dạng bằng dấu cách do ta explode(" ",$cuphap), sau đó sẽ gán vào biến tmp.
Vậy lúc này, $tmp sẽ là 1 mảng kiểu chuỗi, được bắt đầu từ 0.
Ta sẽ có $tmp[0], $tmp[1], $tmp[2]....

Ví dụ, KH nhắn tin: SMS DONATE 1
Thì:
$tmp[0]='SMS';
$tmp[1]='DONATE';
$tmp[2]='1';

Xong, bây giờ ta sẽ quan tâm đến cái mà ta cần, đó là USERID, bây giờ nó là $tmp[2].

Ta sẽ tiến hành xét xem, KH nhắn tin có đúng cú pháp không nhé! Nghĩa là có USERID trong tin nhắn, hay $tmp[2] khác rỗng.

PHP Code:
if(@$tmp[2]!=NULL)
{
     
//Ok, KH đã nhắn đúng cú pháp, tiến hành xử lý tiếp
}
else
{
    
//Khách hàng không nhắn đúng cú pháp, trả về tin nhắn báo lỗi!

Bây giờ ta báo lỗi trước cái đã, khi KH nhắn tin không có USERID

PHP Code:
echo '<ClientResponse>
         <Message>
              <PhoneNumber>'
.$phone.'</PhoneNumber>
              <Message>Tin nhan sai cu phap, soan SMS DONATE USERID gui 8222 nhe! Xin vui long lien he voi chung toi neu khong biet USERID. Than.</Message>
              <SMSID> -1</SMSID>
              <ServiceNo>'
.$service.'</ServiceNo>
           </Message>
       </ClientResponse>'

Hì, đã lỗi thì không có gì xử lý, nên chỉ echo lại như vậy thôi!
Bây giờ hợp những gì chúng ta đã làm ở trên nhé, để xem ta đã có gì, và làm được gì!
PHP Code:
<?php
//Nhận nội dung từ GW
$cuphap=$_REQUEST['message'];
$phone$_REQUEST['phone'];
$service=$_REQUEST['service'];
//Phân tách cú pháp tin nhắn đến để nhận USERID
$tmp=explode(" ",$cuphap);
//Kiểm tra tin nhắn có đúng cú pháp không
if(@$tmp[2]!=NULL)
{
     
//Ok, KH đã nhắn đúng cú pháp, tiến hành xử lý tiếp
}
else
{
    
//Khách hàng không nhắn đúng cú pháp, trả về tin nhắn báo lỗi!
echo '<ClientResponse>
         <Message>
              <PhoneNumber>'
.$phone.'</PhoneNumber>
              <Message>Tin nhan sai cu phap, soan SMS DONATE USERID gui 8222 nhe! Xin vui long lien he voi chung toi neu khong biet USERID. Than.</Message>
              <SMSID> -1</SMSID>
              <ServiceNo>'
.$service.'</ServiceNo>
           </Message>
       </ClientResponse>'

}
?>
Hì, được 50% rồi đấy. Giờ thì khi KH nhắn tin đến, và không đúng cú pháp ta sẽ báo lỗi.
Việc tiếp theo, ta sẽ viết tiếp code để xử lý khi cú pháp đúng!
Lúc này, ta lại phải kiểm tra 1 tường hợp nữa. Cái USERID mà KH gửi là đúng hay sai? Có USER nào có mã số đó không? Để làm được việc này, ta cần phải connect vào database. Đến lúc cần dùng cái file connect.php rồi đó!

Vì hạn chế mỗi bài viết có 10.000 ký tự nên mình tách ra thành 2 bài nhé!

thay đổi nội dung bởi: ttchau264, 07-11-2008 lúc 03:05 AM
ttchau264 is offline   Trả Lời Với Trích Dẫn
Old 05-11-2008, 02:40 PM   #6
[CTV]ttchau264
 
Status: Hỗ trợ khách hàng
Tham gia ngày: Jun 2008
Bài gởi: 555



Default

IV. Khai triển tiếp 1 code thứ 2 (tiếp theo)
3. Bắt tay vào code (tiếp theo)

PHP Code:
require_once("connect.php"); 
Xong, giờ ta kiểm tra xem USERID đó có ồn tại không?
PHP Code:
$result mysql_query("SELECT * FROM user where userid='$tmp[2]'");
$duplicates mysql_num_rows($result); 
Ta tiến hành querry vào CSDL, chọn tất cả thông tin về những USER có USERID bằng $tmp[2], và trả kết quả vào biến $result. Để querry 1 câu lệnh mysql đừ php, ta dùng lệnh mysql_query() như các bạn thấy đó.
Tiếp theo ta sẽ đếm xem có bao nhiêu kết quả được trả về, nghĩa là có bao nhiêu user có userid = $tmp[2].
Ta sẽ chỉ có 2 trường hợp, hoặc có 1, hoặc không có!
Vì thế, biến $duplicates cũng chỉ có 2 giá trị 0 hoặc 1.
Phân tích tí nhé!
Nếu $duplicates =0 nghĩa là hoặc KH nhắn sai mã số, hoặc mã số đó không tồn tại. Lúc này, ta đơn giản hồi báo 1 tin cho KH là USERID đó không tồn tại!
PHP Code:
                    echo '
                    
                        '
.$phone.'
                        Cam on ban da ung ho VuiHoc.Info. Nhung ma so thanh vien '
.$tmp[2].' khong ton tai!
                         -1
                        '
.$service.'
                    
                '

Còn nếu tồn tại thì sao? Ta sẽ tiến hành cộng điểm cho USER đó, và hồi báo tin nhắn báo đã donate thành công!
PHP Code:
  //xử lý khi userid tồn tại              
                // Đặt biến số tiền tăng thêm
                
$money 2000;
                
// đọc dữ liệu từ MySQL vào biến $row
                
$row mysql_fetch_array($resultMYSQL_ASSOC);
                
// tính số tiền sau khi cộng vào
                
$money $row['cash'] + $money;
                
//Thực hiện lệnh querry để cộng thêm tiền cho user
                
mysql_query("UPDATE user SET cash='$money' where userid=$tmp[2]") or die(mysql_error());

echo 
'<ClientResponse>
        <Message>
           <PhoneNumber>'
.$phone.'</PhoneNumber>
           <Message>Ban da nap tien thanh cong. So tien hien tai cua ban la '
.$money.'. Chuc ban luon vui!</Message>
           <SMSID> -1</SMSID>
           <ServiceNo>'
.$service.'</ServiceNo>
        </Message>
        </ClientResponse>'

Mọi thứ đã xong xui. Giờ tổng hợp lại là ta có code hoàn chỉnh rồi
PHP Code:
<?php
 
//Nhận nội dung từ GW
 
$cuphap=$_REQUEST['message'];
 
$phone$_REQUEST['phone'];
 
$service=$_REQUEST['service'];
//Phân tách cú pháp tin nhắn đến để nhận USERID
$tmp=explode(" ",$cuphap);
//Kiểm tra tin nhắn có đúng cú pháp không
if(@$tmp[2]!=NULL)
 {
      
//Ok, KH đã nhắn đúng cú pháp, tiến hành xử lý tiếp
     //Kết nối vào CSDL
     
require_once("connect.php");
     
//Xác định xem userid có tồn tại không
     
$result mysql_query("SELECT * FROM user where userid='$tmp[2]'");
     
$duplicates mysql_num_rows($result);
     if(
$duplicates == 0)
            {
                 
//Hồi báo khi userid không tồn tại 
            
echo '<ClientResponse>
                    <Message>
                        <PhoneNumber>'
.$phone.'</PhoneNumber>
                        <Message>Cam on ban da ung ho VuiHoc.info. Nhung ma so '
.$tmp[2].' khong ton tai!</Message>
                        <SMSID> -1</SMSID>
                        <ServiceNo>'
.$service.'</ServiceNo>
                    </Message>
                    </ClientResponse>'
;  
            }
            else
            {
                
//xử lý khi userid tồn tại              
                // Đặt biến số tiền tăng thêm
                
$money 2000;
                
// đọc dữ liệu từ MySQL vào biến $row
                 
$row mysql_fetch_array($resultMYSQL_ASSOC);
                
// tính số tiền sau khi cộng vào
                
$money $row['cash'] + $money;
                
//Thực hiện lệnh querry để cộng thêm tiền cho user
                
mysql_query("UPDATE user SET cash='$money' where userid=$tmp[2]") or die(mysql_error());
echo 
'<ClientResponse>
        <Message>
           <PhoneNumber>'
.$phone.'</PhoneNumber>
           <Message>Ban da nap tien thanh cong. So tien hien tai cua ban la '
.$money.'. Chuc ban luon vui!</Message>
           <SMSID> -1</SMSID>
           <ServiceNo>'
.$service.'</ServiceNo>
        </Message>
        </ClientResponse>'
;  
        }
 }
 else
 {
     
//Khách hàng không nhắn đúng cú pháp, trả về tin nhắn báo lỗi!
                
echo '<ClientResponse>
        <Message>
           <PhoneNumber>'
.$phone.'</PhoneNumber>
           <Message>Tin nhan sai cu phap, soan SMS DONATE USERID gui 8222 nhe! Xin vui long lien he voi chung toi neu khong biet USERID. Than.</Message>
           <SMSID>-1/SMSID>
           <ServiceNo>'
.$service.'</ServiceNo>
        </Message>
        </ClientResponse>'
;
 }
 
?>
4. Up lên host và tạo 1 cấu hình mới
Xong, giờ save file lại, ví dụ donate.php, up lên host chung với các file bắt buộc của Fibo nhé, và up luôn file connect.php nha! Giống hôm qua vậy!
Hôm qua ta đã up lên thư mục donggop, thì bay6 giờ vẫn up vào donggop nhé.
Rồi, vậy trong thư mục đóng góp giờ sẽ có 6 file, 4 file hôm qua và 2 file mới up.
(Đảm bảo chắc chắn như thế nhé)
Xong, vào http://fibosms.com, đăng nhập và thiết lập 1 cấu hình tin nhắn mới thôi! Cái này khỏi nhắc lại nhé!

Vậy là xong hết rồi, các bạn đã biết cách thiết lập 1 cấu hình tin nhắn với 1 code tương đối phức tạp, liên quan đến phân tích cú pháp lẫn truy vấn CSDL.
Cứ như thế mà phát triển các ứng dụng khác theo ý mình nhé!

Chúc các bạn thành công!!!

thay đổi nội dung bởi: ttchau264, 05-12-2008 lúc 02:00 AM
ttchau264 is offline   Trả Lời Với Trích Dẫn
Old 07-11-2008, 12:42 AM   #7
[CTV]ttchau264
 
Status: Hỗ trợ khách hàng
Tham gia ngày: Jun 2008
Bài gởi: 555



Default

V. FAQs

Ở đây mình sẽ liệt kê các câu hỏi thường gặp trong quá trình sử dụng sms Gateway!
Sẽ cập nhật khi có câu hỏi mới!

Q: Tôi có thể đặt code xử lý sms trên host Fibo, hay host khác khong nằm trong server của Fibo được không?
A:
Được! Bạn có thể đặt code xử lý ở bất kỳ hosting nào!

Q. Vì sao đôi khi code của tôi không hoạt động, mặc dù cú pháp tin nhắn là như nhau!
A. Bạn cần đảm bảo host chứa code của bạn hoạt động khi có tin nhắn đến! Nếu hosting chứa code của bạn gặp vấn đề, không load được thì SG cũng sẽ không hoạt động!

Q. Bao giờ thì tôi được thanh toán, hình thức thế nào?
A. Bạn xem lại phần I, mục 6.

Q. SG có phân biệt chữ hoa, chữ thường không? Ví dụ sms và SMS, Fibo và FIBO?
A. Hệ thống SG không phân biệt chữ hoa chữ thường, các cú pháp trên được xem là 1!

Q. Hiện tại Fibo SMS Gateway hỗ trợ các mạng điện thoại nào
A. Tùy vào bạn sử dụng đầu số dạng nào mà mạng hỗ trợ khác nhau. Đầu số 8x22 hiện hỗ trợ các mạng Mobi, Vina, Vittel và Sphone. Bạn có thể tham khảo thêm tại http://www.fibosms.com/index.php?page=smsgateway.

Q. Vì sao tôi không nhận được số tiền như công thức tính ở trên?
A. Tùy vào các quy định của nhà cung cấp mạng di động, mà bạn bị trừ lại tiền từ các hoạt động khuyến mãi!

Q. Sao tôi xài Mobiphone (Vina, Viettel...) mà không thể gửi tin nhắn đến dịch vụ để thử?
A. Đó là quy định của nhà cung cấp di động, có thể do sim khuyến mãi, hoặc do phía nhà
cung cấp di động chặn hướng ửi tin của bạn. FiboSMS không liên quan đến việc đó!

Q. Làm sao tôi biết tiếp đầu ngữ muốn dùng đã có ai đăng ký chưa?
A.
Bạn có thể khai báo thử. Nếu đã có người dùng bạn sẽ không thể thiết lập. Chú ý là nếu tiếp đầu ngữ đó được khai báo cho 1 đầu số khác, thì bạn vẫn có thể khai báo lại cho đầu số của mình!

Q. Tôi đã đăng ký xong 1 tài khoản. Khi nào thì tôi có thể bắt đầu sử dụng dịch vụ?
A. Bạn có thể sử dụng ngay sau khi tài khoản được kích hoạt!

Q. Tôi đã thiết lập xong 1 cấu hình tin nhắn đến, khi nào nó có hiệu lực!
A. Sẽ có hiệu lực ngay khi bạn ấu hình xong!

Q. Tôi muốn xây dựng 1 code tải nhạc chuông, hình ảnh, liệu có vấn đề gì phát sinh?
A. FiboSMS Gateway chỉ cung cấp dịch vụ nhận và phản hồi tin nhắn! Bạn hoàn toàn chịu trách nhiệm về thông tin đăng tải của mình!

thay đổi nội dung bởi: ttchau264, 18-11-2008 lúc 02:54 PM
ttchau264 is offline   Trả Lời Với Trích Dẫn
Old 28-08-2009, 10:46 AM   #8
tct
 
tct's Avatar
 
Status: TỔNG THANH TRA
Tham gia ngày: May 2008
Bài gởi: 1,177



Default

Vừa dọn dẹp bài viết để dễ xem hơn

Các bạn có thể reply tại đây nếu có thắc mắc gì liên quan đến việc sử dụng SMS GateWay.

Các vấn đề về viết ứng dụng hoặc yêu cầu các bạn có thể vào chuyên mục Giải pháp & ứng dụng nhé

Chúc các bạn kinh doanh một cách hiệu quả

Thân!
tct is offline   Trả Lời Với Trích Dẫn
Old 23-10-2009, 08:48 PM   #9
vodanh
 
Status: Thành viên
Tham gia ngày: Oct 2008
Bài gởi: 3



Default

tôi muốn sử dụng dịch vụ free gì đó
vào đăng ký tài khoảng rồi và nhận được email kích hoạt rồi nhưng không biết làm gì nữa
chẳng thấy link kích hoạt trong email đâu cả chỉ có cái này thôi
Trích:
Chào bạn Luu Huynh Viet Van
Bạn hoặc ai đó đã sử dụng email này để đăng ký tài khoản trên http://www.fibosms.com
Tài khoản: CL4062

Xin bạn liên hệ với nhân viên bên Công Ty Fibo để: - Cung cấp bản San ( hay hình chụp) chứng minh nhân dân gồm 2 mặt, rõ, đẹp. - Mã số khách hàng lúc bạn đăng ký. - Gửi thông tin của bạn tới support@fibosms.com để kích hoạt tài khoản. Mọi thắc mắc xin vui lòng liên hệ email support@fibosms.com Khi nhận được thông tin của bạn, chậm nhất 24 giờ chúng tôi sẽ kích hoạt tài khoản của bạn.
Diễn đàn trao đổi : http://forum.fibo.vn
Hướng dẫn sử dụng sms cho người mới bắt đầu: http://forum.fibo.vn/showthread.php?t=2233
Y!M : fibosms
chẳng biết phải làm gì tiếp theo nữa
nếu được hướng dẫn tôi nữa nha, free hay tính phí cũng nộp bản scan CMND hả bạn?
làm theo hướng dẫn là coi như đã đăng ký tk free rồi hả bạn
à mà tôi không có tiền mua vBB nên chỉ theo đuổi phpBB nên không biết phải làm sao để chèn vào nữa, nếu được thì hướng dẫn làm với phpBB luôn nha bạn
Cảm ơn trước
Àh mà SG nói cho dễ hiểu là dịch vụ ủng hộ trang web chứ không phải là dịch vụ kinh doanh sms gì hết hả bạn
mình đọc bài của bạn và thấy hơi mơ hồ chuyện này
vodanh is offline   Trả Lời Với Trích Dẫn
Old 23-10-2009, 09:32 PM   #10
[CTV]thuthuatpc
 
Status: Moderator
Tham gia ngày: Aug 2008
Bài gởi: 618



Default

Trích:
Nguyên văn bởi vodanh View Post
tôi muốn sử dụng dịch vụ free gì đó
vào đăng ký tài khoảng rồi và nhận được email kích hoạt rồi nhưng không biết làm gì nữa
chẳng thấy link kích hoạt trong email đâu cả chỉ có cái này thôi

chẳng biết phải làm gì tiếp theo nữa
nếu được hướng dẫn tôi nữa nha, free hay tính phí cũng nộp bản scan CMND hả bạn?
làm theo hướng dẫn là coi như đã đăng ký tk free rồi hả bạn
à mà tôi không có tiền mua vBB nên chỉ theo đuổi phpBB nên không biết phải làm sao để chèn vào nữa, nếu được thì hướng dẫn làm với phpBB luôn nha bạn
Cảm ơn trước
Àh mà SG nói cho dễ hiểu là dịch vụ ủng hộ trang web chứ không phải là dịch vụ kinh doanh sms gì hết hả bạn
mình đọc bài của bạn và thấy hơi mơ hồ chuyện này
Bạn chụp lại 2 mặt của CMND hoặc scan cũng được, rồi đính kèm vào mail (trong mail ghi rõ số tài khoản) gửi tới địa chỉ support@fibosms.com để được kích hoạt.
__________________
Việc học như con thuyền đi trên dòng nước ngược, không tiến ắt sẽ lùi
thuthuatpc is offline   Trả Lời Với Trích Dẫn

Trả lời

Ðiều Chỉnh
Xếp Bài

Quuyền Hạn Của Bạn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code đang Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt
Chuyển đến