Android PTT/PoC untuk Komunikasi VoIP & RoIP
TeamSpeak POC v5.8 YB8BV merupakan pengembangan dan modifikasi dari aplikasi TeamSpeak 3 Client untuk Android yang disesuaikan agar lebih cocok digunakan sebagai perangkat Push-to-Talk (PTT), Push-to-Talk over Cellular (PoC), VoIP, dan terminal RoIP.
Berbeda dengan penggunaan TeamSpeak standar yang lebih berorientasi pada komunikasi voice-chat, versi ini dikembangkan dengan pendekatan menyerupai radio komunikasi: pengguna dapat menekan PTT, berbicara, kemudian melepas PTT untuk kembali menerima audio. Dukungan terhadap tombol PTT hardware juga membuat Android PoC, radio Android, maupun perangkat khusus PTT dapat digunakan lebih alami layaknya HT.
Pengembangan dilakukan terutama untuk meningkatkan kecepatan respons PTT, kemudahan operasi, keamanan kondisi TX, pengendalian audio saat transmit, dan integrasi dengan perangkat radio/PoC.
Fitur Utama Tambahan
1. Dukungan Tombol PTT Hardware
Aplikasi dapat menggunakan tombol fisik perangkat sebagai Push-to-Talk, sehingga pengguna tidak harus menyentuh tombol PTT pada layar.
Tombol hardware dapat ditentukan melalui menu pengaturan:
Atur Tombol Push-to-Talk
Pengguna cukup menekan tombol yang ingin digunakan, kemudian aplikasi mengenalinya sebagai tombol PTT.
Tombol HW PTT
│
▼
Android Key Event
│
▼
TeamSpeak POC
│
▼
TRANSMIT
Fitur ini sangat berguna pada:
- Android PoC Radio
- HT berbasis Android
- terminal dispatcher
- perangkat rugged Android
- perangkat dengan tombol PTT khusus
- implementasi gateway RoIP berbasis Android
2. Respons PTT Cepat
Mekanisme PTT dimodifikasi agar proses tekan → transmit dapat berlangsung secepat mungkin.
Tujuannya adalah mengurangi kondisi ketika tombol PTT ditekan sangat singkat tetapi aplikasi belum sempat masuk ke kondisi transmit.
PTT DOWN
│
▼
TX ON
│
▼
Audio dikirim
Karakter operasi dibuat lebih mendekati radio komunikasi dibanding mekanisme voice-chat biasa.
3. Sticky PTT / PTT Lengket
Selain PTT normal tekan-tahan, tersedia mode:
Tombol PTT Lengket
Dalam mode ini:
Tekan PTT sekali
│
▼
TRANSMIT ON
Tekan lagi
│
▼
TRANSMIT OFF
Fitur ini berguna ketika perangkat digunakan sebagai:
- base station
- dispatcher
- radio meja
- gateway
- operasi komunikasi berdurasi panjang
Pengguna tidak harus terus menahan tombol selama berbicara.
4. PTT Guard
Versi YB8BV memiliki mekanisme tambahan PTT Guard untuk mengawasi kondisi transmit.
Aplikasi melakukan pemeriksaan terhadap kondisi client dan mencegah PTT berada pada keadaan yang tidak semestinya.
Contohnya, transmit dapat diblokir ketika kondisi audio/server tidak mengizinkan PTT.
PTT ditekan
│
▼
┌───────────┐
│ PTT Guard │
└─────┬─────┘
│
┌───────────┴───────────┐
│ │
VALID BLOCK
│ │
▼ ▼
TX ON TX OFF
Mekanisme ini juga membantu mencegah kondisi ghost PTT, yaitu keadaan ketika status tombol dan status transmit tidak lagi sinkron.
5. Force TX OFF
Beberapa kondisi tertentu akan memaksa transmit berhenti.
Sebagai contoh, aplikasi mempunyai logika untuk melakukan:
- TX OFF ketika tombol dilepas
- TX OFF ketika event PTT dibatalkan
- TX OFF ketika berpindah channel
- TX OFF jika kondisi mute menghalangi transmit
- reset kondisi PTT ketika diperlukan
Dengan demikian risiko perangkat tetap transmit akibat perubahan state aplikasi menjadi lebih kecil.
6. Indikator PTT Visual
Status transmit dibuat lebih jelas secara visual.
Ketika TX aktif:
PTT
│
└── MERAH = TRANSMIT ON
Ketika transmit berhenti, indikator dikembalikan ke kondisi normal.
Sinkronisasi ini penting karena pada perangkat radio pengguna harus dapat mengetahui dengan cepat apakah perangkat:
RX / Standby
atau
TX / Transmit
7. Mute Speaker Saat Transmit
Ditambahkan pilihan:
Mute speaker saat transmit
Saat PTT aktif, playback lokal dapat diredam sementara.
PTT OFF
Speaker ON
│
▼
PTT ON
│
▼
Speaker lokal diredam
│
▼
PTT OFF
│
▼
Speaker dipulihkan
Fitur ini membantu mencegah feedback audio, terutama apabila perangkat menggunakan speaker eksternal dengan volume cukup besar.
Yang diredam adalah jalur playback lokal selama transmit sehingga pengguna lain tidak harus melihat perubahan status speaker mute yang tidak diperlukan.
8. PTT Otomatis Diblokir pada Kondisi Mute
Aplikasi melakukan pemeriksaan status audio sebelum mengizinkan transmit.
Jika kondisi tertentu seperti microphone mute atau speaker mute membuat transmit tidak seharusnya dilakukan, PTT dapat otomatis dinonaktifkan.
Hal ini membantu menjaga sinkronisasi antara:
STATUS CLIENT
+
STATUS AUDIO
+
STATUS PTT
sehingga indikator PTT tidak sekadar terlihat aktif sementara sebenarnya audio tidak dapat ditransmisikan.
9. Sembunyikan Kontrol Channel
Ditambahkan pilihan:
Sembunyikan kontrol channel
Fitur ini dapat menyederhanakan antarmuka sehingga pengguna radio tidak terganggu oleh fungsi TeamSpeak yang jarang diperlukan saat operasi sehari-hari.
Tersedia pula mode untuk menyembunyikan:
tombol PTT dan empat menu di atasnya
sesuai kebutuhan penggunaan perangkat.
Dengan demikian satu APK dapat digunakan baik sebagai client TeamSpeak lengkap maupun sebagai terminal komunikasi yang antarmukanya dibuat lebih sederhana.
10. Optimasi untuk Penggunaan PoC
Konsep pengoperasian aplikasi diarahkan untuk perangkat Push-to-Talk over Cellular.
Topologi dasarnya:
┌───────────────┐
│ Android PoC A │
│ HW PTT │
└───────┬───────┘
│
│ 4G / Wi-Fi
▼
┌─────────────────┐
│ TeamSpeak Server│
└────────┬────────┘
│
├───────────────┐
│ │
▼ ▼
Android PoC B PC / Dispatcher
Dengan jaringan seluler atau Wi-Fi, perangkat Android dapat berfungsi menyerupai radio PTT dengan jangkauan mengikuti ketersediaan jaringan IP.
11. Cocok untuk Terminal RoIP
Selain komunikasi antar-Android, aplikasi dapat ditempatkan sebagai bagian dari sistem Radio over IP.
Contohnya:
Android / PoC
│
▼
TeamSpeak Server
│
INTERNET
│
▼
RoIP Gateway
┌──┴───┐
│ │
Audio PTT
│ │
└──┬───┘
▼
RADIO
│
▼
RF
Dengan gateway yang sesuai, suara dari TeamSpeak dapat diteruskan ke transmitter radio dan suara dari receiver radio dapat dikirim kembali ke jaringan TeamSpeak.
Ini memungkinkan komunikasi antara:
- pengguna Android
- operator PC
- HT
- mobile radio
- base station
- repeater/RPU
- dispatcher
dalam satu sistem.
12. Penyesuaian Audio untuk Komunikasi
Versi ini juga diarahkan untuk penggunaan komunikasi suara dengan pemilihan jalur playback yang sesuai, termasuk penggunaan mode Music pada konfigurasi tertentu.
Tujuannya bukan untuk menjadikan aplikasi sebagai pemutar musik, tetapi untuk memperoleh karakter jalur audio Android yang lebih sesuai pada perangkat PoC tertentu dibanding pemrosesan voice-call bawaan perangkat.
Karena karakter hardware setiap Android berbeda, pengaturan audio tetap dapat disesuaikan berdasarkan perangkat.
13. Branding dan Server Latimojong
APK telah disesuaikan untuk ekosistem Latimojong dan diberi identitas pengembangan:
By YB8BV
Di dalam aplikasi juga terdapat integrasi informasi server dan layanan Latimojong untuk mempermudah penggunaan aplikasi dalam jaringan komunikasi yang dikembangkan.
Bookmark server masih dapat dikelola sehingga aplikasi tidak terbatas hanya untuk satu server.
Dari TeamSpeak Menjadi Terminal Radio IP
Secara sederhana, perbedaannya dapat digambarkan:
TeamSpeak Android standar
Android
│
▼
Voice Chat
│
▼
TeamSpeak Server
TeamSpeak POC v5.8 YB8BV
┌──────────────┐
│ HW PTT │
└──────┬───────┘
│
▼
┌───────────────┐
│ PTT Guard │
│ TX Control │
│ Audio Control │
└───────┬───────┘
│
▼
TeamSpeak Client
│
IP/4G/Wi-Fi
│
▼
TeamSpeak Server
│
┌───────────┼───────────┐
│ │ │
▼ ▼ ▼
Android PoC Dispatcher RoIP Gateway
│
▼
RADIO
│
▼
RPU
│
▼
HT
Dengan modifikasi tersebut, TeamSpeak tidak hanya berfungsi sebagai aplikasi voice-chat, tetapi dapat digunakan sebagai platform komunikasi PTT berbasis IP dan sebagai salah satu komponen untuk membangun sistem VoIP, PoC, RoIP, dispatcher, serta jaringan radio hybrid.
Catatan
TeamSpeak POC v5.8 YB8BV merupakan versi modifikasi/pengembangan untuk kebutuhan eksperimen dan implementasi komunikasi PTT/PoC/RoIP. TeamSpeak dan merek terkait tetap merupakan milik pemegang hak masing-masing. Modifikasi YB8BV bukan aplikasi resmi dari TeamSpeak Systems.
Pengembangan dilakukan untuk kebutuhan teknis, pengujian perangkat, integrasi PTT hardware, dan eksperimen komunikasi radio melalui jaringan IP.
Untuk di POC Hytera P60 ada bugsnya, yg pertama ptt fisik tidak berfungsi/tidak detect, yg ke 2 ketika masuk di menu yg lain, tidak bisa kembali ke menu sebelumnya, harus di close terbih dahulu.