2009-02-13 8 views
3

Je dois générer et envoyer des SMS SyncML OTA. J'ai le fournisseur de sms qui peut envoyer des sms binaires. Mais je suis un peu coincé dans les spécifications OTA et serai vraiment heureux si vous me pointez à l'un de ces:Comment générer des SMS OTA pour la configuration SyncML

  1. Un outil open source qui peut générer des sms OTA sur certaines propriétés fournies.
  2. Une bonne vue d'ensemble ou tutoriel sur la façon de faire SMS OTA (spec OTA ne semble pas lisible du tout)

Merci à l'avance!

+0

Ceci ne devrait pas être une question wiki communautaire. –

Répondre

2

Vous devez Produire le document XML OMA-DP suivant et le soumettre à votre passerelle de fournisseur de services. Vous devez suivre strictement le format du message à identifier comme message de configuration par le téléphone. Contactez également votre fournisseur de services et demandez-lui s'il peut convertir une soumission XML en SMS à la volée. Ils devront encoder le XML en WBXML, puis transférer le message en mode PDU.

<?xml version="1.0" encoding="utf-8"?> 
<wap-provisioningdoc> 
    <characteristic type="BOOTSTRAP"> 
    <parm name="NAME" value="SYNCSETTINGS" /> 
    </characteristic> 
    <characteristic type="APPLICATION"> 
    <parm name="APPID" value="w5" /> 
    <parm name="TO-NAPID" value="INTERNET" /> 
    <parm name="NAME" value="SYNCSETTINGS" /> 
    <parm name="ADDR" value="http://syncserver/sync" /> 
    <characteristic type="RESOURCE"> 
     <parm name="URI" value="pb" /> 
     <parm name="NAME" value="Contacts DB" /> 
     <parm name="AACCEPT" value="text/x-vcard" /> 
    </characteristic> 
    <characteristic type="RESOURCE"> 
     <parm name="URI" value="cal" /> 
     <parm name="NAME" value="Calendar DB" /> 
     <parm name="AACCEPT" value="text/x-vcalendar" /> 
    </characteristic> 
    <characteristic type="RESOURCE"> 
     <parm name="URI" value="notes" /> 
     <parm name="NAME" value="Notes DB" /> 
     <parm name="AACCEPT" value="text/plain" /> 
    </characteristic> 
    <characteristic type="APPAUTH"> 
     <parm name="AAUTHNAME" value="username" /> 
     <parm name="AAUTHSECRET" value="password" /> 
    </characteristic> 
    </characteristic> 
</wap-provisioningdoc> 

Voici la fonction en C# pour produire le document XML mentionné ci-dessus.

public string CreateOTAXmlFile(string Username, string Password) 
    { 
     var ota = new XDocument(
        new XElement("wap-provisioningdoc", 
         new XElement("characteristic", new XAttribute("type", "BOOTSTRAP"), 
          new XElement("parm", new XAttribute("name", "NAME"), new XAttribute("value", "SYNCSETTINGS")) 
            ), 
         new XElement("characteristic", new XAttribute("type", "APPLICATION"), 
          new XElement("parm", new XAttribute("name", "APPID"), new XAttribute("value", "w5")), 
          new XElement("parm", new XAttribute("name", "TO-NAPID"), new XAttribute("value", "INTERNET")), 
          new XElement("parm", new XAttribute("name", "NAME"), new XAttribute("value", "SYNCSETTINGS")), 
          new XElement("parm", new XAttribute("name", "ADDR"), new XAttribute("value", "http://syncserver/sync")), 
          new XElement("characteristic", new XAttribute("type", "RESOURCE"), 
           new XElement("parm", new XAttribute("name", "URI"), new XAttribute("value", "pb")), 
           new XElement("parm", new XAttribute("name", "NAME"), new XAttribute("value", "Contacts DB")), 
           new XElement("parm", new XAttribute("name", "AACCEPT"), new XAttribute("value", "text/x-vcard")) 
             ), 
          new XElement("characteristic", new XAttribute("type", "RESOURCE"), 
           new XElement("parm", new XAttribute("name", "URI"), new XAttribute("value", "cal")), 
           new XElement("parm", new XAttribute("name", "NAME"), new XAttribute("value", "Calendar DB")), 
           new XElement("parm", new XAttribute("name", "AACCEPT"), new XAttribute("value", "text/x-vcalendar")) 
             ), 
          new XElement("characteristic", new XAttribute("type", "RESOURCE"), 
           new XElement("parm", new XAttribute("name", "URI"), new XAttribute("value", "notes")), 
           new XElement("parm", new XAttribute("name", "NAME"), new XAttribute("value", "Notes DB")), 
           new XElement("parm", new XAttribute("name", "AACCEPT"), new XAttribute("value", "text/plain")) 
             ), 
          new XElement("characteristic", new XAttribute("type", "APPAUTH"), 
           new XElement("parm", new XAttribute("name", "AAUTHNAME"), new XAttribute("value", Username)), 
           new XElement("parm", new XAttribute("name", "AAUTHSECRET"), new XAttribute("value", Password)) 
             ) 
            ) 
           ) 
          ); 

     ota.Save(Server.MapPath("~/OTA/") + Username + ".xml"); 
     return (ota.ToString()); 

    } 

[PS: Croyez-moi, cela peut être fait par l'intermédiaire même un modem GSM aussi!]

Merci.

Ruchit S.

2

Regardez here. C'est assez vieux mais je pense que le source code devrait montrer un peu comment créer et envoyer des sms d'OTA.

+0

Merci, je vais jeter un oeil –

Questions connexes