Prev Next

SetConfiguration

Inputs

Parameter

Details

parameters

  • C++: const char*
  • C#: string

A JSON string of parameters. See Details for more information about available parameters.

Outputs via Callbacks

[Optional] LogMessage - set log messages about the configuration settings received. Be careful not to log sensitive information.

Note: SetError callbacks will be ignored for this method.

Details

This method receives the details that the user inputs into the Pro Cloud Server configuration when enabling this Custom Integration Plugin.

It includes these details:

External Server to connect to:

  • serverName
  • serverPort
  • serverProtocol
  • baseURL - the url folder to be appended to the url

The server settings combine to form a URL as such: <protocol>://<serverName>:<serverPort>/<baseURL>.

Hardcoded Credentials - These are optional and can be used to connect to a provider with a generic account:

  • username
  • password

Permissions - sets whether users can perform the specified actions on the external provider:

  • allowCreateItems
  • allowModifyItems
  • allowPostDiscussions

Proxy settings:

  • proxyServer
  • proxyBypass
  • proxyUsername
  • proxyPassword

Example Implementation

void ExampleIntegrationPlugin::SetConfiguration(const char* parameters)

{

LogMessage(LOG_TRACE, __FUNCTION__);

Json::Value jsonParameters;

if (strlen(parameters))

{

std::stringstream(parameters) >> jsonParameters;

}

// Store the settings as member variables for later use.

m_serverName = jsonParameters["serverName"].asString();

m_serverPort = jsonParameters["serverPort"].asString();

m_serverProtocol = jsonParameters["serverProtocol"].asString();

m_baseURL = jsonParameters["baseURL"].asString();

m_settingsUsername = jsonParameters["username"].asString();

m_settingsPassword = jsonParameters["password"].asString();

m_allowCreateItems = jsonParameters["allowCreateItems"].asString();

m_allowModifyItems = jsonParameters["allowModifyItems"].asString();

m_allowPostDiscussions = jsonParameters["allowPostDiscussions"].asString();

m_proxyServer = jsonParameters["proxyServer"].asString();

m_proxyBypass = jsonParameters["proxyBypass"].asString();

m_proxyUsername = jsonParameters["proxyUsername"].asString();

m_proxyPassword = jsonParameters["proxyPassword"].asString();

}