How to configure Automation Services to run "Send Email" task using Gmail as SMTP server

How to configure Automation Services to run "Send Email" task using Gmail as SMTP server

book

Article ID: KB0076698

calendar_today

Updated On:

Products Versions
Spotfire Automation Services All Versions

Description

This article describes the steps to configure the TIBCO Spotfire Automation Services configuration file to run the "Send Email" task using Gmail as the SMTP server.

Issue/Introduction

This article describes configuring Send Email task using Gmail as an SMTP server

Resolution

For versions 7.5 and higher:

1) On the computer running Spotfire Server, open a command line as an administrator and change the directory to the location of the config.bat file (config.sh on Linux). The default location is <server installation dir>/tomcat/bin. You can use the cd command on either Windows or Linux to change the current directory in the command line.

2) On the command line, export the service configuration that you want to modify from Spotfire Server by using the export-service-config command. Specify the service's capability and the deployment area, and optionally the configuration name.
config export-service-config --capability=AUTOMATION_SERVICES --deployment-area=Production
3) Open the configuration "Spotfire.Dxp.Worker.Automation.config" and search for following section and make the following changes useTls=true, enter username and password. After the changes it should resemble something as follows.
<smtp useTls="true">
     <authentication useWindowsDefaultCredentials="false" username="user@gmail.com" password="secretpassword"/>
     <certificates useCertificates="false" storeLocation="LocalMachine" storeName="My" serialNumber=""/>
</smtp>
4) Search for the following in config file and replace "mailserver.example.com" with "smtp.gmail.com" and "SpotfireAutomationServices@example.com" with a from email address which could be yours. In the end it should look as follows.
<!-- SMTP Host for Email Notification --><add key="Spotfire.Automation.SendMail.SMTPHost" value="mailserver.example.com"/>
<!-- From Address for Email Notification --><add key="Spotfire.Automation.SendMail.FromAddress" value="SpotfireAutomationServices@example.com"/>

Example:-

<add key="Spotfire.Automation.SendMail.SMTPHost" value="smtp.gmail.com"/>
<add key="Spotfire.Automation.SendMail.FromAddress" value="user@gmail.com"/>

5) Save the file and import the configuration using the following command:
 
config import-service-config --config-name=ServiceConfiguration

6) Apply the configuration to automation services via Administration UI (Nodes & Services ->Automation Services->Edit-> Select the new configuration that you just configured) or via command line as below:
config set-service-config --service-id=value --config-name=ServiceConfiguration​
7) Open the client and test the job with execute on server.

For versions 7.0 and lower:

1). Open Spotfire.Dxp.Automation.Launcher.exe present at <AS installation folder>\webroot\bin folder.

2). Make sure that you are pointing to the right TIBCO Spotfire Server URL and the credentials to login (if applicable, depending on the authentication set on the TIBCO Spotfire Server) are specified in the Automation Services\webroot\bin\Spotfire.Dxp.Automation.Launcher.exe.config file.

Search for following section:
<authentication serverUrl="http://servername:port/" username=”enter the credentials here”

<!-- serverUrl (Required): The url to the Spotfire Server "http://servername:port/" -->
<!-- username: The spotfire user to authenticate with. -->
<!-- password: The password to authenticate with. -->
<!-- For Windows Authentication, set username and password blank or remove them. -->
Example :
<authentication serverUrl="http://mytss:8080/" username="as1" password="secret">

3). Search for following section and make the following changes useTls=true, enter username and password. After the changes it should resemble something as follows.
<smtp useTls="true">
     <authentication useWindowsDefaultCredentials="true" username="user@gmail.com" password="secretpassword"/>
     <certificates useCertificates="false" storeLocation="LocalMachine" storeName="My" serialNumber=""/>
</smtp>

4). Search for following section and replace "mailserver.example.com" with "smtp.gmail.com" and "SpotfireAutomationServices@example.com" with a from email address which could be yours. In the end it should look as follows.
<!-- SMTP Host for Email Notification --><add key="Spotfire.Automation.SendMail.SMTPHost" value="mailserver.example.com"/>
<!-- From Address for Email Notification --><add key="Spotfire.Automation.SendMail.FromAddress" value="SpotfireAutomationServices@example.com"/>

Example:

<add key="Spotfire.Automation.SendMail.SMTPHost" value="smtp.gmail.com"/>
<add key="Spotfire.Automation.SendMail.FromAddress" value="user@gmail.com"/>

5). Save the file and Restart Automation Services.

6). Open the client and test the job with execute on server.

Note: You will need to enable your email account for less secure applications using the following link as well:

Additional Information

Doc: TIBCO Spotfire Server and Environment > Manually editing the service configuration files: Doc: TIBCO Spotfire Automation Services User's Guide > Send Email: