2010-12-27 4 views
1

私はskype4pyをインストールしました。 (http://skype4py.sourceforge.net/doc/html/は、skype4pyを使用してインスタントメッセージを送信するpythonスクリプトが必要です

私はpythonを知らない。私は最初のcmd引数をユーザ名、2番目の引数をメッセージとして取る簡単なサンプルスクリプトが必要です。このインスタントメッセージはskypeユーザ名に送信されます。

誰でもこれを行う方法を知っていますか?

ありがとうございます。

+1

なぜあなたはpythonチュートリアルを読んでいないのですか?次に問題がある場合は、特定の質問をして特定の回答を得ることができます。私はあなたがそのようにいくつかのPythonを学ぶかもしれないと確信しています。 – aaronasterling

+0

これはすぐに動作させるために必要な最後のステップでした。 (zabbix skype notifications)私もPythonを学ぶつもりです:) – JMW

+0

さらに良いことに、ドキュメントを読むことを学ぶ...受け入れられた答えはほとんどドキュメントからコピーされていませんhttps://github.com/Skype4Py/Skype4Py#sending-message 。 – erm3nda

答えて

11

ドキュメントに基づいて動作する必要があります。

from Skype4Py import Skype 
import sys 

client = Skype() 
client.Attach() 
user = sys.argv[1] 
message = ' '.join(sys.argv[2:] 
client.SendMessage(user, message) 

使用法:

$ python message.py someuser This is my message 

あなたはより良いスパムの人々にこれを使用しない:Dは

あなたはこれでさらに何もする必要がある場合は、より良いPythonのを学びます。教育目的のために、ここではラインの故障によってラインです:引数を含む

  1. インポートクラススカイプ
  2. Skype4Py
  3. からインポートsysのは、スクリプトが
  4. ARGV、文字列のリストで、コマンドラインから渡されましたスカイプのインスタンスを作成し、
  5. は、2番目のコマンドライン引数(最初のスクリプト名がある)
  6. STRIを構築するためにそれを送信するために、ユーザを設定し、ユーザーのSkypeクライアント
  7. にクライアントを接続し、クライアントそれを呼び出します私は似たような必要
+0

おかげさまで、あなたは私をとても助けてくれました。 :)私はこのスクリプトを使用して、zabbixがskypeメッセージでアラートについて人々に知らせるようにします。スカイプ自体は、ubuntuサーバー上でxvfbで動作します。私もこのチュートリアルを書いています... – JMW

+0

@JMWクールなもの。 –

+0

私は、 'Attach()'はオプションであると思いますし、オペレーティングシステムによっては期待どおりに動作しません。私はそれを使用せず、スクリプトはとにかく働いています。廃止されたか、そういうものがあるようですが、私は何の警告も見ませんでした。 – erm3nda

1

ユーザーにメッセージを送信し、第三(sys.argv[2:])の後に、コマンドライン引数の各文字列を結合したセパレータ

  • としてスペースを使用して、NG(メッセージ) - のための警告を受けます私のubuntu(コンソールのみ)のサーバからskype/CLI経由で特定のものを取得します。上記のPythonコードだけでは十分ではありませんでした。私は基本的にすべての作業を行うために、このガイドに従っています:http://www.qxs.ch/?p=9

    g'luck。

    PS。私は実際にJMWのチュートリアルに遭遇したことに気付きました。いいね

  • 0

    4年後。 Skypeの最新バージョンでは、おそらく引数が変更されているだけだと言いたい。

    try: 
        CmdLine = sys.argv[1] 
    except: 
        print 'Missing command line parameter' 
        sys.exit() 
    

    (githubのから例Skype4Pyスクリプト「callfriend.py」からのラインである)あなたに例外を与える:以下のコードがあることを意味します。 2年前に私はSkype4Pyを使わなかったが、引数sys.argv [1]はもうsendコマンドではないので、何が変わったのか分からない。基本的には、sys.argv [1]が範囲外です。

    import Skype4Py 
    skype = Skype4Py.Skype() 
    skype.SendMessage('receiver's skypename','your message text') 
    

    そして、あなたは連絡先を呼び出したい場合は、単にコード怒鳴るを使用する:あなたは今できることは基本的にこれです。

    skype.Placecall('skypename') 
    
    +0

    受け入れられた回答のコードがもう機能しないと言っていますか?またはあなたの投稿はここの質問にどのように関連していますか? 2年後の – jogojapan

    +0

    。誰からの着信があるかどうかを読む方法は? – YumYumYum

    +0

    'sys.argv'はSkype4Pyと何の関係もなく、引数をスクリプトに渡すための基本的なPythonモジュールです。受け入れられた答えは完全にOKで、あなたは間違った答えを投稿しました。誰が "userxxxxxx"に返事を出すのですか? : - / – erm3nda

    関連する問題