Home > Back-end >  UTF8 Encoded messages broken charecter on php smpp sms sending
UTF8 Encoded messages broken charecter on php smpp sms sending

Time:09-16

Hi am using php smpp sms sending package to work on socket sms sending.

$transport = new SocketTransport(array(config('app.smppHost')), config('app.smppPort'));
            $transport->setRecvTimeout(10000);
            $smpp = new SmppClient($transport);

I am sending with $encodedMessage = GsmEncoder::utf8_to_gsm0338($message);

$smpp->sendSMS($from,$to,$encodedMessage,null,null);

UPDATE
But the sms is receiving with broken character.I am sending in myn language and also tried as suggested

$smpp->sendSMS($from,$to,$encodedMessage,null,null);

But now half broken half proper message is sending. I think some encoded needed ???

CodePudding user response:

This is special language encoded issue you need both override the encoded version in smpp package as well as encode the text itself.

First convert the string

mb_convert_encoding($message,'UCS-2',"utf8");

Then send sms in encoded in type 8. it should work properly

$smpp->sendSMS($from,$to,$encodedMessage,null,8);
  • Related