cmdbAbstractObject core/cmdb,application false autoincrement priv_lnk_action_notif_to_contact id false true action_id ActionNotification false contact_id Contact false trigger_id Trigger false subscribed true false
10 20 30
10 20 30
ActionNotification cmdbAbstractObject grant_by_profile,core/cmdb,application false autoincrement priv_action_itop_notif id title false message true icon true 96 96 256 256 priority 1 2 3 4 4 false recipients false url $this->url()$ false
10 20 30 40 50 10 20 10 20 30 40
10 20 30
/** * * Create EventiTopNotification for each recipient * @param $oTrigger * @param $aContextArgs * * @return void * @throws \ArchivedObjectException * @throws \CoreCannotSaveObjectException * @throws \CoreException * @throws \CoreUnexpectedValue * @throws \CoreWarning * @throws \MySQLException * @throws \OQLException */ false public Get('recipients')); $oRecipientsSearch->AllowAllData(); $oRecipientsSet = new DBObjectSet($oRecipientsSearch); $bIsAsync = $this->IsAsynchronous(); [$sPreviousLanguage, $aPreviousPluginProperties] = $this->SetNotificationLanguage(); if($bIsAsync === true){ $aRecipients = []; } $sMessage = MetaModel::ApplyParams($this->Get('message'), $aContextArgs); $sTitle = MetaModel::ApplyParams($this->Get('title'), $aContextArgs); $sUrl = MetaModel::ApplyParams($this->Get('url'), $aContextArgs); $iObjectId = 0; $sObjectClass = null; if (array_key_exists('this->object()', $aContextArgs)) { $iObjectId = $aContextArgs['this->object()']->GetKey(); $sObjectClass = get_class($aContextArgs['this->object()']); } while ($oRecipient = $oRecipientsSet->Fetch()) { // Skip recipients that have no users if (get_class($oRecipient) === Person::class && UserRights::GetUserFromPerson($oRecipient) === null) { continue; } if (!\Combodo\iTop\Service\Notification\NotificationsService::GetInstance()->IsSubscribed($oTrigger, $this, $oRecipient)) { continue; } if($bIsAsync === true) { $aRecipients[] = $oRecipient->GetKey(); } else { $oEvent = Combodo\iTop\Service\Notification\Event\EventiTopNotificationService::MakeEventFromAction($this, $oRecipient->GetKey(), $oTrigger->GetKey(), $sMessage, $sTitle, $sUrl, $iObjectId, $sObjectClass); $oEvent->DBInsertNoReload(); } \Combodo\iTop\Service\Notification\NotificationsService::GetInstance()->RegisterSubscription($oTrigger, $this, $oRecipient); } if ($bIsAsync === true) { AsyncSendiTopNotifications::AddToQueue($this->GetKey(), $oTrigger->GetKey(), $aRecipients, $sMessage, $sTitle, $sUrl, $iObjectId, $sObjectClass); } $this->SetNotificationLanguage($sPreviousLanguage, $aPreviousPluginProperties['language_code'] ?? null); } ]]> true public Get('notifications.itop.send_asynchronously'); } ]]>
EventNotification cmdbAbstractObject core/cmdb,view_in_gui false autoincrement priv_event_itop_notif id title false icon true priority 1 2 3 4 4 false url false _blank read yes no no false read_date true contact_id Contact false 10 20
REST Services User Only users having this profile are allowed to use the REST Web Services (unless 'secure_rest_services' is set to false in the configuration file). cmdbAbstractObject core,grant_by_profile Person cmdbAbstractObject addon/userrights,grant_by_profile cmdbAbstractObject addon/userrights,grant_by_profile 1 User URP_Profiles cmdbAbstractObject addon/userrights,grant_by_profile User Organization cmdbAbstractObject grant_by_profile,core/cmdb cmdbAbstractObject grant_by_profile,core/cmdb cmdbAbstractObject core/cmdb,view_in_gui,grant_by_profile User Contact cmdbAbstractObject core/cmdb,view_in_gui,grant_by_profile SynchroDataSource cmdbAbstractObject application, grant_by_profile AuditCategory cmdbAbstractObject application, grant_by_profile cmdbAbstractObject application, grant_by_profile cmdbAbstractObject core/cmdb,view_in_gui,application,grant_by_profile cmdbAbstractObject grant_by_profile,core/cmdb,application Action Trigger cmdbAbstractObject bizmodel Action grant_by_profile,core/cmdb Event core/cmdb,view_in_gui Trigger Action sql true string linked_class true string ext_key_to_me true string ext_key_to_remote true string sql true string class_attcode true string extkey_attcode true string target_attcode true string item_code true string relation_code true string from_class true string neighbour_id true string enabled_mode true string min_up_mode true string min_up_type true string handler_class true string class_field true string query_field true string display_style false string target false string default_value false string attribute_definition_list false string attribute_definition_exclusion_list false string min_up true number count_min false number 0 count_max false number 0 max_combo_length false number min_autocomplete_chars false number display_max_width false number 128 display_max_height false number 128 storage_max_width false number 256 storage_max_height false number 256 max_items false number 12 tag_code_max_len false number 20 enabled true boolean duplicates false boolean false is_null_allowed false boolean false allow_target_creation false boolean is_user_editable false boolean true with_php_constraint false boolean false with_php_computation false boolean false create_temporary_object false boolean false on_target_delete false php targetclass true string goal_computing false string 'DefaultMetricComputer' working_time_computing false string