Autor | Zpráva | ||
---|---|---|---|
Medvídek Profil |
Nesetkal se někdo se skládáním UCS-2 SMS zpráv? (Nebo i 7 bitových).
Mam modem se simkou, v perlu si posílám všechny příchozí SMS na url, kde předávám typ SMS, jestli jde o obyč 7bit, nebo UCS-2 s diakritikou. Pokud pošlu SMS 7bit která se vejde do 160 znaků, nebo UCS-2 do 70 znaků, vše je v pořádku. Bohužel při delších se přidává na začátek SMS informace asi o počtu SMS a pozici dané SMS. Ale nikde sem se nedočetl, jak toto dekódovat. Ono by mi bohatě stačilo detekovat, že se jedná o rozloženou SMS a já bych jí automaticky zahazoval a nezapisoval do DB, ale raději bych se naučil skládat ty SMSky :) Nyní mát tento kód: $text=base64_decode($_GET["text"]); $text=$_GET["type"]==2 ? mb_convert_encoding($text, "UTF-8", "UCS-2") : $text; Pokud přijde SMSka, která má více částí, vznikne mi toto: "jak svetleji... Ale hl... A nevím, jak detekovat (popřípadě jak dekódovat) ten začátek zprávy, který je vždy tořen po převodu do UTF-8 tímto: " |
||
Jan Tvrdík Profil |
#2 · Zasláno: 3. 3. 2012, 18:57:31
Medvídek:
Na stránce http://en.wikipedia.org/wiki/SMS se píše. Larger content (concatenated SMS, multipart or segmented SMS, or "long SMS") can be sent using multiple messages, in which case each message will start with a user data header (UDH) containing segmentation information. Since UDH is part of the payload, the number of available characters per segment is lower: 153 for 7-bit encoding, 134 for 8-bit encoding and 67 for 16-bit encoding. Podrobněji je to rozepsáno v samostatném článku. |
||
Časová prodleva: 12 let
|
0