USMProLib is a Java library that provides a Java API for working with the SMS and EMS. USMProLib API provides: SMS and EMS messages sending and receiving, acknowledgement reports reception, processing of incoming messages and reports. Concatenated and flash messages are supported. USMProLib supports Unicode symbols and can compose the text of the messages in any language. Additional features are uploading pictures and melodies from file, saving received pictures and melodies into file (BMP and MIDI formats). Simple GUI application for sending and receiving of SMS and EMS with the source Java code is included into release. USMProLib enables the sending and receiving of messages using a mobile phone connected to the computer via a data cable. USMProLib can work with several phones connected to the computer simultaneously. USMProLib uses COM interface for communication with the connected phone. Connection with the phone can be established by using COM, USB or IrDA connections. USMProLib supports Nokia 3310 series phones and GSM Phase 2 phones