OctoPrint のセットアップは以下を参照
http://qiita.com/abe00makoto/items/45c4a4cfe91a0c70972a
その他、前提条件として ddclient と miniupnpc でセットアップを完了した状態としてください。
- URL: ddclient で 名前解決を出来るよう登録(hoge.dyndns.org とか)
- Port: 5000 を解放 (upnpc 192.168.1.x 5000 5000 tcp)
そのうえで、以下の設定を行います。
cd ~/bin touch 3dp-cloud.sh chmod +x 3dp-cloud.sh
作成した 3dp-cloud.sh を編集します。
sudo nano /home/pi/bin/3dp-cloud.sh
以下のようなフォーマットで curl を実行するようにします。
”<>” で囲った部分を書き換えてください。
curl -d "locationName=<Location>&octoUrl=<OctoURL>&octoPort=<Port>&imageUrl=<ImageURL>&imageport=<Port>&type=octo" http://cloud-3dp.azure-mobile.net/tables/printers
フォーマット:
- Location: 表示名なので任意の名前を付けてください
- octoURL: OctoPrintの URL (RaspberryPi が接続されたネットワークの IP もしくは DDNS で設定した URL)
- octoPort: 通常 5000 (miniupnpc でポート変換をしている場合は、外部ポートの番号)
- imageUrl: 画像がある場合はその URL
- imagePort: 画像を公開しているポート番号
- type: octo / imodela のいずれかを指定。
※ 最後の http://cloud-3dp.azure-mobile.net/tables/printers は登録先 URL なので固定です。
cron の定期実行タスクを編集します。
sudo crontab –e
上記スクリプトを 1 分ごとに実行させるため、最後の方に 1 行足します。
*/1 * * * * /home/pi/bin/3dp-cloud.sh
以下の URL にアクセスして一覧に表示されることを確認します。
(1 分以内に登録通知が行われたもののみが表示されます。)
cron で一分おきに通知を出さないと自動的にリストから消されます。