Gorion
Jungspund
Hallo Gemeinde ,
ich sitze vor einem für mich grösseren Problem fest. Ich suche jetzt schon seit letzter Woche eine Möglichkeit, wie ich eine Tastatureingabe simulieren kann, hab auch verschiedene Ansätze schon ausprobiert aber keines will so richtig funktionieren.
Das Problem:
Linphone läuft auf einem Microcontroller unter uClinux (also linphonec) und wird per Tastatureingabe gesteuert, mit Kommandos wie "call 123" kann ich mein anderes IP-Phone zum Test anrufen.
Ich möchte jetzt diesen Befehl "call 123" ersetzen durch eine von einem Programm geschickte "Tastatursimulation".
Wenn ich hingehe und im uClinux mit mkfifo <fifodatei> eine Pipe erzeuge und linphonec mit tail -f <fifodatei> ./linphonec starte, kann ich auf einem anderen terminal Tastatureingaben über echo "call 123" > <fifodatei> an linphone schicken. Linphonec führt die Kommandos auch richtig aus.
Wenn ich aber hingehe und in einem C-Programm einen printf("call 123\n"); auf die Konsole ausgebe, führt linphonec das Kommando nicht aus.
Wie kann ich also die Eingabe über ein C-Programm machen?
Oder wie kann ich bash-shells in einem C-Programm aufrufen?
*ratlosbin*
Vielen Dank für eure Antworten
Michael
ich sitze vor einem für mich grösseren Problem fest. Ich suche jetzt schon seit letzter Woche eine Möglichkeit, wie ich eine Tastatureingabe simulieren kann, hab auch verschiedene Ansätze schon ausprobiert aber keines will so richtig funktionieren.
Das Problem:
Linphone läuft auf einem Microcontroller unter uClinux (also linphonec) und wird per Tastatureingabe gesteuert, mit Kommandos wie "call 123" kann ich mein anderes IP-Phone zum Test anrufen.
Ich möchte jetzt diesen Befehl "call 123" ersetzen durch eine von einem Programm geschickte "Tastatursimulation".
Wenn ich hingehe und im uClinux mit mkfifo <fifodatei> eine Pipe erzeuge und linphonec mit tail -f <fifodatei> ./linphonec starte, kann ich auf einem anderen terminal Tastatureingaben über echo "call 123" > <fifodatei> an linphone schicken. Linphonec führt die Kommandos auch richtig aus.
Wenn ich aber hingehe und in einem C-Programm einen printf("call 123\n"); auf die Konsole ausgebe, führt linphonec das Kommando nicht aus.
Wie kann ich also die Eingabe über ein C-Programm machen?
Oder wie kann ich bash-shells in einem C-Programm aufrufen?
*ratlosbin*
Vielen Dank für eure Antworten
Michael