Кодирование / декодирование PDU 7-битных септетов длинных сообщений GSM
Я ищу алгоритм кодирования / декодирования. Я пробовал это: http://codeproblem.hamaraquetta.com/articles/languages/81-net-framework/76-encoding-sms-in-pdu-format-in-net?showall=&start=1
и не повезло.:(
Вот что я пытаюсь
Это текст:
This is a long text message greater than 160 characters. You can encode it to PDU format using the SMS-PDU lib for .NET, It also supports UCS-2 encoding, and special characters like { [ ] } are also supported. Its quite simple to use in your code.
Из этого текста должно быть 2 сообщения, закодированных в septets
и после того, как я смогу отправить сообщение.
Вот результат, который я получаю:
Часть 1:
0041000C917952205197720000A00500033F0201A8E8F41C949E83C220F6DB7D06D1CB783AA85D9ECFC3E732E82C2F87E96539888E0EBB41311B0C344687E5E131BD2C9FBB40D9771D340EBB4165F7F84D2E83D27410FD0D8212AB20F35BDE0ED341F579DA7D06D1D165D0B4396D418955103B2D0699DF7290CB59A4B240493A28CC9EBF41F33A1CFE96D3E7A0EA70DA9281CAEEF19B9C769F59
Часть 2:
0041000C917952205197720000690500033F020240613719348797C7E9301B344687E5E131BD2C9F83D8E97519B44181363CD0C607DAA4406179191466CFDFA0791D0E7FCBE965B20B94A4CF41F17A9A5E06CDD36D38BB0CA2BF41F57919947683F2EFBA1C347E93CB2E
это не работает
Как мне это решить?
Кстати: это номер телефона, я знаю, что это важно. +972502157927
1 ответ
Библиотека работает полностью корректно. ComposeLongSms() возвращает строковый массив PDU, и вы должны отправить ("передать", как вы сказали) все эти PDU на ваш GSM-модем как отдельные SMS-сообщения. Любая конкатенация не будет работать, вы можете заметить, что каждый PDU начинается с той же части, которая содержит закодированную дополнительную информацию для исходящих SMS. Вы можете проверить свои PDU здесь