2014-10-28 102 views
1

我的目標是讓兩個telnet客戶端通過python將數據傳輸給彼此。我手動連接了一臺telnet客戶端到我的TeamSpeak服務器。另一個telnet客戶端連接到IRC服務器。我怎樣才能橋樑/管他們,使用python?如何讓兩個telnet實例互相交互?

我的代碼是在這個項目的GitHub:https://github.com/Khailz/Teamspeak-IRC

+0

給出「另一個Telnet是一個IRC服務器」 - 沒有 – ErlVolton 2014-10-28 14:39:39

+0

而這是爲什麼?我不公平地說,我是說另一個telnet客戶端連接到IRC服務器 – Khailz 2014-10-28 14:41:31

+0

好吧,我編輯了你的問題,所以它不會打破SO指導方針。你將不得不詢問有關teampeak keepalives的部分作爲自己的問題。 – ErlVolton 2014-10-28 14:44:08

回答

0

與Python這樣做將是非常具有挑戰性。如果因爲某種原因你必須使用python,你需要的所有內容都在this question,這是關於將一​​個子進程的stdout管道輸出到另一個子進程的stdin。我對如何解決你的問題的建議是使用linux pipesfifo files。這將是簡單的:

$ mknod backpipe p 
$ telnet team.speak.server 8080 < backpipe | telnet irc.server 8080 > backpipe 

這是命令略加修改版本this blog post.

+0

我不確定這是我的尋找團隊協商只能通過telnet連接 – Khailz 2014-10-28 15:07:33

+0

我更新了我的答案,你可以用telnet命令做同樣的事情 – ErlVolton 2014-10-28 15:09:17

+0

即使我沒有直接輸入命令?我實際上是這樣做的,所以命令是從teamspeak發出的,而telnet讀取命令,然後繼續進行irc或反過來。真的,他們是硬拼命令,所以,我猜這只是真的應該工作? – Khailz 2014-10-28 15:19:24