Skip to content

museumsvictoria/nodel-recipes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nodel Recipe Logo

Thanks

Contribution Kindly made possible by Implemented by
May 2021: Sony SSIP protocol for displays recipe

About

A collection of recipes for Nodel, the digital control system designed for museums and galleries.

Written in Python (Jython) with the Nodel API, these recipes are used to integrate a wide variety of nodes (actionable agents) into the platform, ranging from device control and content management, to monitoring and scheduling.

Examples

Generated Nodes

Device Control

A device node generated from a recipe, and designed to integrate commonly used switched rack PDU devices for remote power control.

APC Recipe Example

Application Wrappers

An application node, generated from a recipe utilising the process wrapper in Nodel's toolkit to drive a popular open-source media player.

VLC Recipe Example

Schedulers and Calendars

A snippet of a calendar node, generated from a recipe which retrieves and propagates events in the platform from a popular online mail and calendaring service.

Calendar Example

Recipe Script

### Remote actions this Node requires
remote_action_PowerOnRP = RemoteAction()
remote_action_PowerOffRP = RemoteAction()

remote_action_PowerOnPC = RemoteAction()
remote_action_PowerOffPC = RemoteAction()

remote_action_PowerOnSD = RemoteAction()
remote_action_PowerOffSD = RemoteAction()

### Local actions this Node provides
def local_action_Enable(arg = None):
  """{"title":"Enable","desc":"Enable"}"""
  print 'Action Enable requested.'
  remote_action_PowerOnRP.call()
  remote_action_PowerOnPC.call()
  remote_action_PowerOnSD.call()

### Remote events this Node requires
def remote_event_Enable(arg = None):
  """{"title":"Enable","desc":"Enable","group":"General"}"""
  print 'Remote event Enable arrived.'
  local_action_Enable()

Installation

Recipes are the blueprints for a node. These exist as script files contained within the node structure ../nodel/nodes/[nodename]/script.py, and contain the node logic. They are scripted accordingly to the node type intended to be generated, with pre-made recipes available on this repository.

Recipe Guide

The folders created in the nodes directory will instantiate nodes on the Nodel platform. The folder name corresponds to the name as it appears on the web client.

There are example files generated automatically on the creation of a new folder in the nodes directory. You can access the recipes through the inline editor built into Nodel, or use your preferred text-editor.

Editor Preview

License

Credits