in reply to Lost characters using Device::Modem

In Telit GM862 manual it is clearly stated that the command is AT+CMGS=<da>, after which the device responds with a prompt that lets you type the message in. I haven't checked the standards, but I suspect that most modems behave like this.

You're simply not waiting for the prompt. To be on the safe side, I'd suggest to send the command, wait for the prompt and then send the message.

Flavio
perl -ple'$_=reverse' <<<ti.xittelop@oivalf

Don't fool yourself.