\Patami\IPS\Services\Alexa\Skills\CustomWebHookIOModule

Abstract base class used to implement IPS WebHook modules that communicate with Amazon servers for uncertified Alexa Custom Skills.

If you want to implement an IPS module for a certified skill, use the WebOAuthModule base class instead.

Summary

Methods
Properties
Constants
GetLaunchIntentClassName()
GetIntentClassNames()
ReadIntentProperty()
GetLastResponse()
Create()
Destroy()
GetWebHookSubPath()
GetWebHookPath()
GetURL()
ShowURL()
__construct()
GetConfigurationForm()
ApplyChanges()
GetId()
GetInstance()
GetModuleId()
GetModuleName()
GetModuleInstances()
IsValid()
GetParentId()
IsParentActive()
MessageSink()
SendEncodedDataToParent()
SendEncodedDataToChildren()
RegisterVariableBoolean()
RegisterVariableBooleanEx()
RegisterVariableFloat()
RegisterVariableFloatEx()
RegisterVariableInteger()
RegisterVariableIntegerEx()
RegisterVariableString()
RegisterVariableStringEx()
ShowSupportInfo()
Debug()
DebugEx()
GetAllowedApplicationId()
GetAllowedUserId()
GetLaunchIntentId()
No public properties found
STATUS_ERROR_WEBHOOK_PATH_INVALID
STATUS_ERROR_WEBHOOK_INSTANCE_NOT_FOUND
STATUS_ERROR_WEBHOOK_ALREADY_REGISTERED
WEBHOOK_MODULE_ID
STATUS_INSTANCE_CREATING
STATUS_INSTANCE_ACTIVE
STATUS_INSTANCE_DELETING
STATUS_INSTANCE_INACTIVE
STATUS_INSTANCE_NOT_CREATED
DEBUG_TEXT
DEBUG_HEX
STATUS_ERROR_APPLICATION_ID_INVALID
STATUS_ERROR_USER_ID_INVALID
STATUS_ERROR_LAUNCH_REQUEST_INTENT_INVALID
STATUS_ERROR_LAUNCH_REQUEST_INTENT_WRONG_CONNECTION
CustomSkillCreate()
GetCustomSkillConfigurationFormData()
GetLocaleLabel()
GetRequestClassName()
CreateExceptionResponse()
ProcessRequest()
GetTranslatedPropertyName()
SendResponse()
GetLastResponseSemaphoreName()
GetLastResponseSemaphoreTimeout()
GetLastResponseBufferName()
SetLastResponse()
GetConfigurationFormData()
Configure()
GetWebHookLabel()
GetDefaultWebHookSubPath()
RegisterHook()
UnregisterHook()
ProcessHookData()
ProcessData()
ReadRequest()
GetClassFileName()
GetModuleDirectory()
GetModuleInfoFileName()
GetLibraryName()
GetModuleFileInfo()
GetModulePrefix()
IsPrivate()
ListenForInstanceReloads()
OnKernelStarted()
OnKernelShutdown()
OnInstanceConnect()
OnMessage()
GetEncodedData()
GetSupportInfo()
GetLicenseUrl()
GetNewIssueUrl()
GetDocumentationUrl()
GetReleaseNotesUrl()
IsLaunchIntentIdPropertyVisible()
$library
N/A
No private methods found
No private properties found
N/A

Constants

STATUS_ERROR_WEBHOOK_PATH_INVALID

STATUS_ERROR_WEBHOOK_PATH_INVALID

WebHook path is invalid.

STATUS_ERROR_WEBHOOK_INSTANCE_NOT_FOUND

STATUS_ERROR_WEBHOOK_INSTANCE_NOT_FOUND

WebHook instance could not be found.

STATUS_ERROR_WEBHOOK_ALREADY_REGISTERED

STATUS_ERROR_WEBHOOK_ALREADY_REGISTERED

The same WebHook path is already registered by another instance or script.

WEBHOOK_MODULE_ID

WEBHOOK_MODULE_ID

IPS module GUID of the WebHook instance.

STATUS_INSTANCE_CREATING

STATUS_INSTANCE_CREATING

Instance is being created.

STATUS_INSTANCE_ACTIVE

STATUS_INSTANCE_ACTIVE

Instance is active and configuration is valid.

STATUS_INSTANCE_DELETING

STATUS_INSTANCE_DELETING

Instance is being deleted.

STATUS_INSTANCE_INACTIVE

STATUS_INSTANCE_INACTIVE

Instance is inactive (ie. disabled).

STATUS_INSTANCE_NOT_CREATED

STATUS_INSTANCE_NOT_CREATED

Instance is not yet created.

DEBUG_TEXT

DEBUG_TEXT

Use plain text for debug message.

DEBUG_HEX

DEBUG_HEX

Use hex for debug message.

STATUS_ERROR_APPLICATION_ID_INVALID

STATUS_ERROR_APPLICATION_ID_INVALID

IPS status code used to indicate that the format of the Application ID is invalid.

STATUS_ERROR_USER_ID_INVALID

STATUS_ERROR_USER_ID_INVALID

IPS status code used to indicate that the format of the User ID is invalid.

STATUS_ERROR_LAUNCH_REQUEST_INTENT_INVALID

STATUS_ERROR_LAUNCH_REQUEST_INTENT_INVALID

IPS status code used to indicate that the configured LaunchIntent intent instance is incorrect (wrong module GUID).

STATUS_ERROR_LAUNCH_REQUEST_INTENT_WRONG_CONNECTION

STATUS_ERROR_LAUNCH_REQUEST_INTENT_WRONG_CONNECTION

IPS status code used to indicate that the configured LaunchIntent intent instance is bound to another WebHook instance.

Properties

$library

$library : \Patami\IPS\Libraries\Library

Type

\Patami\IPS\Libraries\Library — IPS library object instance to which this module belongs to.

Methods

GetLaunchIntentClassName()

GetLaunchIntentClassName() : string

Returns the FQCN of the intent class used for LaunchRequests.

For WebHook requests, the user can override the LaunchRequest with an Intent Module instance.

Returns

string —

FQCN of the intent class.

GetIntentClassNames()

GetIntentClassNames() : array

Returns a list of FQCNs of the intent classes used to IntentRequests.

For WebHook requests, the user can override them or add new intents with Intent Module instances.

Returns

array —

FQCNs of the intent classes.

ReadIntentProperty()

ReadIntentProperty(\Patami\IPS\Services\Alexa\Skills\Custom\ModuleIntent  $intent, string  $name) : mixed

Returns the value of an intent property.

This method is called by the intent object embedded in the configuration form,

Parameters

\Patami\IPS\Services\Alexa\Skills\Custom\ModuleIntent $intent

Intent object.

string $name

Name of the intent configuration property.

Returns

mixed —

Value of the property.

GetLastResponse()

GetLastResponse() : \Patami\IPS\IO\ResponseInterface

Returns the last response sent to the Amazon servers from the IPS object buffer.

Throws

\Patami\IPS\Services\Alexa\Skills\Custom\Exceptions\LastResponseNotFoundException

if no last response was stored in the IPS object buffer.

Returns

\Patami\IPS\IO\ResponseInterface

Last response object.

Create()

Create() 

Registers configuration properties for the instance and its built-in intent classes.

Throws

\Patami\IPS\Services\Alexa\Skills\Custom\Exceptions\InvalidIntentConfigurationPropertyException

if the type of an intent configuration property is invalid.

Destroy()

Destroy() 

Performs cleanup tasks when the instance is deleted.

GetWebHookSubPath()

GetWebHookSubPath() : string

Returns the configured WebHook sub path.

Returns

string —

WebHook sub path.

GetWebHookPath()

GetWebHookPath() : string

Returns the WebHook path.

All custom IPS WebHook paths are prefixed with /hook/.

Returns

string —

WebHook path.

GetURL()

GetURL() : string

Returns the IP Symcon Connect URL of the WebHook instance.

Returns

string —

URL of the instance.

ShowURL()

ShowURL() 

Displays the IP Symcon Connect URL of the WebHook instance.

__construct()

__construct(integer  $instanceId) 

Module constructor.

Creates a new object of the IPS module instance. This method is automatically called by IPS when one of the registered functions are called or when the instance is used by IPS in any other way (eg. when creating the instance or when opening the configuration form).

Parameters

integer $instanceId

IPS object ID of the instance.

GetConfigurationForm()

GetConfigurationForm() : string

Returns the IPS module configuration form data as a JSON-encoded array.

This method will call Module::GetConfigurationFormData(), which returns an array with the configuration form elements, actions and translations. The array returned by the method is JSON-encoded and returned to IPS. The method adds a couple of form fields to the form, including module information and copyright information and two buttons which open the module documentation and release notes web pages.

Returns

string —

JSON-encoded configuration form data.

ApplyChanges()

ApplyChanges() 

Performs actions required when the configuration of this instance was saved.

It is automatically called by IPS when the use presses the apply button on the instance's configuration page and calls the Module::Configure() method which can be overridden by your own modules.

GetId()

GetId() : integer

Returns the IPS object ID of the instance.

Returns

integer —

IPS object ID of the instance.

GetInstance()

GetInstance() : \Patami\IPS\Objects\Instance

Returns an Instance object for the module instance.

Returns

\Patami\IPS\Objects\Instance

Instance object for the instance.

GetModuleId()

GetModuleId() : string

Returns the IPS module GUID of the module.

Returns

string —

IPS module GUID.

GetModuleName()

GetModuleName() : string

Returns the name of the module.

Returns

string —

Name of the module.

GetModuleInstances()

GetModuleInstances() : array

Returns a list of all IPS object IDs of all instances of the module.

Returns

array —

IPS object IDs of all instances of the module.

IsValid()

IsValid() : boolean

Checks if the instance if valid / active.

Returns

boolean —

True if the instance is active.

GetParentId()

GetParentId() : integer

Returns the IPS object ID of the parent IPS instance.

The parent instance is not the instance above the current instance in the IPS object tree, but the instance to which this instance is connected to.

Returns

integer —

IPS object ID of the parent instance.

IsParentActive()

IsParentActive() : boolean

Checks if the parent IPS instance is active.

Returns

boolean —

True if the parent IPS instance is active.

MessageSink()

MessageSink(integer  $timestamp, integer  $senderId, integer  $messageId, array  $data) 

Processes IPS messages.

This method is called by IPS for registered messages when they are triggered.

Parameters

integer $timestamp

Unix timestamp when the message was triggered.

integer $senderId

IPS object ID of the object that that triggered the message.

integer $messageId

ID of the message.

array $data

Event data.

SendEncodedDataToParent()

SendEncodedDataToParent(string  $dataId, array|mixed  $data) : string|null

Sends data to the parent IPS instance.

The data is received by the parent instance's IPSModule::ForwardData() method.

Parameters

string $dataId

GUID of the data packet type.

array|mixed $data

Data which should be encoded in the data packet.

Returns

string|null —

Result returned from the IPSModule::ForwardData() method.

SendEncodedDataToChildren()

SendEncodedDataToChildren(string  $dataId, array|mixed  $data) 

Sends data to all child IPS instances.

The data is received by the child instance's IPSModule::ReceiveData() method.

Parameters

string $dataId

GUID of the data packet type.

array|mixed $data

Data which should be encoded in the data packet.

RegisterVariableBoolean()

RegisterVariableBoolean(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new boolean status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the variable profile and the position of the variable, but not its name.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

RegisterVariableBooleanEx()

RegisterVariableBooleanEx(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new boolean status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the name, the variable profile and the position of the variable.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

RegisterVariableFloat()

RegisterVariableFloat(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new float status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the variable profile and the position of the variable, but not its name.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

RegisterVariableFloatEx()

RegisterVariableFloatEx(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new float status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the name, the variable profile and the position of the variable.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

RegisterVariableInteger()

RegisterVariableInteger(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new integer status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the variable profile and the position of the variable, but not its name.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

RegisterVariableIntegerEx()

RegisterVariableIntegerEx(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new integer status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the name, the variable profile and the position of the variable.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

RegisterVariableString()

RegisterVariableString(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new string status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the variable profile and the position of the variable, but not its name.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

RegisterVariableStringEx()

RegisterVariableStringEx(string  $ident, string  $name, string  $profile = '', integer  $position) : integer

Creates a new string status variable below the module instance.

This method should be called in the ApplyChanges() or Configure() methods. It will update the name, the variable profile and the position of the variable.

Parameters

string $ident

Ident of the status variable.

string $name

Name of the status variable.

string $profile

Variable profile name or an empty string for no variable profile.

integer $position

Relative position compared to the other objects below the module instance.

Returns

integer —

IPS object ID of the new status variable.

ShowSupportInfo()

ShowSupportInfo() 

Displays support info to the user.

Debug()

Debug(  $tag,   $message, array  $data = null) 

Parameters

$tag
$message
array $data

DebugEx()

DebugEx(string  $tag, string  $message, array|null  $data = null) : $this

Sends an extended debug message to the log.

Parameters

string $tag

Name of the sender of the log (can be used as a category or similar).

string $message

The log message.

array|null $data

Optional data to be added to the log entry.

Returns

$this —

Fluent interface.

GetAllowedApplicationId()

GetAllowedApplicationId() : string

Returns the configured application ID.

Returns

string —

Allowed application ID.

GetAllowedUserId()

GetAllowedUserId() : string

Returns the configured user ID.

Returns

string —

Allowed user ID.

GetLaunchIntentId()

GetLaunchIntentId() : integer

Returns the IPS object ID of the configured LaunchRequest intent instance.

Returns

integer —

IPS object ID of the LaunchRequest intent instance.

CustomSkillCreate()

CustomSkillCreate() 

Registers configuration properties for Alexa Custom Skill I/O modules required by the intents of skill.

Called by WebHookIOModule::Create() or WebOAuthIOModule::Create(). Calls the SkillCreate() method of the included IOModuleTrait, which calls the IOModule::Create() method.

Throws

\Patami\IPS\Services\Alexa\Skills\Custom\Exceptions\InvalidIntentConfigurationPropertyException

if the type of an intent configuration property is invalid.

GetCustomSkillConfigurationFormData()

GetCustomSkillConfigurationFormData() : array

Adds sections specified by the intents of an Alexa Custom Skill I/O module to its configuration page.

Called by WebHookIOModule::GetConfigurationFormData() or WebOAuthIOModule::GetConfigurationFormData(). Calls the GetSkillConfigurationFormData() method of the included IOModuleTrait, which calls the IOModule::GetConfigurationFormData() method.

Returns

array —

IPS module configuration form data.

GetLocaleLabel()

GetLocaleLabel() : string

Returns the label of the default locale configuration field.

Returns

string —

Translated label of the configuration field.

GetRequestClassName()

GetRequestClassName() : string

Returns the FQCN of the WebHookRequest class.

The WebHook I/O requires a specialized Request class which is used to authenticate the user using the user ID. You normally don't need to override this method or the WebHookRequest class.

Returns

string —

FQCN of the WebHookRequest class.

CreateExceptionResponse()

CreateExceptionResponse(\Exception  $e, string  $locale) : \Patami\IPS\Services\Alexa\Skills\Custom\TellResponse

Returns an Alexa response object with the translated text from the given exception.

Parameters

\Exception $e

Throws exception from which the exception message should be retrieved.

string $locale

Locale code used for the translation of the message.

Returns

\Patami\IPS\Services\Alexa\Skills\Custom\TellResponse

Response object to be returned to the Amazon servers.

ProcessRequest()

ProcessRequest(string  $text) : \Patami\IPS\IO\ResponseInterface

Processes the request received from the remote client and generates the response.

This method must be implemented by concrete child classes to implement the specific communication protocol.

Parameters

string $text

Text received from the remote client.

Returns

\Patami\IPS\IO\ResponseInterface

Response to be sent to the remote client.

GetTranslatedPropertyName()

GetTranslatedPropertyName(string  $className, string  $name) : string

Returns a translated configuration form property name.

This is used to make sure the properties required by the built-in intents have unique names by prefixing the property name with the FQCN of the intent class.

Parameters

string $className

FQCN of the intent class.

string $name

Name of the property.

Returns

string —

Translated property name.

SendResponse()

SendResponse(\Patami\IPS\IO\ResponseInterface  $response) 

Sends the response to the remote client.

Parameters

\Patami\IPS\IO\ResponseInterface $response

Response to be sent to the remote client.

GetLastResponseSemaphoreName()

GetLastResponseSemaphoreName() : string

Returns the name of the semaphore used to make sure the IPS object buffer is locked for exclusive access.

Returns

string —

Name of the semaphore.

GetLastResponseSemaphoreTimeout()

GetLastResponseSemaphoreTimeout() : integer

Returns the number of milliseconds to wait for exclusive access to the IPS object buffer.

Returns

integer —

Milliseconds to wait for semaphore timeout.

GetLastResponseBufferName()

GetLastResponseBufferName() : string

Returns the name of the IPS object buffer used to store the last response.

Returns

string —

Name of the IPS object buffer.

SetLastResponse()

SetLastResponse(\Patami\IPS\IO\ResponseInterface  $response) : boolean

Remembers the response sent to the Amazon servers in the IPS object buffer.

Parameters

\Patami\IPS\IO\ResponseInterface $response

Last response object.

Returns

boolean

GetConfigurationFormData()

GetConfigurationFormData() 

Returns the IPS module configuration form data.

{@inheritDoc} The WebHookIOModule implementation adds status codes, translations and a configuration form field to configure the WebHook path. The WebHookIOModule implementation adds status codes, translations and a configuration form field to configure the WebHook path. The WebHookIOModule implementation adds status codes, translations and a configuration form field to configure the WebHook path. The Alexa WebHookIOModule implementation adds status codes, translations and configuration form fields to configure the Application ID, the user ID and the LaunchRequest intent instance.

Configure()

Configure() 

Validates the Application ID, the User ID and the LaunchRequest intent instance and calls the parent method.

The parent method is used to validate and register the WebHook.

GetWebHookLabel()

GetWebHookLabel() : string|null

Returns the translated label of the WebHook URL sub path field.

Returns

string|null —

Translated label of the WebHook URL sub path field.

GetDefaultWebHookSubPath()

GetDefaultWebHookSubPath() : string

Returns the default WebHook sub path to be used when none has been configured yet.

It is recommended that you override this method in your concrete child class to make sure every module uses an unique default sub path to avoid conflicts.

Returns

string —

Default WebHook sub path.

RegisterHook()

RegisterHook() : boolean

Registers the WebHook.

The method uses the configured WebHook sub path to register the WebHook with the IPS WebHook Control instance. IPS will call WebHookIOModule::ProcessHookData() when a request is received from a remote client.

Returns

boolean —

True if the WebHook was successfully registered.

UnregisterHook()

UnregisterHook(boolean  $setSummary = true) 

Unregisters the WebHook.

The method unregisters the WebHook from the IPS WebHook Control instance. It is automatically called when the module is deleted.

Parameters

boolean $setSummary

True if the summary text should be set.

ProcessHookData()

ProcessHookData() 

Processes a WebHook request.

This method is automatically called by the IPS WebHook Control instance.

ProcessData()

ProcessData() 

Processes a request.

This method is automatically called by the child class when a WebHook or WebOAuth is received. It reads the request, calls IOModule::ProcessRequest() to handle the request and sends the response returned by the handler to the remote client. The IOModule::ProcessRequest() implementation must not output anything. All output generated will be captured and logged in the module's debug log.

ReadRequest()

ReadRequest() : string

Reads the incoming request from the raw HTTP request.

Returns

string —

Text of the incoming request.

GetClassFileName()

GetClassFileName() : string

Returns the file name of the class.

It always returns the name of the called class.

Returns

string —

File name of the class.

GetModuleDirectory()

GetModuleDirectory() : string

Returns the directory name of the module class file.

Returns

string —

Directory name of the class.

GetModuleInfoFileName()

GetModuleInfoFileName() 

GetLibraryName()

GetLibraryName() : string

Returns the key of the library to which the module belongs to.

Returns

string —

Key of the library.

GetModuleFileInfo()

GetModuleFileInfo() : array

Returns information about the module from the module.json file.

Returns

array —

Attributes of the module.

GetModulePrefix()

GetModulePrefix() : string

Returns the prefix used by IPS to register the public module methods / functions.

Returns

string —

Function prefix.

IsPrivate()

IsPrivate() : boolean

Checks if the module is private.

A module is regarded as being private if its library is not loaded anonymously.

Returns

boolean —

True if the module is private.

ListenForInstanceReloads()

ListenForInstanceReloads(integer  $instanceId) 

Registers an instance to listen for reload events.

Parameters

integer $instanceId

IPS object ID of the other instance.

OnKernelStarted()

OnKernelStarted(integer  $timestamp, array  $data) 

Event handler called when the IPS kernel started.

Parameters

integer $timestamp

Unix timestamp when the message was triggered.

array $data

Event data.

OnKernelShutdown()

OnKernelShutdown(integer  $timestamp, array  $data) 

Event handler called when the IPS kernel is about to shutdown.

Parameters

integer $timestamp

Unix timestamp when the message was triggered.

array $data

Event data.

OnInstanceConnect()

OnInstanceConnect(integer  $timestamp, integer  $senderId, array  $data) 

Event handler called when another instance interface is connected.

Parameters

integer $timestamp

Unix timestamp when the message was triggered.

integer $senderId

IPS object ID of the object that that triggered the message.

array $data

Event data.

OnMessage()

OnMessage(integer  $timestamp, integer  $senderId, integer  $messageId, array  $data) 

Processes IPS messages.

This method is called by the frameork for registered messages when they are triggered.

Parameters

integer $timestamp

Unix timestamp when the message was triggered.

integer $senderId

IPS object ID of the object that that triggered the message.

integer $messageId

ID of the message.

array $data

Event data.

GetEncodedData()

GetEncodedData(string  $dataId, array  $data) : string

Encodes data to be send to child or parent IPS instances.

Parameters

string $dataId

GUID of the data packet type.

array $data

Data which should be encoded in the data packet.

Returns

string —

JSON-encoded data to be sent to child or parent IPS instances.

GetSupportInfo()

GetSupportInfo() : array

Returns support info to be displayed to the user.

Returns

array —

Key value pairs with support info.

GetLicenseUrl()

GetLicenseUrl() : string|null

Returns the URL the the module's license web page.

Override this method in your module to link to your own license.

Returns

string|null —

URL to the module's license web page or null if the button to open the web page should not be displayed in the module's configuration form.

GetNewIssueUrl()

GetNewIssueUrl() : string|null

Returns the URL to open a new issue in the module's issue tracker.

Override this method in your module to link to your issue tracker.

Returns

string|null —

URL to the create issue web page of your issue tracker or null if the button to open a new issue should not be displaxed in the module's configuration form.

GetDocumentationUrl()

GetDocumentationUrl() : string|null

Returns the URL to the module's documentation web page.

Override this method in your module to link to your own documentation.

Returns

string|null —

URL to the module's documentation web page or null if the button to open the web page should not be displayed in the module's configuration form.

GetReleaseNotesUrl()

GetReleaseNotesUrl() : string|null

Returns the URL to the module's release notes web page.

Override this method in your module to link to your own release notes.

Returns

string|null —

URL to the module's release notes web page or null if the button to open the web page should not be displayed in the module's configuration form.

IsLaunchIntentIdPropertyVisible()

IsLaunchIntentIdPropertyVisible() : boolean

Checks if the LaunchIntent select field should be displayed on the configuration form.

Concrete child classes can override this method to hide the form field. In that case, the launch intent class name should be specified using WebOAuthIOModule::GetLaunchIntentClassName(). If you don't do that, Alexa will read an error message if a LaunchIntent request comes in.

Returns

boolean —

True if the LaunchIntent select field should be displayed on the configuration form.