Pythonでtelnetlibを使用して、単純なメールサーバーに接続し、電子メールを送信します。DATAコマンドを入力した後、最後まですべて正常に機能します。メッセージの本文を送信し、サーバーのキューに電子メールを送信するには、ピリオド「。」を入力する必要があります。それ自体が新しい行にあるので、私の終了トランザクションスニペットは次のようになります
self.tnet.write("\n.\n")
self.tnet.read_until("250")
ここで、self.tnetは私のtelnetセッションvarであり、read_untilは、電子メールが電子メールサーバーのキューに送信され、配信の途中であるという250Okの応答を待ちます。ただし、250 Okの応答が返されず、接続が10秒のタイムアウトフラグにタイムアウトし、受信トレイに電子メールが受信されません...何かアイデアはありますか?IVEも試してみました
self.tnet.write(raw_input()+"\n")
とiveも生のソケットをつかんでみました
self.sock=self.tnet.get_socket()
self.sock.send(".\n")
print self.sock.recv(1024)
応答がありません...:/ iveは、リターンキャリッジ「\r」を「\n」と組み合わせて試しましたが、それだけでは役に立ちませんでした。
何か案は?
ありがとう、〜george