2016-05-02 12 views
1

私はラズベリーパイがインターネットに接続されており、mysqlデータベースサーバーにデータを書き込んでいます。私はステータスをエコーするPHPスクリプトを書こうと思っていました。だから何らかの理由でラズベリーpiがmysqlデバイスにデータを書き込むのをやめると、$ status = 0か何かがエコーされます。私は自分のウェブページからラズベリーパイにピングしたかったのですが、ラズベリーパイIPアドレスはどこかに移動しても同じではありません。私はたぶんmysqlサーバに書き込んだデータの最後のタイムスタンプを現在の時刻でチェックし、5分を超えるとステータス0を返すと考えました。これを行うには良い方法がありますか?ラズベリーパイのステータスを確認

答えて

2

あなたは、あなたが何を言ってるのか何かを、ハートビートデバイスに一貫性のあるIDを与え、それを識別してもUUID、およびチェックインDATETIME場でいくつかのテーブルを更新する場合:

UPDATE checkins SET checked_in_at=UTC_TIMESTAMP() where device_id=? 

デバイスがチェックインを停止すると、何らかの理由でオフラインになっていることがわかります。

ip_address列を追加して、お使いの端末の位置を知ることもできます。

+0

現在の時刻と最後にチェックインした時刻を比較して、その時刻がオフラインであることを表示する方法を教えてください。 – Alan

+0

オフラインになる時間は、3つの欠落したチェックインなど何かを決定する必要があります。 PHPでは、[標準の日付関数](http://stackoverflow.com/questions/2920335/how-to-calculate-time-difference-in-php)や['DATEDIFF()']を使って時差を計算することができますhttp://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_datediff)を参照してください。 – tadman

+0

助けてくれてありがとう – Alan

関連する問題