There should be an item in /dev for the modem's port (it's been I while since I did unix so forgive me for lacking details). You can just open it like a file. Write to it. Trick with the +++, if you are connected, is that there must be a pause of 1+ sec before and after it - that is how the modem knows you didn't just want to send +++ to the remote end. It will kick you from 'sending data mode' into 'AT command mode'.
But the modem starts out in command mode while you dial.
http://en.wikipedia.org/wiki/Hayes_command_set
there may be libraries of predefined functions to handle dialing, redialing on fail, etc. if you find this too low-level. But this is all I had to work with - eons ago when I last programmed for modem!