:: Check if file exists if exist d:\smartermail\service\mailConfig.xml goto:eof :: copy file if does not exist COPY c:\scripts\mailConfig.xml d:\smartermail\service\mailConfig.xml :: restart Declude service net stop decludeproc && net start decludeproc :eof EXIT
##<<<<<<<<<<<<<<<OUTBOUND TRIGGERS>>>>>>>>>>>>>>>>> WEIGHT10 WARN WEIGHT14 WARN WEIGHT20 WARN WEIGHT30 WARN
# set path to your two files here domains = 'c:\program files (x86)\smartertools\smartermail\service\settings\domains.json' domainList = 'c:\program files (x86)\smartertools\smartermail\service\domainList.xml' import json dl = open(domainList, "w") dl.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n") dl.write("<DomainList>\n") with open(domains) as d: data = json.load(d) for k,v in data["domain_aliases"].items(): dl.write(" <DomainAlias name=\"{}\" domain=\"{}\" />\n" . format(k,v)) for k,v in data["domains"].items(): dl.write(" <Domain name=\"{}\" directory=\"{}\" />\n" . format(k,v["data_path"])) dl.write("</DomainList>\n") dl.close() d.close()
#Requires -Version 6.0.0 # Stop on errors $ErrorActionPreference = 'Stop' # Determine SM install path $smInstallPath = (Get-ItemProperty -Path HKLM:\SOFTWARE\WOW6432Node\SmarterTools\SmarterMail -Name 'Path').Path # Convert the domains JSON $domainsJson = Get-Content -Path (Join-Path -Path $smInstallPath -ChildPath 'Service\Settings\domains.json') | ConvertFrom-Json -AsHashtable # XML Output $xmlWriter = New-Object System.XMl.XmlTextWriter((Join-Path -Path $smInstallPath -ChildPath 'Service\domainList.xml'), [System.Text.Encoding]::UTF8) $xmlWriter.Formatting = 'Indented' $xmlWriter.Indentation = 1 $XmlWriter.IndentChar = "`t" $xmlWriter.WriteStartDocument() $xmlWriter.WriteStartElement('DomainList') # Domains foreach ($domain in $domainsJson['domains'].Keys) { $xmlWriter.WriteStartElement('Domain'); $xmlWriter.WriteAttributeString('name', $domain); $xmlWriter.WriteAttributeString('directory', $domainsJson['domains'][$domain]['data_path']) $xmlWriter.WriteEndElement() } # Aliases foreach ($alias in $domainsJson['domain_aliases'].Keys) { $xmlWriter.WriteStartElement('DomainAlias'); $xmlWriter.WriteAttributeString('name', $alias); $xmlWriter.WriteAttributeString('domain', $domainsJson['domain_aliases'][$alias]) $xmlWriter.WriteEndElement() } # Finish $xmlWriter.WriteEndElement() $xmlWriter.WriteEndDocument() $xmlWriter.Flush() $xmlWriter.Close()
Trouble logging in? Simply enter your email address OR username in order to reset your password.
For faster and more reliable delivery, add noreply@smartertools.com to your trusted senders list in your email software.