Ich verwende die WML-Funktion "shorelocalinfo", um Ortsinformationen in Kurznachrichten zu stellen, die über ein WIB-Menü auf einem GSM-Handgerät gesendet werden.Einbetten von GSM-Zellen in Kurznachrichten
Ich verwende die WIG WML v.4 Spec von SmartTrust. Der entsprechende Abschnitt lautet "9.4 providelocalinfo Element"
Ich verwende den Code wie in dem Beispiel, und übertragen Sie die Variable dann per SMS, und verwenden Sie Kannel, um die Nachricht von der SMSC abzurufen.
Hier ist der Code, den ich verwende, mit Ausnahme von [myservicecentre] Zentrum meiner eigentlichen Dienst zu sein:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE wml PUBLIC "-//SmartTrust//DTD WIG-WML 4.0//EN"
"http://www.smarttrust.com/DTD/WIG-WML4.0.dtd">
<wml wibletenc="UCS2">
<card id="s">
<p>
<providelocalinfo cmdqualifier="location" destvar="LOC"/>
<setvar name="X" value="loc=" class="binary"/>
<sendsm>
<destaddress value="367"/>
<userdata docudenc="hex-binary" dcs="245">
$(X)$(LOC)
</userdata>
<servicecentreaddress value="[myservicecentre]"/>
</sendsm>
</p>
</card>
</wml>
Was ich in meiner empfangenen Nachrichten zu sehen ist „loc =“ von 7 Byte gefolgt (Oktette) oder Binärdaten. Ich habe versucht, eine Dokumentation zu finden, die erklärt, wie man diese Daten entschlüsselt, aber nichts gefunden hat, was das klar erklärt.
Von den 7 Oktette dekodiert, die ersten 3 Bytes sind immer die gleichen, Die nächsten 2 Bytes neigen, zwischen drei eindeutige Werte, die letzten 2 Bytes zu variieren scheinen die Zellen-ID zu sein.
Also habe ich den Empfänger codiert, um die letzten beiden Oktette zu ziehen und eine 16-Bit-GSM-Cellid aufzubauen. Meistens entspricht es bekannten Celliden aus dem Netzwerk. Aber oft stimmt der Wert nicht überein.
So versuche ich Informationen zu dem folgenden zu finden:
- Wie man richtig die Standortinformationen auf sichere Weise übertragen (Codierungen, wirft, usw.)
- Wie die Informationen richtig zu dekodieren
- Wie Kannel konfigurieren binäre Standortdaten
ich die folgenden Dokumente in meiner vergeblichen Suche sucht habe zu ehren, aber nicht die relevanten Daten gefunden: GSM 03.38, GSM 04.07, GSM 04.08, GSM 11.15, sowie die WIG WML Spec. V
Jeder Einblick, was ich falsch machen könnte würde geschätzt werden!
Das war hilfreich für mich: Naiv greifen die letzten zwei Oktette hat verschiedene LAC-Werte für die gleichen oder nahe gelegenen Zellen verpasst. Die Informationen, die von verschiedenen WIB-Plattformen gesendet werden, scheinen geringfügig von dieser Spezifikation abzuweichen (zumindest SmartTrust), aber es ist ein Schritt in die richtige Richtung und zeigt eine Lösung für einige Probleme an, die wir gesehen haben. –