È necessario un USSD gateway/server nel proprio ambiente di operatori di reti mobili, collegati alla rete gli operatori SS7. I messaggi USSD possono essere inviati dal cellulare al server USSD o dal server USSD al telefono cellulare. Non è possibile inviare un messaggio USSD direttamente da un telefono all'altro, è necessario inoltrare il messaggio tramite il server USSD.
I messaggi USSD non sono standardizzati, sono specifici per la rete mobile e le applicazioni compatibili con USSD. Tuttavia, ci sono alcuni messaggi USSD di fatto comprensibili da molti HLR per l'interrogazione e la configurazione di cose come l'inoltro di chiamata.
USSD viene trasportato tramite SS7 utilizzando il protocollo MAP. La logica aziendale implementata in cima a MAP è legata all'implementazione dello stack del protocollo effettivo. Sul lato server potrebbero essere hardware (schede di interfaccia) più driver del sistema operativo o solo software, ad es. uno stack SIGTRAN, a seconda del livello fisico da supportare (E1, SDH su fibra, ATM o Ethernet). Un'applicazione di esempio dipende dallo stack di protocollo su cui viene eseguito. Cerca applicazioni di esempio dal fornitore del tuo hardware di interfaccia o stack di protocolli. Sul lato client, il supporto USSD dipende dal dispositivo, ad es. tramite J2ME JSR 120 "Wireless Messaging API".
L'USSD non è garantito per la consegna, in particolare negli scenari di roaming. Ciò dipende esclusivamente dal tuo operatore di rete mobile. Se non si ha un accordo con l'operatore, potrebbe bloccare i messaggi USSD, soprattutto se rileva elevati volumi che aggirano i suoi servizi di messaggistica a pagamento.
Vedere anche http://stackoverflow.com/questions/5234489/ussd-interface-java-web-app-comunication/6909364#6909364 –