Linux用のSkypeカスタマイズ。 ネットワーク上の「お気に入り」の連絡先の出現の通知

当社の主なコミュニケーション手段は、Skypeチャットバーベキューです。 オンライン状態とは、職場での存在を意味します。 誰かを待つこともあれば、上司に「緊急に来て」と書かないこともあります。一般的に、ネットワーク上の特定の人物の出現に関する通知が役立つでしょう。

LinuxのSkypeには、個々の連絡先に対するそのような「目盛り」はありません(他のOSのユーザーもこれに精通していると思います)。 しかし、紛れもない利点があります-コマンドラインのほぼ無限の可能性:

Skypeイベントスクリプトの実行

Microsoftからの標準の通知をよりlibnoifyライブラリを使用してより飾りのあるものに置き換える例の1つは、ハブにあります

私たちのタスクは、これらの通知を改善することです。 libnotifyにアクセスする前に連絡先をフィルタリングしたい。 設定は、 愚かな skype識別子を覚えておらず、クライアントの連絡先の名前を変更するときに設定が失われる心配がないように十分に便利である必要があります。

最初のreload_contacts.pyスクリプト-連絡先のリストを取得


Skypeクライアントに表示される名前を取得するために、Valery Yundin( Vayun )と彼のスクリプト 助けになります。これは、おそらく次のアドレスにあるいくつかのファイルから必要なものをすべて抽出します~/.Skype/-skype-id/user*.dbb

このスクリプトから取得した連絡先情報は、名前でソートさfilter_notify.confファイルにfilter_notify.confます。 デフォルトでは、すべての連絡先をポンド記号でコメントアウトできます。 次に、連絡先を「お気に入り」に追加するには、コメントを外すだけで十分です。

ところで、スクリプトは連絡先リストを更新する必要がありますが、既存の連絡先設定は保存する必要があります。スクリプトの実行時にどの連絡先がコメントアウトされたか。 したがって、最初にfilter_notify.confファイルが既に存在する場合はそれを読み取り、設定を保存します。

すべてが非常に簡単なので、ここに既製のreload_contacts.pyコードとsettings.py設定ファイルへのリンクがあります。

2番目のfilter_notify.pyスクリプト-通知の表示を制御します


そして、このスクリプトをSkypeから呼び出し(上記のスクリーンショットを参照)、連絡先のSkype識別子( %sskype )とクライアントに表示される名前( %sname )を渡します。 スクリプトは、この人物について通知するかどうかを確認します。 はいの場合、 notify-send

リストに連絡先が見つからない場合は、前述のreload_contacts.py実行して連絡先リストを更新するのがreload_contacts.pyです。

最後に、それほど複雑なものはありません: filter_notify.py

使用説明書


  1. 4つのスクリプトすべてを1つのフォルダーに追加します。
    skypelog.pyreload_contacts.pyfilter_notify.pyおよびsettings.py1つのアーカイブにダウンロード、 ミラー )。
  2. 実行権を与える:
    chmod +x reload_contacts.py filter_notify.py
  3. Skypeプロファイルフォルダーへのパスを見つけます。 コマンドラインを使用していない場合:「ホームフォルダー」を開き、Ctrl + Hを押して非表示フォルダーを表示します( .Skypeは非表示フォルダーです)。 .Skypeフォルダー内.Skypeは、プロファイルフォルダーがあります。 settings.pyのこのフォルダーへのパス、パラメーターSKYPE_FOLDERを指定します
    異なるアカウントの設定ファイルは異なるフォルダーにある必要があります。
  4. 必要に応じて、連絡先設定ファイルfilter_notify.confへのパスを書き込みます(デフォルトでは〜フォルダーに配置します) filter_notify.confパラメーター。
  5. reload_contacts.pyを実行し、 filter_notify.confファイルfilter_notify.confCONTACTS_NOTIFY_LIST指定されたアドレスに)作成され、連絡先のリストが含まれていることを確認します。
  6. Skypeの設定:
    • [通知]タブに移動します。
    • 必要なイベントを選択します。「Contact Came Online」(「Contact on network on」)。
    • 「詳細表示」(「詳細設定」)を有効にします。
    • 「次のスクリプトを実行:」というチェックマークが表示されます(「次のスクリプトを実行:」)-有効にします。
    • 2つのパラメーター"%sskype" "%sname"使用してスクリプトの名前を入力します。
    • 「サウンドファイルを再生する」と「ポップアップ通知を表示する」のチェックを外します... KOは、フィルターがそれらに適用されないと主張します。
    • [適用]をクリックして、設定ウィンドウを閉じます。

できた! 必要な連絡先のコメントを解除して、それらに関する通知(およびそれらに関する通知のみ)がnotify-sendされるnotify-send

おわりに


「高度な」通知システムのおかげで、Skypeは、次のアップグレード通知から送信まで、着信チャットメッセージの音声まで、多くの改善を受け入れています。 他の興味深いレシピがある場合は、共有することをお勧めします。

PS招待してくれたUFOに感謝します。

UPD: githubにアップロードするとき、filter_contacts.pyのバグを修正しました。 最後から2行目の"./reload_contacts.py"実行は機能しませんでした(スクリプトがSkypeクライアントによって起動された場合、スクリプトが存在するフォルダーは最新ではないため)。

Source: https://habr.com/ru/post/J146778/


All Articles