GsmEncoding
Cep telefonunlarımıza gelen kısa mesajlarda genel kanının aksine geleneksel 8bit’lik ASCII tablosu değil de, GSM operatörü tarafından özelleştirilebilen 7bit’lik GSM alfabesi kullanılmaktadır.
Bunun zorluğu ile en çok servis sağlayıcı tarafından filtrelenmeyen, daha doğrusu işin bu kısmını tamamiyle biz API kullanıcılarına bırakan kısa mesaj gönderimlerinde karşılaşırız. Sık karşılaştığım ve internet üzerinde pek kaynak bulamadığım için işin başa düştüğünü ve kendim .NET’in klasik Encoding’leri ile çevirim uyumlu bir sınıf yazmam gerektiğini düşündüm. GsmEncoding’e ait kaynak kodları bu post’un ekinde bulabilirsiniz.
Kodları kullanmak için .NET’in CLR’ında herhangi bir Encoding’i nasıl kullanıyorsanız, yeni oluşturduğunuz bir GsmEncoding instance’ını da bu şekilde kullanmanız yeterli. Örneğin:
Encoding _encoder = new GsmEncoding(); byte[] _data = _encoder.GetBytes(text);

