Kernel::System::Ticket::Event::NotificationEvent::Transport::Base - common notification event transport functions
send a notification using an specified transport
my $Success = $TransportObject->SendNotification( TicketID => $Param{Data}->{TicketID}, UserID => $Param{UserID}, Notification => \%Notification, Recipient => { UserID => 123, UserLogin => 'some login', UserTitle => 'some title', UserFirstname => 'some first name', UserLastname => 'some last name'. # ... }, Event => $Param{Event}, Attachments => \@Attachments, # optional );
returns
$Success = 1; # or false in case of an error
generates a list of recipients exclusive for a determined transport, the content of the list is usually an attribute of an Agent or Customer and it depends on each transport
my @TransportRecipients = $TransportObject->GetTransportRecipients( Notification => \%Notification, );
returns:
@TransportRecipents = ( { UserEmail => 'some email', # optional UserFirstname => 'some name', # optional # ... # optional } );
or @TransportRecipients = undef; in case of an error
generates and returns the HTML code to display exclusive settings for each transport.
my $HTMLOutput = $TransportObject->TransportSettingsDisplayGet( Data => $NotificationDataAttribute, # as retrieved from Kernel::System::NotificationEvent::NotificationGet() );
returns
$HTMLOutput = 'some HTML code';
gets specific parameters from the web request and put them back in the GetParam attribute to be saved in the notification as the standard parameters
my $Success = $TransportObject->TransportParamSettingsGet( GetParam => $ParmHashRef, );
returns
$Success = 1; # or false in case of a failure
returns if the transport can be used in the system environment,
my $Success = $TransportObject->IsUsable();
returns
$Success = 1; # or false
returns the needed event information after a notification has been sent
my $EventData = $TransportObject-> GetTransportEventData();
returns:
$EventData = { Event => 'ArticleAgentNotification', # or 'ArticleCustomerNotification' Data => { TicketID => 123, ArticleID => 123, # optional }, UserID => 123, );
returns the specified field with replaced OTRS-tags
$RecipientEmail = $Self->_ReplaceTicketAttributes( Ticket => $Param{Ticket}, Field => $RecipientEmail, ); for example: $RecipientEmail = '<OTRS_TICKET_DynamicField_Name1>';
returns:
$RecipientEmail = 'foo@bar.com';
This software is part of the OTRS project (https://otrs.org/).
This software comes with ABSOLUTELY NO WARRANTY. For details, see the enclosed file COPYING for license information (GPL). If you did not receive this file, see https://www.gnu.org/licenses/gpl-3.0.txt.