NodeRed – Gömülü Olarak Kullanmak

Node-RED’i, NodeJS uygulamanız içerisinden doğrudan çalıştırabilirsiniz. Bu genellikle Node-RED’in akış editörünü daha büyük bir uygulama içinde sanki onun bir parçasıymış gibi kullanmak gerektiğinde yapılır. Port çakışması olmaması için Node-RED servisini durdurmalı ve devre dışı bırakmalısınız. Ardından aşağıdaki kodu NodeJS uygulamanıza dâhil ederek Node-RED’i uygulamanız içinden kullanabilirsiniz.

var http = require('http');
var express = require("express");
var RED = require("node-red");
// Create an Express app
var app = express();
// Add a simple route for static content served from 'public'
app.use("/",express.static("public"));
// Create a server
var server = http.createServer(app);
// Create the settings object - see default settings.js file for other options
var settings = {
    httpAdminRoot:"/red",
    httpNodeRoot: "/api",
    userDir:"/home/nol/.nodered/",
    functionGlobalContext: { }    // enables global context
};
// Initialise the runtime with a server and settings
RED.init(server,settings);
// Serve the editor UI from /red
app.use(settings.httpAdminRoot,RED.httpAdmin);
// Serve the http nodes UI from /api
app.use(settings.httpNodeRoot,RED.httpNode);
server.listen(8000);
// Start the runtime
RED.start();

Yukarıdaki örnek koddan bahsetmek gerekirse, settings dizisi ile Node-RED ayarlarının tanımlandığını görebilirsiniz. Buradaki gibi gömülü (embedded) uygulamalarda Node-RED yapılandırma dosyası olarak settings.js’yi kullanmaz ayarlar, ilgili ayarlar RED.init aracılığıyla bildirilir. Ayarlar tanımlandıktan sonra server.listen komutu ile de Node-RED’in çalışacağı port ayarlanır.

Yazar: Özgür Koca

Yazar - Tankado.com

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.