これは、ログイン後に最初に行うことです。
どうすれば自動的にそれを実現できますか?
ログイン時にデフォルトのUbuntu IMアプリケーションEmpathyが自動的に開始されるようにするには、次の手順を OMG Ubunt から実行します。
共感は、ログインを開始するために少しキックが必要です。
Empathyの環境設定の[起動時に自動的に接続する]チェックボックスをオンにすると、システムログインの開始に関係すると考えることは許されます。そうではありません。この場合のスタートアップとは、コンピューターではなくEmpathyのスタートアップを指します。
[システム]> [設定]> [起動アプリケーション]> [新しいアイテム]に移動し、関連するフィールドに次の情報を入力することで、ログイン時に起動することができます。
名前:共感
コマンド:empathy -h
このスクリプトは、画面がロックされているか、スクリーンセーバーがアクティブになっているときにステータスを自動的に「使用不可」に設定し、スクリーンセーバーが閉じられたときに使用可能(オンライン)に戻します。
#!/usr/bin/python
import os
import time
import dbus
session_bus = dbus.SessionBus()
from gi.repository import TelepathyGLib as Tp
from gi.repository import GObject
loop = GObject.MainLoop()
am = Tp.AccountManager.dup()
am.prepare_async(None, lambda *args: loop.quit(), None)
loop.run()
screensaver_started = 0
running = 0
while 1:
active = 0
out = ""
pid = 0
if screensaver_started == 0:
# Don't do anything if the screensaver isn't running
s = os.popen("pidof gnome-screensaver")
spid = s.read()
s.close()
if len(spid) > 0:
screensaver_started = 1
else:
h = os.popen("gnome-screensaver-command -q", "r")
out = h.read()
active = out.find("inactive")
h.close()
if active < 0 and running == 0:
am.set_all_requested_presences(Tp.ConnectionPresenceType.OFFLINE, 'Offline', "")
running = 1
Elif active > 0 and running == 1:
am.set_all_requested_presences(Tp.ConnectionPresenceType.AVAILABLE, 'available', "")
running = 0
time.sleep(3)