Official StoreTekan tombol di atas untuk membeli semua alat dan bahan eksperimen di web ini

Handling USSD untuk modem Huawei E220, E1552 dan Yang Setipe

Terima kasih kepada mas Toni Gunawan, salah satu pembeli buku saya yang memberitahu bahwa script yang ada di buku ‘Membuat SMS Gateway dengan Delphi 7’ tidak jalan di modem huawei E1552 miliknya. Setelah ketemuan di SPBU Muri di Tegal (kebetulan saya lagi ada perlu pulang Kudus), ternyata khusus untuk modem huawei ada sedikit perbedaan dalam menangani respon USSD yang dikirim dari USSD gateway operator. Ini tentunya di luar kuasa saya ketika menulis buku, karena begitu banyak tipe modem yang beredar di pasaran dengan bermacam-macam at command yang berbeda pula (proprietary). Tetapi sekali lagi saya mengucapkan terima kasih, karena berkat case ini, bertambah pula pengetahuan saya tentang instruksi AT command dan cara handlingnya khususnya untuk modem huawei.

Kalau di dalam buku, saya hanya menulis cara handling respon USSD dalam mode teks dan karakter UCS2, maka khusus untuk modem huawei, ternyata yang digunakan adalah mode PDU dengan format GSM7-bit atau yang lebih dikenal dengan nama septet. Cara paling mudah untuk mengkonversi (decode) respon USSD dalam format GSM7 adalah menggunakan unit SmsUtils yang ada di http://stackoverflow.com/questions/11489025/when-i-encode-decode-sms-pdu-gsm-7-bit-user-data-do-i-need-prepend-the-udh-fi. Setelah itu begitu Anda mendapat respon USSD dalam format ini, Anda tinggal memanggil function Decode7Bit yang akan mengembalikan sebuah nilai bertipe string yang berisi terjemahan GSM7 dengan format teks yang bisa terbaca oleh kita. String ini dapat dengan mudah kita olah untuk mendapatkan data yang diinginkan misalnya data pulsa, masa aktif atau yang lainnya. Format function adalah sebagai berikut :

function Decode7Bit(const APduData: string; AUdhLen: Integer): string;

Contoh penggunaan function di atas untuk mendekodekan respon USSD modem Huawei adalah sebagai berikut :

  1.  Buat project Delphi baru, simpan namanya sesuai keinginan Anda
  2. Ambil dua buah komponen TMemo, memo1 untuk input kode GSM7 (respon USSD), memo2 sebagai output hasil konversi
  3. Ambil komponen TButton, dan isikan event handler sebagai berikut :
    procedure
    TForm1.Button1Click(Sender: TObject);
    begin
     memo2.Text:=Decode7Bit(memo1.Text,7);
    end;
  4. Running project di atas, isikan kode respon USSD modem Huawei di kotak memo1, tekan tombol Button1, maka Anda akan mendapatkan ‘terjemahan’ teksnya di dalam kotak memo2.

Mudah bukan? Semoga bermanfaat dan selamat berkreasi

Ohya, untuk memerintahkan modem untuk mengecek pulsa dalam kode GSM7, Anda dapat memberikan perintah sebagai berikut :

at+cusd=1,”2A1C0E3702″,15 (similar dengan at+cusd=1,”*888#”,15), atau

AT+CUSD=1,”AA986C3602″,15 (similar dengan AT+CUSD=1,”*123#”,15)

Related article :

http://saptaji.com/2011/08/04/program-cek-pulsa-dengan-delphi/

http://saptaji.com/2011/04/21/at-command-dan-delphi/

Incoming search terms:

modem e220 saptaji, pdu to teks di delphi, cek pulsa modem huawei e220, cek pulsa dengan modem e 220, Cara ubah huawei e1552 biar support AT COMAND, cara riset ulang modem huwai 220, cara kode ussd untuk modem e5577cs-603, cara cek bonus di modem huawei e1552, ussd tidak respond, buku bermacam Huawei
14 Comments

Add a Comment

Your email address will not be published. Required fields are marked *

error: Content is protected !!