maxurlのサンプルを試す #cycling74 #maxmsp #curl
最近のアップデートで登場したcURLのMaxラッパーであるmaxurl。ついにMaxがインターネットと繋がる!と期待が高まり、勉強がてらサンプルコードを弄ってみました。
まずmaxurlのヘルプパッチを見るのがオススメです。タブになっていて、いくつものサンプルがいじれます。上記画像はヘルプパッチの良いねボタンサンプル。良いねボタンを押すとサーバー上のいいねカウントが1つあがる。
更に詳しい説明が書いてあったのは→Use MaxURL to Create a Realtime Instagram Collage
MaxでWeb APIを扱う2つの方法
どうやら、Maxがインターネッツとのリクエスト・レスポンスを扱う方法は二種類あるようです。
- maxurlとdictを使うパターン。JSONでクエリを生成し、それ以外はMaxらしいパッチングで行う方法
- jsオブジェクト(javascript)を使うパターン。XMLHttpRequestで行う方法
それぞれの方法についてCycling74のフォーラムにいくつかサンプルパッチがあったので試してみました。
MaxURL Weather Report
Maxから天候を取得してみようというサンプル。このサンプルは、maxurlとdictでAPIを使う方法。
天候取得クエリ
{ "http_method" : "get", "url" : "api.openweathermap.org/data/2.5/weather?q=Tokyo,jp", "response_dict" : "data1", "parse_type" : "json" }
元々のサンプルはロンドンの天気を取得していたのですが、東京の天気は、”London,uk” → “Tokyo,jp”と変更したら取得できました。
MaxURL SoundCloud
MaxからSoundCloudのAPIを使うサンプル。SoundCloud Developerの登録が必要です。例えば “livetune”と検索すると、ヒットしたURLがumenuに登録されます。このサンプルは、jsオブジェクトでAPIを使う方法。
ニコニコ横断検索API
サンプルにも慣れて、そろそろ自分で一から試してみようとAPIを探してみると、検索キーワードに関連したタグを返してくる”タグ検索API”というのを発見。将来的に”あのタグで待ってる。“に組み込んだら面白いかなと思って試してみました。
{ "http_method" : "POST", "url" : "http://api.search.nicovideo.jp/api/tag/", "post_data" : { "query" : "Free!", "service" : [ "tag_video" ], "from" : 0, "size" : 5, "issuer" : "apiguide", "reason" : "ma10" } , "response_dict" : "data4" }
こんなクエリーを投げると
レスポンスが帰ってきた!しかし、応答のBodyに対して文字列がエスケープ?のバックスラッシュが付きまくっている!!!Maxで消す方法がわからなくて、データを利用できなかった。
取得できたタグを見ると”Free!のためなら死ねる!”とか面白いですが、タグとして抽象度が低いのは使いづらいかも?!maxurlの使い方は未知数なので、今後も情報収集していきたいです!!!!!
Recent entries
- jit.gl.gridshape の matrixoutput についてのメモ #max8
- jit.gl.pix で簡易モーションブラー #max8 #jitter
- jit.gl.pix で Gold Noise #max8 #jitter
- Gen で配列をつくる検討 #Max8
- Package Managerで配布されているease objectを使いやすくしてイージング #max8
- Node for Max を用いて、定形外のUDPデータを受信 #Max8 #n4m
- 平ハウス物語 – 山田尚子監督作品 非公式ファンイベント
- The Splendid Expression – GITADORA×NOSTALGIA
- ghost in my place【from DEEMO II】
- EP “Boys O’Clock”
- 7th Album “多次元宇宙論”
- LEON.jpのWEB特集「大人のいい時間」にAromが紹介されました。
- 音できらめくキャンドルライト Arom(第2世代)発売開始
- EP “Strange Story”
- 都市の呼吸【from Cytus II】