Wolfram言語

チャネルフレームワーク

Amazon Lambdaとインタラクトする

Amazon S3のアカウントで,着信メッセージをリッスンセッションに転送するNode.jsベースのLambda関数を設定する.

'use strict'; let https = require('https'); exports.handler = (event, context, callback) => { var req = https.request({ host: 'channelbroker.wolframcloud.com', path: '/users/user@sample.com/cloud?operation=send', method: 'POST', }, function(res) { console.log('status:', res.statusCode); }); req.on('error', function(e) { console.error(e); }); req.write(JSON.stringify(event)); req.end(); };

適切なパーミッションを持つバケットから画像を読み取るチャネルのリッスンし始める.

In[1]:=
Click for copyable input
bucket = "wl-channels";
In[2]:=
Click for copyable input
image = "";
In[3]:=
Click for copyable input
listener = ChannelListen[ "cloud", (image = ImportString[ URLRead["https://" <> bucket <> ".s3.amazonaws.com/" <> #Message["Records"][[1]]["s3"][ "object"]["key"], "Body"]]) &, Permissions -> <|"All" -> "Write", "Owner" -> {"Read", "Execute"}|>]
Out[3]=

バケットにいくつか画像をアップロードし,到着と同時に動的にその画像を表示する.

In[4]:=
Click for copyable input
Dynamic[image]
Out[4]=

受信したメッセージの累積ログ.

In[5]:=
Click for copyable input
listener["Dataset"]
Out[5]=

関連する例

de en es fr ko pt-br ru zh