IT Process Automation

  • 1.  Read connector configuration values from within a process

    Posted Jul 06, 2018 10:38 AM

    Title says it all.

     

    Assume i want to read this value :

     

     

     

    Is it feasible ?

     

     

    Thanks!



  • 2.  Re: Read connector configuration values from within a process

    Posted Jul 06, 2018 10:55 AM

    I know the values are in [PAMRepository].[dbo].[PropertiesXML] and that I can always convert this XML to a valuemap and read it.

     

    I'm just looking for a "builtin" way that is not tied to the DB design.



  • 3.  Re: Read connector configuration values from within a process

    Broadcom Employee
    Posted Jul 06, 2018 11:04 AM

    Pier-Olivier,

    What do you mean by 'read' ?  Those values are the 'default' values that are used if they are not overridden at the Orchestrator or Operator level.  For example if you leave the following blank it will look at the Orchestrator level setting, and ultimately the Domain level 'defaults' and use those values:

     

     

    What are you looking to accomplish?  Something like this could be done with Datasets; for example you could create a dataset with several different host names, 'host01, host02, etc' then dynamically call each within your process depending on the process flows requirements.

     

     

    It does look like this information is stored in the PropXML column of the [PAM_Repository].[dbo].[PropertiesXML] table in the database, but will require parsing to get the specific details.  For example the following if from the email connector I have configured:

     

    <?xml version="1.0" encoding="UTF-8"?> <vmap><const><readonly/><IsNameModifiable>true</IsNameModifiable></const><vmconst iskeyval="false"/><field isstdpar="true" hidefromoutput="false"><name>smtp</name><display><label>ALERT_MODULE_SMTP_LABEL</label><desc>ALERT_MODULE_SMTP_DESCRIPTION</desc><page>Page.OutgoingMailParameters</page></display><cstring><value>smtp.office365.com</value><strconst max="254" canbeblank="true" isjavacode="false" noOflines="0"><default></default><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>OutgoingSMTP</name><display><label>Label.OutgoingSMTP</label><desc>Desc.OutgoingSMTP</desc><page>Page.OutgoingMailParameters</page></display><cstring keysel="SMTPUnsecure"><value>SMTPStartTLS</value><strconst max="254" canbeblank="true" isjavacode="false" noOflines="0"><default>SMTPUnsecure</default><list open="false"><vmap><const><readonly/><IsNameModifiable>true</IsNameModifiable></const><vmconst iskeyval="false"/><field isstdpar="false" hidefromoutput="false"><name>SMTPUnsecure</name><cstring><value>SMTPUnsecure</value></cstring></field><field isstdpar="false" hidefromoutput="false"><name>SMTPStartTLS</name><cstring><value>SMTPStartTLS</value></cstring></field><field isstdpar="false" hidefromoutput="false"><name>SMTPSSL</name><cstring><value>SMTPSSL</value></cstring></field><pages>System</pages></vmap></list><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>DefaultSMTPServerPort</name><display><label>Label.DefaultSMTPServerPort</label><desc>Desc.DefaultSMTPServerPort</desc><page>Page.OutgoingMailParameters</page></display><cinteger value="587"><integerconst max="65535" min="0" spinnerReq="false"/></cinteger></field><field isstdpar="true" hidefromoutput="false"><name>from</name><display><label>ALERT_MODULE_FROM_LABEL</label><desc>ALERT_MODULE_FROM_DESCRIPTION</desc><page>Page.OutgoingMailParameters</page></display><cstring><value>niemi01@ca.com</value><strconst max="254" canbeblank="true" isjavacode="false" noOflines="0"><default></default><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>DefaultProtocol</name><display><label>Label.DefaultProtocol</label><desc>Desc.DefaultProtocol</desc><page>Page.IncomingMailParameters</page></display><cstring keysel="Protocol.IMAP"><value>imaps</value><strconst max="2147483647" canbeblank="true" isjavacode="false" noOflines="0"><default></default><list open="false"><vmap><const><readonly/><IsNameModifiable>true</IsNameModifiable></const><vmconst iskeyval="false"/><field isstdpar="false" hidefromoutput="false"><name>Protocol.IMAP</name><cstring><value>imap</value></cstring></field><field isstdpar="false" hidefromoutput="false"><name>Protocol.POP3</name><cstring><value>pop3</value></cstring></field><field isstdpar="false" hidefromoutput="false"><name>Protocol.IMAPS</name><cstring><value>imaps</value></cstring></field><field isstdpar="false" hidefromoutput="false"><name>Protocol.POP3S</name><cstring><value>pop3s</value></cstring></field><pages>System</pages></vmap></list><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>DefaultServerHost</name><display><label>Label.DefaultServerHost</label><desc>Desc.DefaultServerHost</desc><page>Page.IncomingMailParameters</page></display><cstring><value>outlook.office365.com</value><strconst max="254" canbeblank="true" isjavacode="false" noOflines="0"><default></default><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>DefaultServerPort</name><display><label>Label.DefaultServerPort</label><desc>Desc.DefaultServerPort</desc><page>Page.IncomingMailParameters</page></display><cstring><value>993</value><strconst max="254" canbeblank="true" isjavacode="false" noOflines="0"><default>143</default><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>DefaultUserName</name><display><label>Label.DefaultUserName</label><desc>Desc.DefaultUserName</desc><page>Page.IncomingMailParameters</page></display><cstring><value>niemi01@ca.com</value><strconst max="254" canbeblank="true" isjavacode="false" noOflines="0"><default></default><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>DefaultPassword</name><display><label>Label.DefaultPassword</label><desc>Desc.DefaultPassword</desc><page>Page.IncomingMailParameters</page></display><pwd><value>aAbBcCDdeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZaJdxbouqsre3wnH7TzOGmw8aXLVEb0f/LFzBKUSnWfPzL9fgFXvMMQL5HJg+BDGm5YQqP1VTYbG88eAXJvEjo6vzXdO4vQU5iQdqCr3aUgLe1pA8QiGM30m/VbBSfF9n0QWEi4Kjow0ETmhOYhqIsTl54smFZ3YSqr5nFL9OeHwmtr1hx+6nApMQ1ceq7mCg</value><pwdconst/></pwd></field><field isstdpar="true" hidefromoutput="false"><name>OutgoingDefaultUserName</name><display><label>Label.DefaultUserName</label><desc>Desc.DefaultUserName</desc><page>Page.OutgoingMailParameters</page></display><cstring><value>niemi01@ca.com</value><strconst max="254" canbeblank="true" isjavacode="false" noOflines="0"><default></default><IsNameModifiable>true</IsNameModifiable></strconst></cstring></field><field isstdpar="true" hidefromoutput="false"><name>OutgoingDefaultPassword</name><display><label>Label.DefaultPassword</label><desc>Desc.DefaultPassword</desc><page>Page.OutgoingMailParameters</page></display><pwd><value>aAbBcCDdeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZN7eUG677SpJBRWGp+0gT5MT7lShX0ZJC6/59btwDBdkfVl+Bxv+Ar0pDBeco97FEdGuOT1HfgQ1wifNUN5592rZEb7usKIXhsWCbk68ePgVlnQaWES58PhKQU9ac0v1Az+IfjPh2v6Erfvlwb1BbUqHgBwGSZhMOwbyr1vZ65eXmfr66gIGPQ1o27oAGcole</value><pwdconst/></pwd></field><pages>Page.OutgoingMailParameters</pages><pages>Page.IncomingMailParameters</pages></vmap>



  • 4.  Re: Read connector configuration values from within a process
    Best Answer

    Broadcom Employee
    Posted Jul 06, 2018 11:09 AM

    oh!  a better option might be to use the OPEN API Rest interface:

    CA Process Automation Open REST APIs - CA Process Automation - 04.3.02 - CA Technologies Documentation

     

    which returned XML which will have to be parsed through for specific details, but this could be used in a process to get those values:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Response>   <Code>200</Code>   <Details xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="moduleConfigProperties">     <ModuleName>MailService</ModuleName>     <Property>       <Name>smtp</Name>       <Label>SMTP Server for Outgoing e-mail</Label>       <Description>The SMTP Server for e-mail alerts.</Description>       <Page>Default Outgoing Email Properties</Page>       <Type>String</Type>       <Value>smtp.office365.com</Value>    </Property>     <Property>       <Name>SMTPUnsecure</Name>       <Label></Label>       <Description></Description>       <Page>System</Page>       <Type>String</Type>       <Level>         <ValueMapName>OutgoingSMTP</ValueMapName>       </Level>       <Value>SMTP Unsecure</Value>     </Property>     <Property>       <Name>SMTPStartTLS</Name>       <Label></Label>       <Description></Description>       <Page>System</Page>       <Type>String</Type>       <Level>         <ValueMapName>OutgoingSMTP</ValueMapName>       </Level>       <Value>SMTP STARTTLS</Value>     </Property>     <Property>       <Name>SMTPSSL</Name>       <Label></Label>       <Description></Description>       <Page>System</Page>       <Type>String</Type>       <Level>         <ValueMapName>OutgoingSMTP</ValueMapName>       </Level>       <Value>SMTP SSL</Value>     </Property>     <Property>       <Name>OutgoingSMTP</Name>       <Label>Protocol for Outgoing e-mail</Label>       <Description>Whether outgoing SMTP Port is</Description>       <Page>Default Outgoing Email Properties</Page>       <Type>String</Type>       <Value>SMTP Unsecure</Value>     </Property>     <Property>       <Name>DefaultSMTPServerPort</Name>       <Label>SMTP Server Port</Label>       <Description>Default SMTP Server Port</Description>       <Page>Default Outgoing Email Properties</Page>       <Type>Integer</Type>       <Value>25</Value>     </Property>     <Property>       <Name>from</Name>       <Label>From Address for Outgoing e-mail</Label>       <Description>Default e-mail address to appear in the sender field of outgoing e-mail alerts. </Description>       <Page>Default Outgoing Email Properties</Page>       <Type>String</Type>       <Value>itpam@ca.com</Value>     </Property>     <Property>       <Name>Protocol.IMAP</Name>       <Label></Label>       <Description></Description>       <Page>System</Page>       <Type>String</Type>       <Level>         <ValueMapName>DefaultProtocol</ValueMapName>       </Level>       <Value>IMAP</Value>     </Property>     <Property>       <Name>Protocol.POP3</Name>       <Label></Label>       <Description></Description>       <Page>System</Page>       <Type>String</Type>       <Level>         <ValueMapName>DefaultProtocol</ValueMapName>       </Level>       <Value>POP3</Value>     </Property>     <Property>       <Name>Protocol.IMAPS</Name>       <Label></Label>       <Description></Description>       <Page>System</Page>       <Type>String</Type>       <Level>         <ValueMapName>DefaultProtocol</ValueMapName>       </Level>       <Value>IMAP-SSL</Value>     </Property>     <Property>       <Name>Protocol.POP3S</Name>       <Label></Label>       <Description></Description>       <Page>System</Page>       <Type>String</Type>       <Level>         <ValueMapName>DefaultProtocol</ValueMapName>       </Level>       <Value>POP3-SSL</Value>     </Property>     <Property>       <Name>DefaultProtocol</Name>       <Label>Protocol for Connection</Label>       <Description>Default Email Protocol to connect to the server, that may be overridden in Operator</Description>       <Page>Default Incoming Email Properties</Page>       <Type>String</Type>       <Value>IMAP</Value>     </Property>     <Property>       <Name>DefaultServerHost</Name>       <Label>Mail Server</Label>       <Description>Default Mail Server hostname / IP Address, that may be overridden in Operator</Description>       <Page>Default Incoming Email Properties</Page>       <Type>String</Type>     </Property>     <Property>       <Name>DefaultServerPort</Name>       <Label>Mail Server Port</Label>       <Description>Default Mail Server Port, that may be overridden in Operator</Description>       <Page>Default Incoming Email Properties</Page>       <Type>String</Type>       <Value>143</Value>     </Property>     <Property>       <Name>DefaultUserName</Name>       <Label>Username</Label>       <Description>Default Username, that may be overridden in Operator</Description>       <Page>Default Incoming Email Properties</Page>       <Type>String</Type>     </Property>     <Property>       <Name>DefaultPassword</Name>       <Label>Password</Label>       <Description>Default Password, that may be overridden in Operator</Description>       <Page>Default Incoming Email Properties</Page>       <Type>Password</Type>     </Property>     <Property>       <Name>OutgoingDefaultUserName</Name>       <Label>Username</Label>       <Description>Default Username, that may be overridden in Operator</Description>       <Page>Default Outgoing Email Properties</Page>       <Type>String</Type>       <Value>password</Value>     </Property>     <Property>       <Name>OutgoingDefaultPassword</Name>       <Label>Password</Label>       <Description>Default Password, that may be overridden in Operator</Description>       <Page>Default Outgoing Email Properties</Page>       <Type>Password</Type>     </Property>   </Details> </Response>

    Response Code

    200

    Response Headers

     

     

     

    The ModuleName can be found using the getmodule method, which returns 'Process Services' as the module name for the Command Execution operators:

     <Module>      <ModuleName>Process Services</ModuleName>      <Name>Command Execution</Name>      <DisplayName>Command Execution</DisplayName>      <Description>Runs programs and scripts on host operating environments.</Description>    </Module>


  • 5.  Re: Read connector configuration values from within a process

    Posted Jul 06, 2018 11:39 AM

    In fact we have configured the CA ServiceDesk connector and I want to use these values in my standard SOAP Operators

     

    I know I can save this in a dataset, but I wanted everything in 1 place.

     

     

    The Open API REST Interface is what i need!

     

    Thanks man