家に水漏れがあることに気づいたとき、自分の専門知識を働かせる時だと思いました。ソフトウェア エンジニアとしての私の長年の経験と仕事への情熱を呼び起こす必要がありましたか?一見、配管工の方がよかったように見えるかもしれませんが、私の主張は、配管工が水漏れの修理に関与する前に、取るべきステップがあるということです。そしてそれは、漏れが最初に発生したときにそれを検出することです。
確かに、毎日水漏れをチェックしてくれる配管工を呼ぶこともできますが、それは時間やお金の有効な使い方ではないため、問題が深刻化して重大な問題になるのを待つ以外の方法を見つける必要がありました。したがって、24 時間年中無休の配管工の執事が選択肢にならないのであれば、ある種の自動化されたシステムの方が現実的だと思いました。
結局のところ、Courier で Raspberry Pi を使用して通知を有効にする方法について、しばらくの間考えていました。これはたまたま試してみるのに最適なユースケースだったので、適切なハードウェアに投資し、自分のソフトウェア開発スキルを利用して、小さなリークが発生したときに通知を受け取るようにすることにしました。家。こうすれば、問題が大きくなりすぎて処理できなくなる前に、配管工に電話して問題を処理することができます。
私自身、少し前にアパートで水漏れがありました。手遅れになるまで問題があることを知らなかったので、被害がすでに発生しているときに配管工を呼ばなければなりませんでした。このような単純なリークでも、修理に 500 ドル以上を費やしてしまいました。
しかし、事態はさらに悪化した可能性があります。多くの場合、カビの胞子によって大きな被害が生じます。また、水漏れは建物の構造物に損傷を与える可能性があります。壁が膨らみ、反り始め、ひび割れや穴ができます。さらに、水漏れは家の価値に悪影響を及ぼす可能性があります。
私は複雑な問題に対処したくなかったので、自分の手で問題を解決することにしました。しかしもちろん、楽しく興味深いだけでなく、役立つソリューションを見つけることも重要でした。
水漏れのアラートという形で解決策を研究しているときに、小型で手頃な価格のRaspberry Piシングルボード コンピューターを使用して目標を達成できることがわかりました。この小さなコンピューターで、水センサーからの信号を読み取り、それらの信号をモニターに送信することができました。
私がpotential-octo-lampと名付けたプロジェクトを開発するために、まず、水漏れを検出してコンピューターに接続するために必要なすべてのハードウェアを入手しました。これらのデバイスには以下が含まれます。
次のステップは、水漏れが検出された場合にアラートを送信する「potential-octo-lamp」を構築することでした。 JavaScript と TypeScript プログラミング言語を使用して、センサーからのリークをチェックするプロジェクトを作成しました。 potential-octo-lamp が検出すると、Courier と Twilio を使用して結果を私の電話に送信します。
Courierを使用すると、カスタム アラートを作成し、そのタイトルと本文テキストを定義できます。また、アラートが送信される通信チャネルと、これらのアラートの受信者を指定することもできます。また、Courier にTwilio統合を追加して、指定したチャネル (この場合は SMS と電子メール) を通じてアラートのコンテンツを配信しました。
幸いなことに、私は本当にいい人で、potential-octo-lamp をオープンソースにしました。私のプログラムを使用して、自分の家を水漏れから守ることができます。上記のハードウェア要件をすべて満たしたら、Raspberry を水センサーに接続します。それらの設定についてサポートが必要な場合は、このチュートリアルが役に立ちます。次に、potential-octo-lamp の使用を開始して、5 つの簡単な手順で水漏れのアラートを受け取ることができます。
CourierとTwilioのアカウントをまだ持っていない場合は、アラート システムを構成するために両方にサインアップする必要があります。電子メール アドレスを使用して Courier と Twilio に無料でサインアップできます。 Courier では、Google または GitHub アカウントを使用してアカウントを作成することもできます。
まず、Twilio からアカウント SID、認証トークン、およびメッセージング サービス SIDを取得します。次に、Courier アカウントにログインし、 Integrationsに移動します。 Twilio 情報を Courier の対応するフィールドに追加します。
Courier でアカウントを作成すると、認証トークンが取得されるため、Courier との間で安全にリクエストを行うことができます。ログインしたら、[設定] の [API キー] ページから Courier Auth Token を取得できます。
次に、GitHub に移動し、 potential-octo-lamp のクローンを作成します。 Courier Auth Token をコードに直接入力するのは安全ではないため、.env ファイルを作成してそこに追加します。そうすれば、あなただけに見えるようになります。
最後に、次のコマンドを次々に実行して依存関係をインストールし、水漏れのチェックを開始します。
npm インストール
npm ラン ビルド
npm 実行開始
床の水センサーが水漏れを検出するとすぐに、potential-octo-lamp が Courier に追加した受信者に水漏れのアラートを送信します。その後、漏れをすばやく修復して、さらなる損傷を防ぐことができます。
Potential-octo-lamp はオープンソースなので、複製して自分で使用できます。あなたが持っているかもしれない改善や提案も大歓迎です。プロジェクトに貢献したい場合は、問題を提起するか、私に連絡してください。