VNC Viewerで外出先からラズパイをシャットダウン


スマートコンセント(meross)で外出先からラズパイの電源を落とすにしても、いきなりシャットダウンは気が引けます。

ラズパイの起動状況をVNC Viewerで確認しながらシャットダウンします。

VNC Viewerのインストール

ルーターのポート(例:5900)を開放しておけば、外出先などからはグローバルIPやDDNSのドメイン名でアクセスできます。

例えばこんな感じ

スマホのVNCでは指先のタッチ操作でマウスアイコンを使えます。

文字入力はできません、必要ならソフトキーボードを使います。

#!/bin/bash

matchbox-keyboard &

 

シャットダウンはラズパイメニュからできます。

 

コントロール用にTkinterなどでインターフェースを作っておけば便利です。

 

ラズパイは5秒位でホルト状態になるので、それからmerossでラズパイの電源を落とします。

 


Tkinterのサンプル

messageboxの表示にtkinter.messageboxの代わりにeasyguiを使ってみます。

easygui

$pip3 install easygui

 

#!/usr/bin/env python3
# -*- coding: utf8 -*-

import tkinter
import easygui
import subprocess

root = tkinter.Tk()

#タイトル
root.title(u"制御")
#サイズと表示位置
root.geometry("350x100+100+50")

def com1(event):
    easygui.msgbox('OK', 'message box')

#
def shutdown():
    cmd = "sudo shutdown -h now"
    subprocess.call(cmd.split())

#
def quit(event):
    global root
    root.quit()

#ボタン
Button1 = tkinter.Button(text=u'制御',width = 80,height = 10)
Button1.bind("<Button-1>",ircom)
#左クリック(<Button-1>)で,ircom関数を呼び出すようにバインド
Button1.pack()

#ボタン
Button2 = tkinter.Button(text=u'エアコン・停止',width = 80,height = 10)
Button2.bind("<Button-1>",shutdown)
#左クリック(<Button-1>)で,shutdown関数を呼び出すようにバインド
Button2.pack()

#ボタン
Button3 = tkinter.Button(text=u'終了',width = 80,height = 10)
Button3.bind("<Button-1>",quit)
#左クリック(<Button-1>)で,quit関数を呼び出すようにバインド
Button3.pack()

root.mainloop()

 

 

 


 

 

Be the first to comment

Leave a Reply

Your email address will not be published.


*