node-red / node-red-web-nodes Goto Github PK
View Code? Open in Web Editor NEWA collection of node-red nodes aimed at web services
License: Apache License 2.0
A collection of node-red nodes aimed at web services
License: Apache License 2.0
The user has the choice of either:
API Key
- The user provided API key for the TFL feed.Or:
Station
- A drop down menu of street names corresponding to the stations.Or:
Station
- A drop down menu of street names corresponding to the stations.name
- Text description of the street in which the station is e.g River Street, Clerkenwell.lat
- latitude location of the station.lon
- longitude location of the station.locked
- a boolean which tells the user whether or not the station is locked. If the station is locked, the user can return a bike, but not retrieve it.bikes
- The amount of available bikes at the station.spaces
- The amount of open spaces at the station.The foursquare node allows the user to select how they would like to receive output. This works great as a single output, or multiple outputs in a single msg object. However, if you want multiple outputs in multiple msg objects, the node itself does not reflect the change in the number of outputs. Therefore, even though the code is passing an array of msgs, you only ever receive the first msg object at the next node. There needs to be an implementation much like how the 'switch' node handles adding an output.
@hbeeken, @hindessm - Am I misreading anything in the code path? It seems foursquare/foursquare.html:279 looks to set the number of node outputs to 1, and it is never changed.
If we want to use the node to search for places to eat tomorrow evening because we know we're going to be somewhere at that time then the current node only searches for places which are open at the time of asking. This is a simple and useful extension to provide.
filepattern
- minimatch/glob pattern to filter files on (optional, default include all files)payload
- the full path of the changed filefile
- the basename of the changed fileevent
- the type of event either add
or delete
data
- the raw change object from the api call responsefilename
- full path of file to retrievelocalfilename
- local file to write content to (optional - defaults to storing content in payload)filename
- full path of file to retrievelocalfilename
- local file to write content topayload
- the content of the file (deleted if there is an error)filename
- the full path of the file retrievederror
- an error object (deleted if the request was successful)filename
- filename of the remote box.com filelocalFilename
- local filename containing the content to be uploaded to box.comfilename
- filename of the remote box.com filelocalFilename
- local filename containing the content to be uploaded to box.compayload
- the content to be uploaded (localFilename
takes priority)Uses oauth2 with access token with a 1 hour lifetime and a refresh token with a 60-day lifetime. The refresh token is updated every time we update the access token for a request but we might want to make sure the node triggers a refresh of the access token every few days when no other requests have been made to ensure the refresh token remains valid.
album
localFilename
- local filename containing the content to be uploadedlocalFilename
- local filename containing the content to be uploadedpayload
- the content to be uploaded (localFilename takes priority)delete
- if set, the remote file will be deleted from the albumphoto_id
- used to identify the photo to be deletedUsers must register their own app at https://developers.facebook.com/ and paste the required tokens into the node. The user must then do the oauth in the browser to get a short-term access token. This can be exchanged for a long-term (60-day) access token. The long-term token must be refreshed but the user is expected to be available to confirm if required. Status messages can only be posted using short-term access tokens.
Test users may be created see https://developers.facebook.com/docs/graph-api/reference/v2.1/test-user
Access tokens are described at https://developers.facebook.com/docs/facebook-login/access-tokens
There are two main candidates for node wrappers for the API:
Options
Location Type
- City or Coordinates. Either makes certain extra options appear._Appears when coordinates is selected:_
Longitude
- For the user to provide the longitudinal degree of the location.Latitude
- For the user to provide the latitudinal degree of the location._Appears when City is selected:_
City
- For the user to provide the current city from which they wish to get the weatherCountry
- For the user to provide the current country in which that city is located.msg options
payload
A brief verbal description of the current weather, humanly readable.weather
An extremely short description of the current weather (Clouds, Rain, Sun, etc.)detail
. A more detailed expansion on the weather
descriptiontempk
. The current ground temperature in Kelvinhumidity
. The current humidity percentage.maxtemp
. The maximum temperature at the moment.mintemp
. The minimum temperature at the momentwindspeed
. The current wind speed in metres per secondwinddirection
. The current wind direction in meteorological degreestown
. The exact source location for the weather datalong
. The longitude of the location from which the weather data has been pulled.lat
The latitude of the location from which the weather data has been pulled.sunrise
. The time at which the sun rose.sunset
. The time at which the sun will setclouds
. The cloud coverage percentage.Options
API Key
- The user provided API key.Forecast
- 7 days from now, or specific date and time. Either makes certain extra options appear.Longitude
- For the user to provide the longitudinal degree of the location.Latitude
- For the user to provide the latitudinal degree of the location._Appears when specific date and time is selected:_
Date
- A user provided date.Time
- A user provided time.TO BE DECIDED. Will be a similar format to the openweathermap output data.
If you open the TFL underground node, leave the terms and conditions box unticked and hit cancel, all active and new node OK buttons become disabled.
These buttons remain disabled until any TFL node is opened and the terms box is ticked. At this point, all the OK buttons are re-enabled.
Node-RED currently provides the following Swarm capability:
The input node polls the Foursquare API every 15 minutes for the latest Swarm check-ins that have been made by the authenticated user since the node was registered. If a new check-in has been made within the polling interval then msg.payload is set to be the JSON of the most recent new check-in. The properties of the Swarm check-in are documented at https://developer.foursquare.com/docs/responses/checkin.
More specifically:
The query node sets msg.payload to be the JSON of the most recent Swarm check-in by the authenticated user since the node was registered. As with the input node, the properties of the JSON are documented at https://developer.foursquare.com/docs/responses/checkin.
More specifically:
Users must register their own app with https://www.foursquare.com and paste the required access tokens into the node. Help is provided within the node UI.
Can't seem to install the Flickr node on brand new installation of NodeJS and Node-RED on Raspberry Pi2.
It appears to install fine with NPM but then doesn't show up in the Node-RED editor. See output of node-red -v below:
18 Aug 10:06:05 - [info] Node-RED version: v0.11.1
18 Aug 10:06:05 - [info] Node.js version: v0.12.6
18 Aug 10:06:05 - [info] Loading palette nodes
18 Aug 10:06:13 - [warn] ------------------------------------------
18 Aug 10:06:13 - [warn] [flickr] Error: Cannot find module 'oauth'
18 Aug 10:06:13 - [warn] ------------------------------------------
filepattern
- minimatch/glob pattern to filter files on (optional, default include all files)payload
- the full path of the changed filefile
- the basename of the changed fileevent
- the type of event either add
or delete
data
- the raw change object from the api call responsefilename
- full path of file to retrievelocalfilename
- local file to write content to (optional - defaults to storing content in payload)filename
- full path of file to retrievelocalfilename
- local file to write content topayload
- the content of the file (deleted if there is an error)filename
- the full path of the file retrievederror
- an error object (deleted if the request was successful)filename
- filename of the remote dropbox filelocalFilename
- local filename containing the content to be uploaded to dropboxfilename
- filename of the remote dropbox filelocalFilename
- local filename containing the content to be uploaded to dropboxpayload
- the content to be uploaded (localFilename
takes priority)Users must register their own app at https://www.dropbox.com/developers and paste the required tokens into the node.
Hi @knolleary, @dceejay,
Please can you enable travis and coveralls test/reporting for this repository? So we get errors reported for pull requests.
-Mark.
It looks like the weather node has been missed from package.json - is this intentional?
The swarm node needs to be updated to add location information properties so these can be used by nodes further down the flow.
Users must register their own app at https://dev.fitbit.com/apps/new and paste the client key and client secret into the configuration node then complete an oauth authorization.
The credential node should enable the configuration of the unit system
None?
The output message for events will be based on the documented XML. It might be a good idea to invert the structure so that the main object is the event rather than the order since it is likely that the event is the thing the user would want to process - for example to create a calendar entry.
node options
tags
- comma separated list of tags to apply to all photosprivate
- default privacy option (boolean)message option
payload
- the url to save (required)title
- the title for the bookmark (required)description
- the long description for the bookmark (optional)example flow
[twitter: following a hashtag] - [function: extract any urls] - [delicious: add bookmark]
The node will query the Jawbone UP API to retrieve the latest (latest one or latest 10) workouts that have been completed since the provided workout start time. If no start time has been specified then the default is from the time the query is run.
The user can specify how they wish to return the results, either as a single or as multiple messages.
OAuth2.0 authentication is required in order to use this node.
We'd like to support three possible scenarios with the Runkeeper fitness node initially (we'd like to have the capability to drop in/exchange Runkeeper nodes with Strava nodes so issue #92 is closely related and is almost identical to this issue ):
* Use case 1 (current priority focus): Poll the authenticated user's activities and get details for the most recently uploaded activity => Can be used in flows that check if the user has indeed done scheduled (Google Calendar) activity. If the user has not done activity, certain actions can be taken (re-schedule activity, send text message to coach, notify user to upload activity, etc.)
* Use case 2: Segments => NOT supported by Runkeeper. Runkeeper supports "Records" but they're personal records (say activities number per week, etc.) so it can't be drop-in/replaced.
* Use case 3: Get activities of friends. => Again, NOT possible on Runkeeper.
http://developer.runkeeper.com/healthgraph/fitness-activities
Can be used to send out initial message if:
Can be used to query the most recent activity of:
To be added to credentials as usual.
http://developer.runkeeper.com/healthgraph/registration-authorization
Will pull calorie and food information that the user has input for a certain date from their Fatsecret account. This date can either be supplied in the node settings or as a the msg.time. There will also be a "yesterday" and "today" option.
A polling system could be used to output a food whenever a new food is added to the user's diary. This feature is currently only proposed though.
The API allows the user to add foods to their diary. A node could be implemented which would attach itself to a specific food and add it to the user's diary at time of input (similarly to the TFL cycle hire node pulling information to a set station).
A node like this would be useful for allowing the user to automatically add foods they regularly eat (add coffee every morning, add my favourite meal if a foursquare checkin at a restaurant etc.)
However, this would require accessing the API using credentials (an issue not present in the TFL API) and as this is the UI trying to access credentials, they often aren't yet in the runtime. This causes complications.
There are also exercise functions in the app and API, which could be used in conjunction with runkeeper or strava.
credentials
- the user will need to register for the api and follow the OAuth procedure to gain access to the API and use the node.The output will be an object containing 4 arrays:
breakfast
- Will contain foods eaten that day for breakfast.lunch
- Will contain foods eaten that day for lunch.dinner
- Will contain foods eaten that day for dinner.other
- Will contain foods eaten that day outside of meals (snacks).These arrays will contain several (or zero) objects with these properties:
food
- Text name of the food.calories
- Number of calories of that food eaten.serving
- Size of serving of the food eaten.amount
- Amount of servings of the food eaten.node options
tags
- space separated list of tags to apply to all photosprivacy
- p
:public, pr
:private, fr
:friends, fa
:family, fafr
:friends and familymessage option
payload
- a Buffer containing the image (required)title
- the title for the photo (optional)description
- the long description for the photo (optional)tags
- tags to be applied (in addition to any set in the node). Either a string containing space-separated tags, or an array of individual tags.example flow
[gpio: sensor triggered] - [exec: triggers webcam] - [file: reads image] - [function: sets title] - [flickr: uploads]
When node-red is deployed on the default http(s) ports (80/443), the redirect URIs for OAuth2 authentication in the web nodes include a colon.
For example: https://fred.sensetecnic.com:/red/google-credentials/auth/callback
should be: https://fred.sensetecnic.com/red/google-credentials/auth/callback
This causes problems with OAuth services that are strict about the callback URIs matching what is registered. Google will not accept a callback URI with a colon.
Also, related to this, instagram, and some others (strava?) do not include the path that NR is running on. For in the above example the /red/
part of the URI.
Node-RED version: v0.10.10
node-red-0 (out): 10 Aug 11:46:02 - [info] Node.js version: v0.10.28
(running on MacOSX10.10.4)
If I install the wunderground nodes and restart NR the flow is initially displayed as in the first image
and then a second or two later it "fixes" the position of the nodes but without any connections(image2)
tested on both Google Chrome 44.0.2403.130 and Safari 8.0.7 (10600.7.12) (both on MacOSX10.10.4)
If I uninstall the wunderground nodes normality is restored.
Console Errors:
[Error] TypeError: undefined is not a function (evaluating 'this._("wunder.label.wunder")')
label (undefined, line 19)
(anonymous function) (red.min.js, line 17)
(anonymous function) (vendor.js, line 1142)
Tn (vendor.js, line 1140)
each (vendor.js, line 1142)
x (red.min.js, line 17)
(anonymous function) (red.min.js, line 17)
emit (red.min.js, line 17)
onchange (red.min.js, line 17)
d (red.min.js, line 17)
b (red.min.js, line 17)
dispatch (vendor.js, line 3)
handle (vendor.js, line 3)
[Error] TypeError: null is not an object (evaluating 'e.getAttributeNS')
attr (vendor.js, line 1142)
(anonymous function) (red.min.js, line 18)
(anonymous function) (vendor.js, line 1142)
Tn (vendor.js, line 1140)
each (vendor.js, line 1142)
x (red.min.js, line 17)
redraw (red.min.js, line 18)
(anonymous function) (red.min.js, line 16)
onmessage (red.min.js, line 16)
The node uses
as the basis for the venue search for the specified section of venues. It then makes a call out to the Foursquare venue API for the list of recommended venues near this location.
The user can specify how many results to return along with how these should be returned, either as a single message or as multiple messages. If the number requested is greater than the number of results returned from the Foursquare query, all results are returned.
For what's returned and when see Nick's comment below....
The ui has a drop down to enable the user to choose which type of venue to search for, the options being "food", "outdoors" and "sights". There is also an empty option which enables the user to configure the node using the incomming msg.section.
The ui also provides the user with the ability to choose how many results are going to be returned and how this is to be returned (either a single message or multiple messages)
node options
type
- photo
: use uploaded photo(s), like
: use likesoutput
- stream
: payload will be an image buffer/stream, link
: payload will be a string URL pointing to the imagemessage options
msg.payload
: either an image as a buffer or a string/URL pointing to the image => here we currently default to linking/downloading the "big" (640x640) image. (Future feature could be to fetch the "medium" or "small" images)msg.lat, msg.lon, msg.time
: If additional metadata is available for the given photo then the node populates the msg object with additional location information (lat, lon for latitude, longitude) and msg.time carries a JavaScript Date object, representing the capture time of the photo.example flows
[inject node] - [instagram : we posted image 5678] - [irc - send message to IRC channel about image posted]
[inject node] - [instagram : we liked image 5678] - [dropbox - back up image on dropbox]
I've just received 8 identical Emails from fitbit ( I guess they really wanted to tell me!) to let me know that they are moving from OAuth1.0 to OAuth2.0
"Applications should upgrade to OAuth 2.0 by March 14, 2016. OAuth 1.0a support will be removed from the Fitbit Web API six months from now on April 12, 2016. Documentation for using OAuth 2.0 with the Fitbit Web API is available at https://dev.fitbit.com/docs/oauth2 ."
as per https://groups.google.com/forum/#!topic/node-red/RZboCmkhmHw
The instructions are missing an important step - actually enabling the API ;-)
The error message (line 201 in directions.js) is also misleading as it does not reflect the error that Google is returning.
having worked out why the Google directions node was misbehaving I can now successfully return directions information.
However the node-status is stuck as a red donut and "failed".
Refreshing the browser, & turning off & on the "display node status" still has status as "failed" even as results are being returned.
node-red-0 (out): 28 May 11:43:17 - [info] Node-RED version: v0.10.6
node-red-0 (out): 28 May 11:43:17 - [info] Node.js version: v0.10.28
By design it would appear that Google's Calendar API returns deleted items (why? It appears a crazy choice to me!).
This means the Query node which returns the next entry can return a deleted event.
Whilst the status can be seen within the raw data object, given some of the data is exposed within the payload object should the "status" of the event be included?
Or should the node be able to return the first non-deleted event?
We'd like to support three possible scenarios with the Strava fitness node initially:
* Use case 1 (current priority focus): Poll the authenticated user's activities and get details for the most recently uploaded activity => Can be used in flows that check if the user has indeed done scheduled (Google Calendar) activity. If the user has not done activity, certain actions can be taken (re-schedule activity, send text message to coach, notify user to upload activity, etc.)
* Use case 2: I'm in a new location, I would like to get segments for the nearby area. This is to be used in Location-based flows to find new exercise routes in an unknown area. => Problem is that segments are NOT actual routes. Routes cannot be retrieved using Strava.
* Use case 3: Get activities of friends. => Could be used for route finding in a very complicated, unnatural way. => Get activities of friends => Check location of activity => If near current location, use as recommendation?
http://strava.github.io/api/v3/activities/#get-activities
http://strava.github.io/api/v3/activities/#get-details
http://strava.github.io/api/v3/segments/#explore
http://strava.github.io/api/v3/segments/#retrieve
Can be used to send out initial message if:
Activity mode:
Can be used to query the most recent activity of:
Segment mode:
To be added to credentials as usual.
The help text as displayed in the info tag doesn't appear to match the usage of the node. In use, the node follows the form that @hindessm describes in #16 in that the node returns the next calendar entry. and takes anything from msg.payload and adds that as a search term.
This however doesn't tally with the information in the info tab which suggests the node is for adding an event to the calendar.
4 Dec 11:40:02 - [red] Uncaught Exception:
4 Dec 11:40:02 - SyntaxError: Unexpected end of input
at Object.parse (native)
at IncomingMessage. (/home/zoltan/git/node-red-web-nodes/weather/weather.js:97:37)
at IncomingMessage.EventEmitter.emit (events.js:117:20)
at _stream_readable.js:920:16
at process._tickCallback (node.js:415:13)
@Raminios , we should try to handle this gracefully, otherwise it kills the whole of Node-RED.
Thanks! ;)
I followed the instructions in the Google Calendar Node (config node) -
( the google instructions are out of date in terms of their site navigation)
I used the address given after the following: "Please configure the authorized Redirect URIs of your app to include the following url:http://192.168.0.43:1880/google-credentials/auth/callback"
and successfully created a ClientID and Secret.
However, on clicking "Authenticate with Google" I get the following error:
- That’s an error.
Error: invalid_request
device_id and device_name are required for private IP: http://192.168.0.43:1880/google->credentials/auth/callback
Any ideas?
I am using node-red as backend of my application. I pass flows to node-red using runtime api and with POST request to /flows.
I authenticate my app to instagram and pass received token to node-red like following array:
[
{
"type": "instagram",
"instagram": "",
"inputType": "like",
"outputType": "link",
"name": "",
"x": 123,
"y": 321,
"wires": [
[]
],
"credentials": {
"client_id": "my_client_id_from_instagram_panel",
"client_secret": "my_client_secret_from_instagram_panel",
"redirect_uri": "http://127.0.0.1:7070/red/instagram-credentials/auth/callback",
"code": "auto_generated_hash_code",
"username": "my_instagram_usename",
"access_token": "received_token_from_instagram"
}
}
]
but when I POST this array to /flows url of api. the imported node doesnt have any credentials and cant access instagram images.
is there any solution for this matter ?
The openweathermap node suddenly stopped working on Oct 10th 2015 at app 5:45AM EST. This showed up on three sites I've deployed in seperate locations. I've set up a test site and the only message I get in the debug or log is:
13 Oct 06:06:34 - [error] [openweathermap:Weather] The API call returned invalid JSON
any ideas?
HI all,
Here's my trouble,
I'm using the google calendar node on a raspberry pi (I access it via a computer). I wrote an entry in hosts, created an app with the right redirect URI ("node-red-example.com").
But when I try to authenticate with google, after having accepted the permissions, the redirection to the page "Authorised - you can close this window and return to Node-RED" fails (web browser returns a 105 error code), I think it is because the DNS does not know the "node-red-example.com" domain...
It only works if i replace manually the "node-red-example.com" with my raspberry IP in the failing URL, do you have any solution to provide having to do it by myself each time ?
The node uses
as the basis for the venue search for the specified section of venues. It then makes a call out to the Foursquare venue API for the list of recommended venues near this location. In this first version, only the first in the ordered list of recommended venues from Foursquare is returned to the user with
The ui has a drop down to enable the user to choose which type of venue to search for, the options being "food", "outdoors" and "sights". There is also an empty option which enables the user to configure the node using the incomming msg.section.
The ui also provides the user with the ability to choose how many results are going to be returned. In this first version the only option is to return one result.
This is a very simple query node which has been pulled out of the TFL node in issue #79.
The user specifies which London Tube line they're interested in from a drop down list. The node queries the TFL API for the status of all London tube lines and then filters the result based on the user's input.
The status information is returned in the following way:
Basic idea of UI:
The user is required to register with the TFL (https://api-portal.tfl.gov.uk/). There is a checkbox in the UI for the user to declare they have done this. The "OK" button for the node is only enabled when this is done.
Building a fresh Docker container for a Raspberry Pi tonight and getting this error at module load time:
nodered_1 | 22 Jul 05:00:36 - [warn] [wunder] SyntaxError: /usr/local/lib/node_modules/node-red-node-weather-underground/wunder.js:87
nodered_1 | else {
nodered_1 | ^^^^
The build is with node.js 0.12 + Node-RED 0.11 but I am pretty well convinced that this is a simple fix.
This node will use the Transport for London (TfL) provided "Network Status & Train Prediction Services Development Beta SDK v0.2" (Tube departure boards, line status and station status). The API is documented at http://www.tfl.gov.uk/cdn/static/cms/documents/trackernet-data-services-guide-beta.pdf .
These node are Line & Tube station focused. (Get data about a particular line or get data about a particular station as part of a line).
Generally we have the following scenarios we'd like to support:
The API is in XML so an XML parser is to be picked for use. The API doesn't support location based on latitude/longitude so the user will have to select the underground line from a drop-down. Then they'll need to select the relevant station. Then the desired terminal direction of the trains. It's only then possible to send relevant information. Partial data input is possible (say only selecting a line gives line status, only selecting a line & station but not direction gives station info).
Although the Swarm node is called "Swarm", the credentials part of it should be "Foursquare". This has become apparent when looking at flows to do with using Foursquare to find "venues near me". The venues side is definitely Foursquare and the check-ins side is definitely Swarm, however, they share the same credentials and should only be entered once by the user. The Foursquare API docs say:
"For now, our OAuth process remains exactly the same, and developers and apps will be able to see a connected user’s information across both Foursquare and Swarm (although we have two apps, there is still only one User model for Foursquare users)."
Since the main "brand" is Foursquare, the credentials should be named foursquare-credentials.
Thoughts?
This node will use the Transport for London (TfL) provided "Live bus and river bus arrivals API". The API is documented as http://www.tfl.gov.uk/cdn/static/cms/documents/tfl-live-bus-and-river-bus-arrivals-api-documentation.pdf .
These nodes are Bus Stop focused. (Get bus stop data or events related to bus stops.)
Generally, we have the following two main scenarios we'd like to support:
TfL has more than 19000 bus stops, 700 bus routes and 8000 buses. Therefore listing all of them as options in a node are not viable.
The main purpose of the input node is to send out a notification message when certain events happen at bus stops. Examples: bus arrival, bus departure. => trigger a message.
Alternatively trigger a message n time before bus arrival.
The node refreshes state every 30 seconds as the API refreshes its state this frequently.
The query node is mainly used to get status for a particular bus stop if we are already waiting at the stop for a bus. It can give us information about when a particular bus arrives/leaves the stop. The arrival/departure prediction is queried & then sent upon incoming input message.
* I'm at home, my home geocoordinates are X, Y. I'm heading to work. I need notification when to leave home (takes me 5 minutes to walk to bus stop). So I need to get a 7 minute advance warning when bus number N is about to depart from stop.
@hindessm , I've been looking at the description of the Dropbox nodes. I personally believe, they could be clearer and updated.
The most confusing one is the Dropbox query node. The first sentence of the description says "Dropbox input node". I think a different term should be invented for similar nodes or the action described better.
For the Dropbox input node, is "watch node" a defined term? How about "glob pattern"?
I would also prefer to read text split into paragraphs.
I hope I'm not too harsh here, what do you think?
if the node red admin root is not '/', the tfl node cannot get the stops and the lines to populate the config UI for the bus nodes.
remove leading / from the URL on lines 185 and 269 of tfl-bus.html as in the following will fix this.
185 var url = 'tfl-bus/linesquery/?' + query;
269 var url = 'tfl-bus/stopsquery/?' + query;
bucket
- the bucket to watchfilepattern
- minimatch/glob pattern to filter files on (optional, default include all files)payload
- the full path of the changed filefile
- the basename of the changed fileevent
- the type of event either add
or delete
bucket
- bucket to retrieve file fromfilename
- full path of file to retrievelocalfilename
- local file to write content to (optional - defaults to storing content in payload)bucket
- bucket to retrieve file fromfilename
- full path of file to retrievelocalfilename
- local file to write content topayload
- the content of the file (deleted if there is an error)bucket
- the bucket the file was retrieved fromfilename
- the full path of the file retrievederror
- an error object (deleted if the request was successful)bucket
- a bucket to store files infilename
- filename of the remote s3 filelocalFilename
- local filename containing the content to be uploaded to s3bucket
- override the node configured bucket
filename
- filename of the remote s3 filelocalFilename
- local filename containing the content to be uploaded to s3payload
- the content to be uploaded (localFilename
takes priority)Users must register their own app at http://aws.amazon.com/ and paste the access key id and secret access key into the node.
Hello,
In the Google Calendar node, when using it from a .local domain, the configuration information in the node seems to think .local is a public domain and doesn't give the correct information (regarding the correct domain to use as a callback uri and the modification of the hosts file.
Accessing the same instance with the ip address shows the correct message.
calendar
- calendar to lookup events incalendar
- calendar to lookup events inpayload
- text search used to select relevant events (optional)title
- the summary string from the calendar entrydescription
- the description from the calendar entrylocation.description
- the location string from the calendar entrydata
- the raw event from the google calendar querypayload
object containing:
title
- the summary string from the calendar entrydescription
- the description from the calendar entrylocation.description
- the location string from the calendar entrystart
- Javascript Date of start time - midnight for all day eventend
- Javascript Date of end time - midnight for all day eventallDayEvent
- true if event is an all day eventcreator
- object containing name
and email
propertiesattendees
- list of objects containing name
and email
propertiescalendar
- calender to add events tocalendar
- calendar to add events topayload
- string describing the event in quick add formatThe calendar
option should be able to specified as the id string of the calendar, name of the calendar, or the string primary
to use the users primary calendar. The default will be primary
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.