[Java][C#][Skype][WinAPI] prosta wtyczka do Skype'a, przekie

0

Witam!

Otóż rzecz jest taka, że chciałbym z telefonu komórkowego ze Skypem dzwonić na serwer ze Skypem i WinXP. Skype na serwerze przesyłałby dźwięk do rozpoznawania mowy w programie Sphinx4. W celu umożliwienia komunikacji Skype'a i Sphinksa4 muszę napisać wtyczkę do Skype'a, czyli tzw. 3rd party application (która będzie w C#). Zrobię to przy użyciu Skype4COM, trochę się wzorując na SEHE i http://forum.skype.com/index.php?showtopic=260361&st=0&p=1158301&#entry1158301 .

W przykładzie z linku powyżej jest funkcja OurCallStatus, wywoływana za każdym razem, gdy zmieniony jest status rozmowy (https:*developer.skype.com/Docs/Skype4COMLib/ISkypeEvents). Czyli jak rozumiem (mam nadzieję, że się nie mylę) tylko na początku i na końcu rozmowy. Teraz musiałbym w tej funkcji umożliwić zmianę domyślnego outputu dźwięku Skype'a z głośników na coś w rodzaju "portu" (to za pierwszym wywołaniem OurCallStatus). Drugie i ostatnie wywołanie OurCallStatus przywracałoby domyślne zachowanie wyjścia Skype'a. Później w mojej aplikacji dla Sphinx4 (będzie ona w Javie) na początku głównej funkcji będę musiał zastąpić linijkę "Microphone microphone = (Microphone) cm.lookup("microphone");" na taką, która będzie w stanie odbierać dźwięk z tego "portu", do którego będę przekierowywał wyjście Skype'a zamiast głośników. (Całość przykładowego pliku HelloWorld.java do ściągnięcia z Sphinx4 tutaj: https:*sourceforge.net/projects/cmusphinx/files/sphinx4/1.0%20beta3/sphinx4-1.0beta3-src.zip/download).

[b]No i moje pytanie jest teraz takie. Co może być tym tzw. "portem"? Jak taki "port" zaimplementować w C# i wykorzystać w Javie?[/b] Pomyślałem, że może WinAPI będzie jakoś pomocne. Więcej informacji o wtyczkach do Skype'a tutaj: http://forum.skype.com/index.php?showtopic=464711&st=20&start=20 . Główna idea mojej wtyczki tutaj: http://images38.fotosik.pl/230/e4cdc1e83a11a77d.jpg .

Pozdrawiam!

0

Witam!

Dowiedziałem się, że powinno się to dać zrobić przy pomocy normalnego [b]gniazda TCP[/b] albo przez IPC (Inter-Process Communication: http://pl.wikipedia.org/wiki/Komunikacja_międzyprocesowa).

Podejrzewam, że rozwiązanie mojego problemu przy pomocy gniazda TCP nie powinno być trudne, ponieważ jest to pojęcie raczej dobrze znane. Czy mogę prosić o jakieś wskazówki?

Pozdrawiam!

PS Podsumowując, co chcę osiągnąc to stworzyć wtyczkę do Skype'a. Normalnie Skype wysyła odebraną rozmowę na głośniki. Chciałbym, żeby wysyłał ją do innej aplikacji. Tą inną aplikacją jest rozpoznawanie mowy. Pomyślałem, że można to zrobić poprzez pewnego rodzaju port. Więc nie będzie to: Skype -> głośnik ORAZ mikrofon -> Sphinx4. Ale będzie to: Skype -> port -> Sphinx4 i vice versa. Mniej więcej jestem obeznany z tworzeniem wytczek do Skype'a (3rd party appliations).

1 użytkowników online, w tym zalogowanych: 0, gości: 1