diff --git a/xmlout.js b/xmlout.js index 66ccdcb..72d7f6e 100644 --- a/xmlout.js +++ b/xmlout.js @@ -177,10 +177,7 @@ function prefixMessageWithSN(data) { sn = ''; if (data.SN && data.SN.trim()) { - sn = data['SN'].replace(/ /g, '-'); - sn = sn.replace(/[\()]/g, '-'); - sn = sn.replace(/-/g, '-').trim(); - return 'SN=' + sn + '; ' + data['MESSAGE']; + sn = data['SN'].trim(); } else if (data['MESSAGE'].search(/^SN=.+;/) == -1) { if (data['SN'] && data['SN'].trim()) { @@ -189,9 +186,15 @@ function prefixMessageWithSN(data) { else if (config.h2h_out.parse_sn == 'YES') { sn = parseSN(data['MESSAGE']); } + } + if (sn) { sn = sn.replace(/ /g, '-'); - + sn = sn.replace(/[\()]/g, '-'); + sn = sn.replace(/-+/g, '-') + sn = sn.replace(/^-+/, ''); + sn = sn.replace(/-+$/, ''); + sn = sn.trim(); return 'SN=' + sn + '; ' + data['MESSAGE']; }