YKPN#48088 -- Koppeling met Nedap kentekenherkenning.
svn path=/Website/branches/v2017.2/; revision=36573
This commit is contained in:
@@ -1,355 +0,0 @@
|
||||
// Deze functie stuurt informatie van videoconferentie boekingen naar Talk & Vision
|
||||
// Videoconferentie boekingen zijn reserveringen met als activiteit Videoconferentie
|
||||
// Bij nieuwe boekingen wordt de soap action BookMeeting aangeroepen als resultaat
|
||||
// krijgen we dan een boekingsnummer terug. Dit nummer wordt opgeslagen in kenmerk vc_id
|
||||
// en wordt getracked bij de reservering.
|
||||
// Bij wijzigingen hebben we al een vc_id en roepen we de soap actie ModifyMeeting aan.
|
||||
|
||||
|
||||
function timestamp () {
|
||||
var date = new Date();
|
||||
var hours = date.getHours();
|
||||
var days = date.getDay();
|
||||
var minutes = date.getMinutes();
|
||||
var ampm = hours >= 12 ? 'pm' : 'am';
|
||||
hours = hours % 12;
|
||||
hours = hours ? hours : 12; // the hour '0' should be '12'
|
||||
minutes = minutes < 10 ? '0'+minutes : minutes;
|
||||
var strTime = date + ' ' + hours + ':' + minutes + ' ' + ampm;
|
||||
return strTime;
|
||||
}
|
||||
|
||||
|
||||
try {
|
||||
var v_timestamp = timestamp();
|
||||
WScript.Echo("Start bookVC.js om " + v_timestamp);
|
||||
var udlstr = 'File Name=../oracle.udl';
|
||||
var Oracle = new ActiveXObject("ADODB.Connection");
|
||||
Oracle.Open(udlstr);
|
||||
|
||||
var sql = "BEGIN fac.initsession('NL'); END;";
|
||||
Oracle.Execute(sql);
|
||||
|
||||
var objXMLHTTP = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0")
|
||||
var SXH_OPTION_SELECT_CLIENT_SSL_CERT = 3;
|
||||
var SXH_PROXY_SET_PROXY = 2;
|
||||
|
||||
var v_type = '';
|
||||
|
||||
debugFiddler = 0;
|
||||
if (debugFiddler)
|
||||
{
|
||||
var SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS = 13056
|
||||
objXMLHTTP.setProxy(SXH_PROXY_SET_PROXY, "127.0.0.1:8888")
|
||||
objXMLHTTP.setOption(2) = SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS
|
||||
}
|
||||
|
||||
// first do the login part
|
||||
var XMLReq = '<?xml version="1.0" encoding="utf-8"?>'
|
||||
+'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'
|
||||
+' <soap:Body>'
|
||||
+' <Login xmlns="http://tempuri.org/">'
|
||||
// +' <username>kpntest</username>'
|
||||
// +' <password>waL3aejujz</password>'
|
||||
+' <username>Getronics</username>'
|
||||
+' <password>kpn456rt</password>'
|
||||
+' </Login>'
|
||||
+' </soap:Body>'
|
||||
+'</soap:Envelope>';
|
||||
|
||||
objXMLHTTP.open("POST",
|
||||
"http://talkandvision.com//webservice/portal.asmx"
|
||||
);
|
||||
//WScript.Echo("Set header");
|
||||
objXMLHTTP.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
|
||||
|
||||
WScript.Echo("Send XML");
|
||||
objXMLHTTP.send(XMLReq);
|
||||
WScript.Echo("XML received");
|
||||
if (objXMLHTTP.status==200)
|
||||
{
|
||||
v_cookie = objXMLHTTP.getResponseHeader("Set-Cookie");
|
||||
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
|
||||
xmlResp.setProperty("SelectionNamespaces", 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tv="http://tempuri.org/"');
|
||||
xmlResp.resolveExternals = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.validateOnParse = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.loadXML(objXMLHTTP.responseText); // for parsing
|
||||
var responseText = objXMLHTTP.responseText; // for debugging
|
||||
v_status = xmlResp.selectSingleNode("/soap:Envelope/soap:Body/tv:LoginResponse/tv:LoginResult");
|
||||
|
||||
WScript.Echo("Gelukt, status = " + v_status.text);
|
||||
|
||||
if (v_status.text == 'true')
|
||||
{
|
||||
|
||||
sql = "SELECT res_reservering_key, SUM (vertrouwelijk) vertrouwelijk "
|
||||
+ " FROM ykpn_v_vc_gegevens "
|
||||
+ " WHERE last_upd > last_sync "
|
||||
+ " AND last_upd < SYSDATE - 1/96 " // we wachten een kwartier na de laatste update
|
||||
+ " AND aantal > 1 "
|
||||
+ " GROUP BY res_reservering_key "
|
||||
+ " ORDER BY res_reservering_key";
|
||||
WScript.Echo("SQL reservering = " + sql);
|
||||
var oRs_res = Oracle.Execute(sql);
|
||||
|
||||
while (!oRs_res.eof)
|
||||
{
|
||||
v_reservering_key = oRs_res("res_reservering_key").Value;
|
||||
|
||||
// het kan zo zijn dat er een nieuwe deelreservering toegevoegd wordt die nog geen vc_id heeft.
|
||||
sql = "SELECT SUM (vertrouwelijk) vertrouwelijk, MAX(vc_id) vc_id "
|
||||
+ " FROM ykpn_v_vc_gegevens "
|
||||
+ " WHERE res_reservering_key = " + v_reservering_key
|
||||
var oRs_id = Oracle.Execute(sql);
|
||||
|
||||
v_vertrouwelijk = oRs_id("vertrouwelijk").Value;
|
||||
v_vc_id = oRs_id("vc_id").Value;
|
||||
|
||||
sql = "SELECT t_van, "
|
||||
+ " t_tot, "
|
||||
+ " omschrijving, "
|
||||
+ " ruimte, "
|
||||
+ " contact_naam, "
|
||||
+ " contact_telefoon, "
|
||||
+ " contact_email, "
|
||||
+ " res_reservering_key, "
|
||||
+ " res_rsv_ruimte_key, "
|
||||
+ " IdNummerTnF, "
|
||||
+ " SIP_IP, "
|
||||
+ " ipadres, "
|
||||
+ " vc_id "
|
||||
+ " FROM ykpn_v_vc_gegevens "
|
||||
+ " WHERE res_reservering_key = " + v_reservering_key
|
||||
+ " ORDER BY res_rsv_ruimte_volgnr";
|
||||
|
||||
WScript.Echo("SQL rsv ruimte = " + sql);
|
||||
var oRs_rsv = Oracle.Execute(sql);
|
||||
|
||||
//var v_count = 0;
|
||||
var v_xml_header = "";
|
||||
var v_xml_footer = "";
|
||||
var v_xml_loc = "";
|
||||
while (!oRs_rsv.eof)
|
||||
{
|
||||
v_van = oRs_rsv("t_van").Value;
|
||||
v_tot = oRs_rsv("t_tot").Value;
|
||||
v_omschrijving = oRs_rsv("omschrijving").Value;
|
||||
v_ruimte = oRs_rsv("ruimte").Value;
|
||||
v_contact_naam = oRs_rsv("contact_naam").Value;
|
||||
v_contact_telefoon = oRs_rsv("contact_telefoon").Value;
|
||||
v_contact_email = oRs_rsv("contact_email").Value;
|
||||
v_rsv_ruimte_key = oRs_rsv("res_rsv_ruimte_key").Value;
|
||||
v_idNummerTnF = oRs_rsv("idNummerTnF").Value;
|
||||
v_sip_ip = oRs_rsv("sip_ip").Value;
|
||||
v_ipadres = oRs_rsv("ipadres").Value;
|
||||
|
||||
|
||||
WScript.Echo("v_rsv_ruimte_key = " + v_rsv_ruimte_key);
|
||||
|
||||
// We kennen nieuwe boekingen of wijzigingen op bestaande boekingen.
|
||||
// Bij wijzigigen is er al een VC-id aanwezig.
|
||||
if (v_vc_id)
|
||||
{
|
||||
v_type = 'ModifyMeeting';
|
||||
}
|
||||
else
|
||||
{
|
||||
v_type = 'BookMeeting';
|
||||
}
|
||||
|
||||
if (!v_xml_header)
|
||||
{
|
||||
v_xml_header = '<?xml version="1.0" encoding="utf-8"?> '
|
||||
+ ' <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'
|
||||
+ ' <soap:Body>'
|
||||
+ ' <' + v_type + ' xmlns="http://tempuri.org/">'
|
||||
+ ' <booking>'
|
||||
+ ' <id>' + v_vc_id + '</id>'
|
||||
+ ' <mcid>' + v_reservering_key + '</mcid>'
|
||||
+ ' <start>' + v_van + '</start>'
|
||||
+ ' <end>' + v_tot + '</end>'
|
||||
+ ' <company>KPN</company>'
|
||||
+ ' <title>' + v_omschrijving + '</title>'
|
||||
+ ' <contactname>' + v_contact_naam + '</contactname>'
|
||||
+ ' <contactphone>' + v_contact_telefoon + '</contactphone>'
|
||||
+ ' <contactemail>' + v_contact_email + '</contactemail>'
|
||||
+ ' <confidential>' + (v_vertrouwelijk==0?'false':'true') + '</confidential>'
|
||||
+ ' <locations>';
|
||||
|
||||
v_xml_footer = ' </locations>'
|
||||
+ ' </booking>'
|
||||
+ ' </' + v_type + '>'
|
||||
+ ' </soap:Body>'
|
||||
+ ' </soap:Envelope>';
|
||||
|
||||
}
|
||||
|
||||
v_xml_loc = v_xml_loc
|
||||
+ ' <Location>'
|
||||
+ (!v_sip_ip?' <id>' + v_idNummerTnF + '</id>':'')
|
||||
+ ' <contactphone></contactphone>'
|
||||
+ ' <external>' + (v_sip_ip?'true':'false') + '</external>'
|
||||
+ (v_sip_ip == 'IP'?'<extip>' + v_ipadres + '</extip>':'')
|
||||
+ (v_sip_ip == 'SIP'?'<sip>' + v_ipadres + '</sip>':'')
|
||||
+ ' </Location>';
|
||||
|
||||
oRs_rsv.MoveNext();
|
||||
|
||||
}
|
||||
|
||||
|
||||
var objXMLHTTP = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0")
|
||||
var SXH_OPTION_SELECT_CLIENT_SSL_CERT = 3;
|
||||
var SXH_PROXY_SET_PROXY = 2;
|
||||
|
||||
if (debugFiddler)
|
||||
{
|
||||
var SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS = 13056
|
||||
objXMLHTTP.setProxy(SXH_PROXY_SET_PROXY, "127.0.0.1:8888")
|
||||
objXMLHTTP.setOption(2) = SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS
|
||||
}
|
||||
|
||||
objXMLHTTP.open("POST",
|
||||
"http://talkandvision.com//webservice/portal.asmx"
|
||||
);
|
||||
|
||||
objXMLHTTP.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
|
||||
v_action = "http://tempuri.org/" + v_type;
|
||||
WScript.Echo("Action = " + v_action);
|
||||
objXMLHTTP.setRequestHeader ("SOAPAction", v_action);
|
||||
objXMLHTTP.setRequestHeader ("Cookie", v_cookie);
|
||||
WScript.Echo("Cookie = " + v_cookie);
|
||||
|
||||
XMLReq = v_xml_header + v_xml_loc + v_xml_footer;
|
||||
|
||||
WScript.Echo("Send XML: " + XMLReq);
|
||||
objXMLHTTP.send(XMLReq);
|
||||
WScript.Echo("XML received");
|
||||
if (objXMLHTTP.status==200)
|
||||
{
|
||||
var responseText = objXMLHTTP.responseText;
|
||||
WScript.Echo("Response.text:" + responseText);
|
||||
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
|
||||
xmlResp.setProperty("SelectionNamespaces", 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tv="http://tempuri.org/"');
|
||||
xmlResp.resolveExternals = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.validateOnParse = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.loadXML(objXMLHTTP.responseText); // for parsing
|
||||
var responseText = objXMLHTTP.responseText; // for debugging
|
||||
v_result = xmlResp.selectSingleNode("/soap:Envelope/soap:Body/tv:" + v_type + "Response/tv:" + v_type + "Result");
|
||||
if (v_result)
|
||||
{
|
||||
if (v_type == 'BookMeeting')
|
||||
{
|
||||
WScript.Echo("v_vc_id:" + v_result.text);
|
||||
sql = "BEGIN ykpn.set_vc_status(" + v_reservering_key + ",'" + v_result.text +"'); END;";
|
||||
WScript.Echo("sql:" + sql);
|
||||
Oracle.Execute(sql);
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("resultaat van update:" + v_result.text);
|
||||
sql = "BEGIN ykpn.set_vc_status(" + v_reservering_key + ",'" + v_vc_id +"'); END;";
|
||||
WScript.Echo("sql:" + sql);
|
||||
Oracle.Execute(sql);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
var responseText = objXMLHTTP.responseText;
|
||||
WScript.Echo("Response.text:" + responseText);
|
||||
WScript.Echo("Mislukt, status = " + objXMLHTTP.status);
|
||||
WScript.Echo(objXMLHTTP.statusText);
|
||||
}
|
||||
|
||||
oRs_res.MoveNext();
|
||||
}
|
||||
|
||||
// stuur cancel berichten als de afspraak in facilitor verwijderd is.
|
||||
sql = "SELECT res_reservering_key, vc_id "
|
||||
+ " FROM ykpn_v_cancel_vc ";
|
||||
WScript.Echo("SQL reservering = " + sql);
|
||||
var oRs_res = Oracle.Execute(sql);
|
||||
|
||||
while (!oRs_res.eof)
|
||||
{
|
||||
v_reservering_key = oRs_res("res_reservering_key").Value;
|
||||
v_vc_id = oRs_res("vc_id").Value;
|
||||
|
||||
XMLReq = '<?xml version="1.0" encoding="utf-8"?> '
|
||||
+ ' <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'
|
||||
+ ' <soap:Body>'
|
||||
+ ' <CancelMeeting xmlns="http://tempuri.org/">'
|
||||
+ ' <bookingid>' + v_vc_id + '</bookingid>'
|
||||
+ ' </CancelMeeting>'
|
||||
+ ' </soap:Body>'
|
||||
+ ' </soap:Envelope>';
|
||||
|
||||
var objXMLHTTP = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0")
|
||||
var SXH_OPTION_SELECT_CLIENT_SSL_CERT = 3;
|
||||
var SXH_PROXY_SET_PROXY = 2;
|
||||
|
||||
if (debugFiddler)
|
||||
{
|
||||
var SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS = 13056
|
||||
objXMLHTTP.setProxy(SXH_PROXY_SET_PROXY, "127.0.0.1:8888")
|
||||
objXMLHTTP.setOption(2) = SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS
|
||||
}
|
||||
|
||||
objXMLHTTP.open("POST",
|
||||
"http://talkandvision.com//webservice/portal.asmx"
|
||||
);
|
||||
|
||||
objXMLHTTP.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
|
||||
objXMLHTTP.setRequestHeader ("SOAPAction", "http://tempuri.org/CancelMeeting");
|
||||
objXMLHTTP.setRequestHeader ("Cookie", v_cookie);
|
||||
WScript.Echo("Cookie = " + v_cookie);
|
||||
|
||||
WScript.Echo("Send XML: " + XMLReq);
|
||||
objXMLHTTP.send(XMLReq);
|
||||
WScript.Echo("XML received");
|
||||
if (objXMLHTTP.status==200)
|
||||
{
|
||||
var responseText = objXMLHTTP.responseText;
|
||||
WScript.Echo("Response.text:" + responseText);
|
||||
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
|
||||
xmlResp.setProperty("SelectionNamespaces", 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tv="http://tempuri.org/"');
|
||||
xmlResp.resolveExternals = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.validateOnParse = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.loadXML(objXMLHTTP.responseText); // for parsing
|
||||
var responseText = objXMLHTTP.responseText; // for debugging
|
||||
v_result = xmlResp.selectSingleNode("/soap:Envelope/soap:Body/tv:CancelMeetingResponse/tv:CancelMeetingResult");
|
||||
if (v_result)
|
||||
{
|
||||
WScript.Echo("Cancel result " + v_vc_id + ":" + v_result.text);
|
||||
if (v_result.text == 'true')
|
||||
{
|
||||
sql = "BEGIN ykpn.set_vc_status(" + v_reservering_key + ",''); END;";
|
||||
WScript.Echo("sql:" + sql);
|
||||
Oracle.Execute(sql);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
var responseText = objXMLHTTP.responseText;
|
||||
WScript.Echo("Response.text:" + responseText);
|
||||
WScript.Echo("Mislukt, status = " + objXMLHTTP.status);
|
||||
WScript.Echo(objXMLHTTP.statusText);
|
||||
}
|
||||
|
||||
oRs_res.MoveNext();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
catch (e)
|
||||
{
|
||||
// WScript.Echo("Response.text" + responseText);
|
||||
WScript.Echo("Serieuze fout in bookVC.js: " + e.description)
|
||||
WScript.Quit(1);
|
||||
}
|
||||
@@ -13,15 +13,13 @@ REM
|
||||
|
||||
REM Zorgt voor de notificatie richting de bezoeker op moment van aanmaken
|
||||
REM en bij wijzigingen.
|
||||
REM Zorgt voor SMS bericht met pin code 3 uur van tevoren
|
||||
REM Zorgt voor SMS bericht met pin code 3 uur van tevoren
|
||||
CALL ..\..\..\utils\gen_export\gen_export.bat BEZOEKERS_COM
|
||||
|
||||
REM Meldt de bezoeker aan bij het Nedap systeem indien de bezoeker een parkeerplaats
|
||||
REM geboekt heeft die onder het Nedap toegangssysteem valt.
|
||||
cscript pincode2nedap.js >> pincode2nedap.log
|
||||
|
||||
REM en dan doen we de communicatie naar Talk & Vision er ook maar direct bij
|
||||
cscript bookVC.js >> bookVC.log
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,8 +1,20 @@
|
||||
safe = { // extracted from shared.inc
|
||||
quoted_sql: function (tekst, maxlen) // maxlen is optioneel
|
||||
{
|
||||
if (tekst == null)
|
||||
return "NULL";
|
||||
if (!maxlen)
|
||||
maxlen = 4000;
|
||||
tekst = tekst.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]+/g, "?");
|
||||
tekst = tekst.substr(0, maxlen);
|
||||
return "'" + tekst.replace(/\'/g,"''") + "'"; // " syntax highlight correctie
|
||||
}
|
||||
}
|
||||
|
||||
function timestamp () {
|
||||
var date = new Date();
|
||||
var hours = date.getHours();
|
||||
var days = date.getDay();
|
||||
var days = date.getDay();
|
||||
var minutes = date.getMinutes();
|
||||
var ampm = hours >= 12 ? 'pm' : 'am';
|
||||
hours = hours % 12;
|
||||
@@ -23,7 +35,7 @@ try {
|
||||
WScript.Echo("Initsession");
|
||||
var sql = "BEGIN fac.initsession('NL'); END;";
|
||||
Oracle.Execute(sql);
|
||||
|
||||
|
||||
sql = "SELECT naam, "
|
||||
+ " pincode, "
|
||||
+ " v_van, "
|
||||
@@ -34,7 +46,7 @@ try {
|
||||
+ " FROM ykpn_v_parkeerplaats_nedap "
|
||||
WScript.Echo("sql:" + sql);
|
||||
var oRs = Oracle.Execute(sql);
|
||||
|
||||
|
||||
while (!oRs.eof)
|
||||
{
|
||||
v_naam = oRs("naam").Value;
|
||||
@@ -133,7 +145,7 @@ try {
|
||||
if (objXMLHTTP.status==200)
|
||||
{
|
||||
//WScript.Echo("Gelukt, status = " + objXMLHTTP.status);
|
||||
|
||||
|
||||
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
|
||||
xmlResp.setProperty("SelectionNamespaces", 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:nedap="https://www.nedapstadstoegang.net/AeosImportService/"');
|
||||
xmlResp.resolveExternals = false; // van mij hoef je geen DTD's te controleren
|
||||
@@ -143,17 +155,17 @@ try {
|
||||
v_nedap_id = xmlResp.selectSingleNode("/soap:Envelope/soap:Body/nedap:importResponse/nedap:importResult");
|
||||
if (v_nedap_id)
|
||||
{
|
||||
WScript.Echo("v_nedap_id:" + v_nedap_id.text);
|
||||
WScript.Echo("PINCODE v_nedap_id:" + v_nedap_id.text);
|
||||
if (v_nedap_id.text >= 0)
|
||||
{
|
||||
sql = "BEGIN ykpn.set_nedap_status("+v_bez_bezoekers_key+",'" + v_nedap_id.text +"'); END;";
|
||||
sql = "BEGIN ykpn.set_nedap_status("+v_bez_bezoekers_key+", 'PINCODE', " + safe.quoted_sql(v_nedap_id.text) +"); END;";
|
||||
Oracle.Execute(sql);
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
@@ -169,10 +181,126 @@ try {
|
||||
WScript.Echo("Mislukt, status = " + objXMLHTTP.status);
|
||||
WScript.Echo(objXMLHTTP.statusText);
|
||||
}
|
||||
|
||||
|
||||
oRs.MoveNext();
|
||||
}
|
||||
|
||||
|
||||
// Nu gaan we kentekengegevens toevoegen aan de pincode
|
||||
sql = "SELECT pincode, "
|
||||
+ " kenteken, "
|
||||
+ " bez_bezoekers_key "
|
||||
+ " FROM ykpn_v_kenteken_nedap "
|
||||
WScript.Echo("sql:" + sql);
|
||||
var oRs = Oracle.Execute(sql);
|
||||
|
||||
while (!oRs.eof)
|
||||
{
|
||||
v_pincode = oRs("pincode").Value;
|
||||
v_kenteken = oRs("kenteken").Value;
|
||||
v_bez_bezoekers_key = oRs("bez_bezoekers_key").Value;
|
||||
|
||||
var XMLReq= '<?xml version="1.0" encoding="utf-8"?>'
|
||||
+'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'
|
||||
+' <soap:Body>'
|
||||
+' <import xmlns="https://www.nedapstadstoegang.net/AeosImportService/">'
|
||||
+' <usr>adminfacilitor</usr>'
|
||||
+' <pwd>fac8463#t@ned</pwd>'
|
||||
+' <dbname>aeosdb21</dbname>'
|
||||
+' <items>'
|
||||
+' <importItem>'
|
||||
+' <key>import_function</key>'
|
||||
+' <value>18</value>'
|
||||
+' </importItem>'
|
||||
+' <importItem>'
|
||||
+' <key>carriertype</key>'
|
||||
+' <value>2</value>'
|
||||
+' </importItem>'
|
||||
+' <importItem>'
|
||||
+' <key>personnelnr</key>'
|
||||
+' <value>xy'+v_pincode+'</value>'
|
||||
+' </importItem>'
|
||||
+' <importItem>'
|
||||
+' <key>badgetype</key>'
|
||||
+' <value>KENTEKEN</value>'
|
||||
+' </importItem>'
|
||||
+' <importItem>'
|
||||
+' <key>badgenumber</key>'
|
||||
+' <value>'+v_kenteken+'</value>'
|
||||
+' </importItem>'
|
||||
+' </items>'
|
||||
+' </import>'
|
||||
+' </soap:Body>'
|
||||
+'</soap:Envelope>';
|
||||
|
||||
//WScript.Echo("Bericht = " + XMLReq);
|
||||
|
||||
var objXMLHTTP = new ActiveXObject("MSXML2.ServerXMLHTTP.6.0")
|
||||
var SXH_OPTION_SELECT_CLIENT_SSL_CERT = 3;
|
||||
var SXH_PROXY_SET_PROXY = 2;
|
||||
|
||||
debugFiddler = 0;
|
||||
if (debugFiddler)
|
||||
{
|
||||
var SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS = 13056
|
||||
objXMLHTTP.setProxy(SXH_PROXY_SET_PROXY, "127.0.0.1:8888")
|
||||
objXMLHTTP.setOption(2) = SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS
|
||||
}
|
||||
|
||||
//WScript.Echo("Open connection");
|
||||
objXMLHTTP.open("POST",
|
||||
"https://www.nedapstadstoegang.net/AeosImportService/service.asmx"
|
||||
);
|
||||
//WScript.Echo("Set header");
|
||||
objXMLHTTP.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
|
||||
objXMLHTTP.setRequestHeader ("SOAPAction", "https://www.nedapstadstoegang.net/AeosImportService/import");
|
||||
|
||||
//WScript.Echo("Send XML");
|
||||
objXMLHTTP.send(XMLReq);
|
||||
//WScript.Echo("XML received");
|
||||
if (objXMLHTTP.status==200)
|
||||
{
|
||||
//WScript.Echo("Gelukt, status = " + objXMLHTTP.status);
|
||||
|
||||
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
|
||||
xmlResp.setProperty("SelectionNamespaces", 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:nedap="https://www.nedapstadstoegang.net/AeosImportService/"');
|
||||
xmlResp.resolveExternals = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.validateOnParse = false; // van mij hoef je geen DTD's te controleren
|
||||
xmlResp.loadXML(objXMLHTTP.responseText); // for parsing
|
||||
var responseText = objXMLHTTP.responseText; // for debugging
|
||||
v_nedap_id = xmlResp.selectSingleNode("/soap:Envelope/soap:Body/nedap:importResponse/nedap:importResult");
|
||||
if (v_nedap_id)
|
||||
{
|
||||
WScript.Echo("KENTEKEN v_nedap_id:" + v_nedap_id.text);
|
||||
if (v_nedap_id.text >= 0)
|
||||
{
|
||||
sql = "BEGIN ykpn.set_nedap_status("+v_bez_bezoekers_key+", 'KENTEKEN', " + safe.quoted_sql(v_nedap_id.text) + "; END;";
|
||||
Oracle.Execute(sql);
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
WScript.Echo("Response = " + responseText);
|
||||
WScript.Echo("v_nedap_id: NULL");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
WScript.Echo("Request = " + XMLReq);
|
||||
WScript.Echo("Mislukt, status = " + objXMLHTTP.status);
|
||||
WScript.Echo(objXMLHTTP.statusText);
|
||||
}
|
||||
|
||||
oRs.MoveNext();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
catch (e)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user