タグ

Node.jsに関するmk16のブックマーク (9)

  • ノーリツ製の給湯器リモコンをPCからNode.jsで操作する(ECHONET Lite)

    こんにちは。 久しぶりに帰省したところ、実家の給湯器のリモコンがIoT対応の製品 RC-G001MW-2 (ノーリツ)になっていました。これはハックしなければならないと思っていじってみたところ、HEMS向けの機能を利用することでわりと容易に制御できたので記事にしてみた次第です。 (画像:ノーリツ公式サイトより) 成果物のコマンドラインツールはnpmに公開しているので、同じモデルや同一プロトコルに対応した給湯リモコンをお持ちの方は実験できるかもしれません(詳細は記事末尾参照)。 HEMS HEMS (Home Energy Management System)とは宅内のエネルギー使用量を管理・可視化する装置です。昨今のIoT対応家電はHEMSとの連携が前提になっているものも増えているようです。 ECHONET Lite HEMSのために国内で策定された通信規格がECHONET Lite(エコ

    ノーリツ製の給湯器リモコンをPCからNode.jsで操作する(ECHONET Lite)
  • niw.at — Base128

    最近お遊びで JavaScript を書いていると気がついたら C++ を書いてるのはなぜか疑問に思っていたのですが、それは Node.js の拡張モジュールを作っていたからなのでした。 というわけで、しょうもないものができたので公開します。ついに npm デビュー★ Base64 とは Base64 とは、オリジナルのバイナリを 64 文字の可視 ASCII 文字、つまり大文字小文字英字52文字と数字10文字とあと + と / (余白を埋めるのに = も) を使って表現する方式で、例えば、オリジナルの 3 オクテットのデータ (24bit) は 4/3 倍されて 4 オクテット (32bit) になります。 結果、バイナリデータがクリーンな ASCII 文字で表現できるので可搬性が増したりします。 実際、そうはいっても + と / があるので、URL に入ってるとダブルエスケープされたり

  • codestre.amがヤバい - すぎゃーん日記

    codestre.am: streaming your code to the massesというWebサービスがヤバい。 他人のターミナルでの操作と出力をライブで見られるし、記録されたものを後から再生して見ることもできる。 試しに書いてuploadしてみた。 http://codestre.am/1 簡単なFizzBuzzワンライナー http://codestre.am/3X tmuxを起動してその上でemacsでコード書いたりしても再現できる 仕組みとしてはnpm install -g codestreamでインストールしたコマンドを起動すると、socket.io-clientでサーバに繋ぎ、子プロセスとしてbashを立ち上げて操作させつつ、ターミナルの出力を拾って時刻情報を付加してサーバに送信している、ようだ。サーバ側はおそらくそれぞれ保存しておいて時間順に出力することで再生させて

    codestre.amがヤバい - すぎゃーん日記
  • WebSocket のバイナリメッセージを試したら、ウェブの未来が垣間見えた

    長い記事なので、先に結論だけ書いておきます。WebSocketのバイナリメッセージ機能は、これまでのインターネットのあり方をひっくり返します。「そんなの知ってるよ」という方もいるとは思います。僕も理屈では分かってたつもりだけど、実際にアプリを作ってみて、具体的にそれを感じることができたので、ちょっと長いですがどういうことなのか説明してみます。 WebSocketとは # WebSocketは、HTML5関連の中でも特に注目を集めている技術の一つです。通常のHTTP通信であればクライアントからのリクエストなしにサーバーは応答しませんが、WebSocketを使うことでクライアントとサーバーの間で双方向の通信が可能となります。これを利用することで、今後様々なリアルタイム性の高いサービスを構築することが可能になるでしょう。 そんなWebSocketですが、これまで波乱の道を歩んできました。数年前か

    WebSocket のバイナリメッセージを試したら、ウェブの未来が垣間見えた
  • 10分でわかる Node.js

    Ryan Dahlの目指したもの Node's goal is to provide an easy way to build scalable network programs. Nodeの目的は、スケーラブルなネットワークプログラムを作成する簡単な方法を提供することです なぜこれを目指す必要があったのか 解決すべき問題があったから 解決すべき問題 C10K問題 - ハードウェアの性能に関わらず、同時接続するクライアント数に限界がきてしまう問題 - 原因は複合的だが、主な原因の1つはスレッド数の増大 - Ajax/Cometが出てきて注目された どうやって解決したか イベントループとノンブロッキングI/O

  • https://looseleafjs.org/munode/

  • node.js ハンズオン資料 — node.js hands-on v1.0 documentation

    node.js ハンズオン資料¶ このドキュメントは node.js をハンズオンを通じて学習するためにまとめた資料集です. プログラミングの基を知っている Unix コマンドの基を知っている JavaScriptの基を知っている ことを前提に、node.js 上で動作するプログラムの作成を通じて、node.js を学習していきます。 最新版 ソース オンライン log 2010/10/30 絶賛作成中. 非同期IOメソッドを使う まで完了. 入れてほしいコンテンツがあれば @yssk22 まで.

  • node.js とは何か - I am bad at math

    期せずして久々の更新になってしまった。ブログを書く気がなくなったとかそういうのではなくてただ単に忙しかっただけ。その間、まぁ仕事が予期せぬ方向から炎上してみたり、事故をもらって愛車が全損したり(フロントガラスが全面熱線入りなんていう変なオプションなどを諸々付けていたからお気に入りだったのに)と決して良いことばかりで忙しかったわけではないけどね! で、今回は node.js のお話。異様な盛り上がりを見せているものの、じゃぁそれっていったい何かというと「JavaScriptを用いたNon-blocking I/O環境」という非常にシンプルなものだ。 その根底には「うまくスケールできること」と「動作が速いこと」という理念が見受けられる。 まず「うまくスケールできること(多量のアクセスを捌けること)」を解決するにあたり、まずはスレッドモデルか、イベントループかという問題があった。そこで auth

    node.js とは何か - I am bad at math
  • WebSocketで目指せ“リアルタイムWeb”!第1回 node.jsの衝撃とWebSocketが拓く未来 - @IT

    ご挨拶 こんにちは、ロンドンのNew Bambooという会社でWebエンジニアとして働いている@makoto_inoueです。ここのところ、PusherというWebSocketのクラウドサービスの開発に関わっています。今回から3回に渡ってWebSocketに関する短期連載を担当させていただきます。 私を含めたNew Bambooの面々(我々は自分たちのことをBambinoと呼んでいます)がWebSocketになぜ興味を持ったかということからはじまり、実際にクラウドサービスを始めるまでにいたったストーリーをお話ししたいと思います。そのストーリーを通じて、WebSocketが切り開く「リアルタイムWeb」な世界への可能性や技術的課題を皆さんと共有できればと思っています。

    WebSocketで目指せ“リアルタイムWeb”!第1回 node.jsの衝撃とWebSocketが拓く未来 - @IT
  • 1