我在同一个.js文件上创建了一个SOAP客户机和服务器。
index.js
"use strict"
var soap = require('strong-soap').soap;
var express = require('express');
var Promise = require('promise');
var app = express();
var WSDL = soap.WSDL;
var xml = require('fs').readFileSync('centralsystemservice_1.5.wsdl','utf8');
var xmlCl = require('fs').readFileSync('chargingpointservice_1.5.wsdl','utf8');
var url = './chargingpointservice_1.5.wsdl';
function aa(args)
{
console.log("<<<>>>",args.bb);
}
var path = "/dek";
var port = 9330;
soap.createClient(url, {}, (err, client) => {
if(err)
throw err;
else
{
client.setEndpoint('http://localhost:9330/Ocpp/ChargePointService/');
client.ChargePointService.ChargePointServiceSoap12.Reset();
}
});
app.post('/Ocpp/ChargePointService/', (req, res, next) => {
console.log(req);
})
app.listen(port, () => {
console.log("Listening on port "+port);
soap.listen(app, path, service, xml);
});我不能写.wsdl文件的内容,因为太长了。我有一个问题:如何实现诸如心跳或引导通知之类的函数?在OCPP协议中编写通信的功能是否有任何限制?
发布于 2022-09-26 18:17:11
我建议您使用json而不是soap。使用json要容易得多。
例如,在BootNotification的情况下,站点引导并发送到Ocpp服务器:
[2,
"19223201",
"BootNotification",
{"chargePointVendor": "VendorX", "chargePointModel": "SingleSocketCharger"}
]您的服务器回答如下:
[3,
"19223201",
{"status":"Accepted", "currentTime":"2013-02-01T20:53:32.486Z", "heartbeatInterval":300}
]字面上就是这样
https://stackoverflow.com/questions/73109767
复制相似问题