Sonstige Motorola Phone Tools - Nummern der eingehenden Anrufe?

Dieses Thema im Forum "Motorola Forum" wurde erstellt von Nuls2, 31. Dez. 2008.

  1. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Hallo,

    ich bin mehr oder minder am Verzweifeln. :(
    Ich habe mich nun durch saemtliche Foren gegoogled, saemtliche Forensuchen genutzt, allerdings bin ich absolut nicht auf ein Ergebnis gestoßen.

    Ich moechte, dass in der Empfangslog die eingehenden Telefonnummern angezeigt werden, leidergottes wird dort nur katalogisiert wann ich einen Anruf bekommen habe, die Nummer allerdings wird nicht angezeigt.

    Ich habe mit mehreren Motorolahandies und auch mit verschiedener MPT Software rumexperimentiert, allerdings immer das gleiche Problem - Anruf erscheint in der Log, ohne Nummer allerdings.

    Gibt es Irgendwas, was ich dazu noch beachten muss, oder will mein Vorhaben einfach nicht funktionieren?!

    Beste Gruesse!

    /e:

    Fuer Alternativsoftware bin ich auch zu haben, hauptsache ich kann dieses Thema vor'm neuen Jahr abschließen.. :P
     
    #1 Nuls2, 31. Dez. 2008
    Zuletzt bearbeitet: 31. Dez. 2008
  2. .me

    .me VIP Mitglied

    Registriert seit:
    2. Sep. 2006
    Beiträge:
    205
    Zustimmungen:
    0
    Da wirst Du Pech haben. Das ist bei den MPTs falsch implementiert. Habe die SW-Firma schon mehrmals darauf hingewiesen, da kommt nix.

    Protokollauszug:
    Status = CTS DSR RING rlsd
    --> ATE0<CR>
    <-- ATE0
    <-- OK
    --> AT+CRC=1<CR>
    <-- OK
    --> AT+CLIP=1<CR>
    <-- ERROR

    --> AT+FCLASS=0<CR>
    <-- OK
    <-- RING
    #### First ring init...
    <-- +CRING: VOICE
    Status = CTS DSR ring rlsd

    Würdest Du zum richtigen Zeitpunkt den Befehl AT+CLCC geben, dann ginge es.
    Beispiel:
    RING
    at+clcc
    +CLCC: 1,1,4,0,0,"0171431....",129,
    OK

    Fröhliches Software-Basteln
    Wir alle freuen uns über eine ausführliche Beschreibung Deiner Lösung und wünschen Dir Viel Erfolg.
     
  3. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Ich habs mir schon fast gedacht.

    Ironischerweise geht's darum, dass mein Kunde eine Software braucht, die genau diese Logfile auswertet und die Nummern katalogisiert, und das Rad jetzt nochmal neu zu erfinden und die MPTs umzubasteln, geschweigedenn was komplett eigenes zu schreiben (wobei ich in diesem Gebiet auch nicht wirklich bewandert bin :P) waere wirklich nominal.

    Gibt es eine Softwarealternative, oder darf ich mich dann doch noch brav mit dem Thema Motorolahandies befassen?! ;-)

    MfG
     
  4. .me

    .me VIP Mitglied

    Registriert seit:
    2. Sep. 2006
    Beiträge:
    205
    Zustimmungen:
    0
    Es mag möglicherweise eine geben, ich kenne leider keine.

    Der User MeinerEiner ist hier der Software-Guru,
    vieleicht liesse er sich überreden ... gegen was auch immer.

    Mein Ansatz wäre:
    Die Schnittstelle belauern,
    kommt dort ein RING , dann
    AT+CLCC senden,
    das dann empfangene zwischenpuffern,
    die in " " stehende Nummer ausfiltern und
    diese mit %date% und %time% in eine Textdatei schreiben,
    dann wieder lauern.

    Mir fehlen die Programmierwerkzeuge, ich spreche nur Assembler.
     
  5. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Na dann, wenn keiner eine Alternative gebaut hat, werde ich mir das mal Anschauen.

    ... Heute noch ....

    Ich war ein wenig Erschrocken von dem ganzen Protokoll, aber wenn es lediglich ein Listen, ein Send und eine RegularExpression ist, um die Telefonnummern rauszubekommen sage ich meiner USB Schnittstelle jetzt mal den Kampf an.

    Ich melde mich dann spaeter.. ;-)

    MfG
     
  6. parlazzo

    parlazzo VIP Mitglied

    Registriert seit:
    7. Mai 2007
    Beiträge:
    180
    Zustimmungen:
    0
  7. .me

    .me VIP Mitglied

    Registriert seit:
    2. Sep. 2006
    Beiträge:
    205
    Zustimmungen:
    0
    @parlazzo
    Wir reden nicht von demselben. MM macht dasselbe wie MPT, wir aber reden hier vom Nummer-Grabben.


    Ich für mich habe das Problem gelöst.
    Das folgende ist sicher noch verbesserungswürdig, erfüllt aber schon den erwünschten Zweck.

    Man nehme:
    eine Batch-Datei z. B. namens GimmiNum.bat auf dem Desktop.
    In dieser steht:

    rem --- SOF ---
    echo off
    cls
    set prompt=$g

    rem finde Com-Port vom Moto heraus und schreibe dies in %port%, bei mir war es com4
    set port=com4:
    echo AT+CLCC>a.bef

    :loop
    echo.>9.txt
    del ?.txt >>nul
    copy %port% 0.txt >>nul
    findstr "RING" 0.txt >nul&&goto :get
    goto :loop

    :get
    copy a.bef %port% >>nul
    copy %port% 1.txt >>nul
    findstr "+CLCC:" 1.txt>>2.txt
    for /f "tokens=1,2,3,4,5,6 delims=," %%a in (2.txt) do @echo %date% %time% %%~f>>call.log
    goto :loop
    rem --- EOF ---

    Starte die Batchdatei und rufe Dich mehrmals von verschiedenen Rufnummern aus an.

    Besichtige das Ergebnis in der Datei call.log
     
    #7 .me, 31. Dez. 2008
    Zuletzt bearbeitet: 31. Dez. 2008
  8. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Das scheint bei mir nicht wirklich zu funktionieren, aber immerhin kommt eine 0.txt raus in der

    steht ;-).

    MfG
     
  9. .me

    .me VIP Mitglied

    Registriert seit:
    2. Sep. 2006
    Beiträge:
    205
    Zustimmungen:
    0
    , weil Du ein vorsintflutliches Betriebssystem benutzt.

    Ab Windows 2000 oder höher geht es.

    Deines kennt die Befehle (noch) nicht oder anders.


    Nachtrag:
    "findstr" müsste sich ersetzen lassen durch "find"
    Bei "for" musst Du mal schauen mit for /? , ob sich da schon die Syntax so zeigt, kann das nicht mehr nachvollziehen, glaube aber eher nicht.
     
    #9 .me, 1. Jan. 2009
    Zuletzt bearbeitet: 1. Jan. 2009
  10. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Frohes neues Jahr,

    ich benutze zum Testen Windows Vista, ich habe leider kein XP hier und bin auch nicht unbedingt der Windowsuser, ich glaube kaum, dass man Windows Vista als vorsintflutlich betiteln kannn. (Auch wenn's wirklich irgendwie ein Schritt zurueck ist :P)

    MfG
     
  11. Psycomorpher

    Psycomorpher VIP Mitglied

    Registriert seit:
    22. Aug. 2006
    Beiträge:
    5.810
    Zustimmungen:
    53
    .me hat sicherlich auf die Angabe in deinem Profil angespielt. ;)
     
  12. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Ich fuer meinen Teil habe das Problem nun auch geloest. Die Loesung ist wirklich recht trivial, ich frage mich warum die guten Leute der MPTs so ignorant und/oder inkompetent sind.

    Hier der Quelltext in C#, falls Jemand was damit anfangen kann..

    Code:
    using System;
    using System.Collections.Generic;
    using System.IO.Ports;
    using System.Text;
    using System.Text.RegularExpressions;
    
    namespace consoletest
    {
    	class COMPortClass
    	{
    		static SerialPort port;
    	
    		public static void Main()
    		{
    			bool exceptionOccured = true;
    			
    			do {
    				try {
    					Console.Write("Lauschen auf COMPort (1, 2, 3, 4, [..])");
    					string comPort = String.Format("COM{0}", Console.ReadLine());
    					
    					port = new SerialPort(comPort, 9600, Parity.None, 8, StopBits.One);	
    					port.RtsEnable = true;
    					port.Encoding = Encoding.ASCII;
    					port.Open();		
    					exceptionOccured = false;	
    					Console.WriteLine("*** Listening on COM{0}", comPort);					
    				} catch {
    					Console.WriteLine("Dieser COM-Port existiert nicht, oder ist belegt!");
    				}
    			} while (exceptionOccured);
    			
    			COMPortClass obj = new COMPortClass();
    			obj.stayAlive();
    			obj.stopReading();
    			Console.ReadLine();
    		}
    		
    		private COMPortClass()
    		{
    			port.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);
    		}
    		
    		private void stayAlive()
    		{
    			while (true) {
    				//... 
    			}
    		}
    		
    		private void stopReading()
    		{
    			port.Close();
    		}
    		
    		
    		private void port_DataReceived(object sender, SerialDataReceivedEventArgs e)
    		{
    			string buffer = port.ReadExisting();
    			
    			if (buffer.Contains("RING")) {
    				Console.WriteLine("*** Incoming Call!");
    				port.Write("AT+CLCC\r");
    			}
    			
    			if (buffer.Contains("+CLCC")) {
    				string number = buffer.Split(',')[5].Replace("\"", String.Empty);
    				Console.WriteLine("Call from Number: {0}", number);
    			}
    		}
    	}
    }
    
     
  13. Meiner Einer

    Meiner Einer Vertrauensmitglied

    Registriert seit:
    21. Aug. 2006
    Beiträge:
    5.795
    Zustimmungen:
    15
    Ich werde mich nun auch mal zu Wort melden, da ich von .me im Prinzip ja direkt angesprochen wurde.
    Sorry, aber ich gehöre zu den Leuten, die zum Jahreswechsel arbeiten (müssen). Daher bitte ich um Entschuldigug, daß ich mich jetzt erst melde. Bin auch jetzt immer noch ein wenig "down"...
    :D - bin nur ein kleiner Hobbyprogrammierer, der das aus Spaß macht - mehr nicht.

    @ Nuls2
    Wie ich sehe, hast Du Lösung ja schon selber gefunden und auch gepostet - Danke dafür. Das erwähne ich deshalb, weil es die absolute Ausnahme ist, das ein User eine Frage postet und dann im Laufe des Threads sogar selbst eine Lösung dafür entwickelt. Ich wünschte, wir hätten mehr solche User hier...

    Zu Motorola: Ich weiß auch nicht, was Moto macht. Im Moment sieht es so aus, als ob Moto sich vielmehr darauf konzentriert, ihre Handysoft Moddindsicher zu machen, als wirklich technisch sinnvolle Innovationen einzubringen. Das führt sogar soweit, daß das OS sogar innerhalb einer Modellreihe so stark modifiziert wird, das ihre eigenen Programme wie MPT beim Zugriff versagen. Also ist Bugfixing angesagt, um es überhaupt wieder lauffähig zu machen. Dabei bleiben dann wohl solche "kleinen" Sachen auf der Strecke.

    Moto wird bald die sichersten Handys der Welt haben! Aber nur, weil sich dann keiner mehr dafür interessiert...
     
  14. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Ich habe allerdings ein Problem. Mit einer deutschen Rufnummer geht das wunderbar, stoepsel ich aber in meinem Fall ein norwegisches Handy an den Serialport, so kriege ich vom Commport nach Senden von
    "AT+CLCC\r"

    "ERROR" zurueck, ist das AT+CLCC kein internationaler Standard?

    **

    Ich habe das ganze Ding nochmal mit der guten WinAPI revamped, sieht weitaus schoener aus, vielleicht findet auch noch Jemand 'nen Nutzen drinnen.

    Mein Problem mit dem norwegischen Handy existiert allerdings immernoch.

    Im Anhang ist Source + Binary
     

    Anhänge:

    #14 Nuls2, 1. Jan. 2009
    Zuletzt von einem Moderator bearbeitet: 1. Jan. 2009
  15. .me

    .me VIP Mitglied

    Registriert seit:
    2. Sep. 2006
    Beiträge:
    205
    Zustimmungen:
    0
    Der AT-Command-Set ist (in Details) nicht immer einheitlich, da musst Du mal auf der Handy-hersteller-Seite schauen.
     
    #15 .me, 1. Jan. 2009
    Zuletzt bearbeitet: 2. Jan. 2009
  16. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Das Lustige an dem Problem ist, dass es mit ein und demselben Handy mit anderen Simkarten funktioniert, ich kann mir eigentlich nicht vorstellen, dass das am Handy liegt.

    Das Archiv ist vollkommen okay, evtl. mal mit WinRAR versuchen? CRC stimmt!

    MfG
     
  17. .me

    .me VIP Mitglied

    Registriert seit:
    2. Sep. 2006
    Beiträge:
    205
    Zustimmungen:
    0
    Ganz genau, das ist überarbeitungsbedürftig


    @Nuls2
    Was mich irritiert: daß der Batch mit Vista nicht geht.
    Das würde bedeuten, daß ich keine Batches für Vista mehr schreiben darf, weil das Ergebnis ungewiss ist :(


    Wenn AT+CLCC nicht geht, dann könntest Du es ja mal mit dem
    eigentlich offiziellem Befehl AT+CLIP oder AT+CLIP1 versuchen.

    (Die rar geht inzwischen, bei mir testen muss ich noch)
     
  18. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Vista ist, nunja sagen wir, ziemlich limitiert. Ich habe wirklich alles probiert, die Batchbefehle werden auch erkannt, kein Syntaxfehler, kein Nichts. Ich habe absolut keine Ahnung, warum das nicht tut, unter WinXP funktioniert das einwandfrei.

    AT+CLIP / AT+CLIP1 werde ich Nachher nochmal probieren, gibt es irgendwo eine Referenz, damit ich nicht immer hier nerven muss? Google ist in Sachen GSM Protokoll nicht so wirklich gnaedig zu mir gewesen. ;-)

    MfG
     
  19. .me

    .me VIP Mitglied

    Registriert seit:
    2. Sep. 2006
    Beiträge:
    205
    Zustimmungen:
    0
  20. Nuls2

    Nuls2 Neues Mitglied

    Registriert seit:
    30. Dez. 2008
    Beiträge:
    20
    Zustimmungen:
    0
    Mit den Testhandies bekomme ich hier bei den CLIP-Befehlen auch eine Error-Response.

    Im Internet habe ich leider keine gueltige Response fuer die Clips gefunden, wie sieht eine solche Antwort aus? Dann werde ich alle drei Befehle implementieren, in der Hoffnung, dass einer der Drei den richtigen Responsecode zurueckschickt ;-).

    MfG
     
Die Seite wird geladen...