สอบถามคำสั่ง AT comand ที่ใช้ในการเติมเงิน ผ่าน Sim900

  • 6 Replies
  • 3575 Views
ผมขียนโปรแกรม ให้ sim900 เติมเงิน พวก 12call Dtac True สำหรับ 12 call ผมใช้ ussd สรุปว่าทำงานได้ดีมาก ไม่มีปัญใด ๆ
แต่พอมา ใช้ Dtac ussd เติมได้บ้างไม่ได้บ้าง เลยลองเขียนผ่าน STK (เมนูในซิม) แต่ไม่สำเร็จสักที  ขั้นตอนสุดท้าย
*PSSTK: "DISPLAY TEXT",1,0,0,0,4,"Message failed",0,0 ไม่ยอมเติม
ขอคำแนะนำหน่อยครับ ส่วน True ยากขึ้นไปอีก เพราะมีเรื่องของ ภาษาไทย ส่งปนกับภาษา eng อีก


[0874118264] [20 บาท] 8:19:05
AT*PSSTK="COMMAND REJECTED",1,16 OK

*PSSTK: "END SESSION"

AT*PSSTK="COMMAND REJECTED",1,16 OK

AT*PSSTK="MENU SELECTION",1 OK

*PSSTK: "SELECT ITEM",0,0,"",0,0,1,0,0,5

AT*PSSTK="SELECT ITEM",1,1,4, OK

*PSSTK: "GET INPUT",1,0,4,0,4,"To Mobile No.",0,0,255,"",9,10,0

AT*PSSTK="GET INPUT",4,0,"0874118264",0,0, OK

*PSSTK: "SELECT ITEM",1,4,"Top up Amount",0,0,1,0,0,11

AT*PSSTK="SELECT ITEM",1,1,4, OK

*PSSTK: "GET INPUT",1,0,4,1,4,"Password",0,0,255,"",4,4,0

AT*PSSTK="GET INPUT",4,1,"7786",0,0, OK

*PSSTK: "DISPLAY TEXT",1,1,1,0,4,"Confirm Top up To 0874118264 Amount 20 Baht",0,0

AT*PSSTK: "DISPLAY TEXT",1,0 OK

*PSSTK: "NOTIFICATION",1,19,1,4,"Sending a message",0,0

AT*PSSTK="NOTIFICATION",19,1

OK

*PSSTK: "DISPLAY TEXT",1,0,0,0,4,"Message failed",0,0

อันนี้เป็นหน้าตาโปรแกรม ที่เขียนแล้วทำงานได้ดี ของ 12call ในระบบ USSD

 

อันเป็น โมดูลที่ใช้ครับ



ผมใช้กับทรูง่ายนะครับส่วนเรื่องภาษาก็ปรับให้รับenเอาจะง่าย

ผมใช้กับทรูง่ายนะครับส่วนเรื่องภาษาก็ปรับให้รับenเอาจะง่าย

ขอบคุณมากครับเพิ่งรู้ว่ามันทำให้เป็นภาษา ENG ได้ แต่ต้องโทรไป 8700 ให้เค้าเปลี่ยนให้เเดี่ยวลองดูใหม่ครับ

ผมใช้กับทรูง่ายนะครับส่วนเรื่องภาษาก็ปรับให้รับenเอาจะง่าย

ได้แล้วเหมือนกันครับ อันนี้เป็น AT command ที่ใช้ เผื่อใครอยากลองบ้างได้ไม่เสียเวลา

serialPort.Send("AT*PSSTK=" & Chr(34) & "COMMAND REJECTED" & Chr(34) & ",1,16" & vbCr) 'กลับไปเมนูก่อนหน้า
 serialPort.Send("AT*PSSTK=" & Chr(34) & "MENU SELECTION" & Chr(34) & ",11" & vbCr) 'เลือกเมนู 11 Mobile Topup
 serialPort.Send("AT*PSSTK=" & Chr(34) & "SELECT ITEM" & Chr(34) & ",1,1,4," & vbCr) 'เลือกเมนู 1 topup
 serialPort.Send("AT*PSSTK=" & Chr(34) & "GET INPUT" & Chr(34) & ",4,0," & txtPhone.Text & ",0,0," & vbCr) 'ใส่เบอร์
 serialPort.Send("AT*PSSTK=" & Chr(34) & "GET INPUT" & Chr(34) & ",4,0," & txtCredit.Text & ",0,0," & vbCr) 'ใส่จำนวนเงิน
serialPort.Send("AT*PSSTK=" & Chr(34) & "GET INPUT" & Chr(34) & ",4,1," & "7786" & ",0,0," & vbCr) 'ใส่ Password
serialPort.Send("AT*PSSTK=" & Chr(34) & "DISPLAY TEXT" & Chr(34) & ",1,0" & vbCr) 'ใส่ display text
 serialPort.Send("AT*PSSTK=" & Chr(34) & "NOTIFICATION" & Chr(34) & ",19,0" & vbCr) 'ยืนยัน