glpi-project / glpi

GLPI is a Free Asset and IT Management Software package, Data center management, ITIL Service Desk, licenses tracking and software auditing.
https://glpi-project.org
GNU General Public License v3.0
4.3k stars 1.29k forks source link

Followup authors are receiving email notifications of their own followups #15362

Closed TheKringel closed 1 year ago

TheKringel commented 1 year ago

Code of Conduct

Is there an existing issue for this?

Version

10.0.9

Bug description

If someone is adding a follow-up in a ticket, the person is also getting an e-mail notification of their own follow-up message. This is causing unnecessary e-mail notifications. In this scenario, all other recipients configured in the notification action should receive the email except of the author.

This issue was reported by someone else already, it was closed as the user did not reply to any questions: #14392

Expected behaviour: From other systems I've worked with, it was usually the case that e-mail notifications are not sent to the person who initiated the action. In the above example, the notification should have only sent to Requester and Watcher. Note: If ticket is assigned to Technician A and e.g. another Technician is adding a follow-up or comment, Technician A should still get the notification. So the general rule should be: Send notification to all configured recipients except the author

Relevant log output

No response

Page URL

No response

Steps To reproduce

  1. In Setup/Notifications/Notifications/Add Followup --> set recipients to "Requester, Technician in charge of the ticket, Watcher"
  2. Create a ticket
  3. Technician accepts ticket and assign ticket to himself
  4. Technician create a follow-up on the ticket

Result: Technician gets the e-mail notification of his own follow-up activity.

Your GLPI setup information

Information about system installation and configuration
GLPI 10.0.9 ( => E:\Websites\glpi)
Installation mode: TARBALL
Current language:en_GB

Server
 
Operating system: Windows NT SRV-WEB 10.0 build 20348 (Windows Server 2022) AMD64
PHP 8.2.4 cgi-fcgi (Core, PDO, PDO_OCI, Phar, Reflection, SPL, SimpleXML, Zend OPcache, bcmath, bz2, calendar, cgi-fcgi, ctype,
    curl, date, dom, exif, fileinfo, filter, gd, gettext, hash, iconv, imap, intl, json, ldap, libxml, mbstring, mysqli, mysqlnd,
    oci8, openssl, pcre, pdo_mysql, pdo_sqlite, pdo_sqlsrv, random, readline, session, sockets, sodium, sqlsrv, standard, tokenizer,
    xml, xmlreader, xmlwriter, zip, zlib)
Setup: max_execution_time="30" memory_limit="1024M" post_max_size="500M" safe_mode="" session.save_handler="files"
    upload_max_filesize="499M" 
Software: Microsoft-IIS/10.0
    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36 Edg/99.0.1150.39
Server Software: MySQL Community Server - GPL
    Server Version: 8.0.32
    Server SQL Mode: STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
    Parameters: root@localhost/glpi
    Host info: localhost via TCP/IP

PHP version (8.2.4) is supported.
Sessions configuration is OK.
Allocated memory is sufficient.
mysqli extension is installed.
Following extensions are installed: dom, fileinfo, filter, libxml, json, simplexml, xmlreader, xmlwriter.
curl extension is installed.
gd extension is installed.
intl extension is installed.
zlib extension is installed.
The constant SODIUM_CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES is present.
Database engine version (8.0.32) is supported.
No files from previous GLPI version detected.
The log file has been created successfully.
Write access to E:\Websites\glpi/files/_cache has been validated.
Write access to E:\Websites\glpi/config has been validated.
Write access to E:\Websites\glpi/files/_cron has been validated.
Write access to E:\Websites\glpi/files has been validated.
Write access to E:\Websites\glpi/files/_dumps has been validated.
Write access to E:\Websites\glpi/files/_graphs has been validated.
Write access to E:\Websites\glpi/files/_lock has been validated.
Write access to E:\Websites\glpi/files/_pictures has been validated.
Write access to E:\Websites\glpi/files/_plugins has been validated.
Write access to E:\Websites\glpi/files/_rss has been validated.
Write access to E:\Websites\glpi/files/_sessions has been validated.
Write access to E:\Websites\glpi/files/_tmp has been validated.
Write access to E:\Websites\glpi/files/_uploads has been validated.

Web server root directory configuration seems safe.
PHP directive "session.cookie_secure" should be set to "on" when GLPI can be accessed on HTTPS protocol.
OS and PHP are relying on 64 bits integers.
exif extension is installed.
ldap extension is installed.
openssl extension is installed.
Following extensions are installed: bz2, Phar, zip.
Zend OPcache extension is installed.
Following extensions are installed: ctype, iconv, mbstring, sodium.
Write access to E:\Websites\glpi/marketplace has been validated.
Timezones seems not loaded, see https://glpi-install.readthedocs.io/en/latest/timezones.html.

GLPI constants
 
GLPI_ROOT: "E:\\Websites\\glpi"
GLPI_CONFIG_DIR: "E:\\Websites\\glpi/config"
GLPI_VAR_DIR: "E:\\Websites\\glpi/files"
GLPI_MARKETPLACE_DIR: "E:\\Websites\\glpi/marketplace"
GLPI_USE_CSRF_CHECK: "1"
GLPI_CSRF_EXPIRES: "7200"
GLPI_CSRF_MAX_TOKENS: "100"
GLPI_USE_IDOR_CHECK: "1"
GLPI_IDOR_EXPIRES: "7200"
GLPI_ALLOW_IFRAME_IN_RICH_TEXT: false
GLPI_SERVERSIDE_URL_ALLOWLIST: ["/^(https?|feed):\\/\\/[^@:]+(\\/.*)?$/"]
GLPI_TELEMETRY_URI: "https://telemetry.glpi-project.org"
GLPI_INSTALL_MODE: "TARBALL"
GLPI_NETWORK_MAIL: "glpi@teclib.com"
GLPI_NETWORK_SERVICES: "https://services.glpi-network.com"
GLPI_MARKETPLACE_ALLOW_OVERRIDE: true
GLPI_MARKETPLACE_MANUAL_DOWNLOADS: true
GLPI_USER_AGENT_EXTRA_COMMENTS: ""
GLPI_DISABLE_ONLY_FULL_GROUP_BY_SQL_MODE: "1"
GLPI_AJAX_DASHBOARD: "1"
GLPI_CALDAV_IMPORT_STATE: 0
GLPI_DEMO_MODE: "0"
GLPI_CENTRAL_WARNINGS: "1"
GLPI_DOC_DIR: "E:\\Websites\\glpi/files"
GLPI_CACHE_DIR: "E:\\Websites\\glpi/files/_cache"
GLPI_CRON_DIR: "E:\\Websites\\glpi/files/_cron"
GLPI_DUMP_DIR: "E:\\Websites\\glpi/files/_dumps"
GLPI_GRAPH_DIR: "E:\\Websites\\glpi/files/_graphs"
GLPI_LOCAL_I18N_DIR: "E:\\Websites\\glpi/files/_locales"
GLPI_LOCK_DIR: "E:\\Websites\\glpi/files/_lock"
GLPI_LOG_DIR: "E:\\Websites\\glpi/files/_log"
GLPI_PICTURE_DIR: "E:\\Websites\\glpi/files/_pictures"
GLPI_PLUGIN_DOC_DIR: "E:\\Websites\\glpi/files/_plugins"
GLPI_RSS_DIR: "E:\\Websites\\glpi/files/_rss"
GLPI_SESSION_DIR: "E:\\Websites\\glpi/files/_sessions"
GLPI_TMP_DIR: "E:\\Websites\\glpi/files/_tmp"
GLPI_UPLOAD_DIR: "E:\\Websites\\glpi/files/_uploads"
GLPI_INVENTORY_DIR: "E:\\Websites\\glpi/files/_inventories"
GLPI_NETWORK_REGISTRATION_API_URL: "https://services.glpi-network.com/api/registration/"
GLPI_MARKETPLACE_PLUGINS_API_URI: "https://services.glpi-network.com/api/marketplace/"
GLPI_I18N_DIR: "E:\\Websites\\glpi/locales"
GLPI_VERSION: "10.0.9"
GLPI_SCHEMA_VERSION: "10.0.9@77fc44668eaae89b61d95fe606d20d93d66110cd"
GLPI_MARKETPLACE_PRERELEASES: false
GLPI_MIN_PHP: "7.4.0"
GLPI_MAX_PHP: "8.3.0"
GLPI_YEAR: "2023"

Libraries
 
htmlawed/htmlawed version 1.2.14 in (E:\Websites\glpi\vendor\htmlawed\htmlawed)
phpmailer/phpmailer version 6.8.0 in (E:\Websites\glpi\vendor\phpmailer\phpmailer\src)
simplepie/simplepie version 1.5.8 in (E:\Websites\glpi\vendor\simplepie\simplepie\library)
tecnickcom/tcpdf version 6.6.2 in (E:\Websites\glpi\vendor\tecnickcom\tcpdf)
michelf/php-markdown in (E:\Websites\glpi\vendor\michelf\php-markdown\Michelf)
true/punycode in (E:\Websites\glpi\vendor\true\punycode\src)
iamcal/lib_autolink in (E:\Websites\glpi\vendor\iamcal\lib_autolink)
sabre/dav in (E:\Websites\glpi\vendor\sabre\dav\lib\DAV)
sabre/http in (E:\Websites\glpi\vendor\sabre\http\lib)
sabre/uri in (E:\Websites\glpi\vendor\sabre\uri\lib)
sabre/vobject in (E:\Websites\glpi\vendor\sabre\vobject\lib)
laminas/laminas-i18n in (E:\Websites\glpi\vendor\laminas\laminas-i18n\src)
laminas/laminas-servicemanager in (E:\Websites\glpi\vendor\laminas\laminas-servicemanager\src)
monolog/monolog in (E:\Websites\glpi\vendor\monolog\monolog\src\Monolog)
sebastian/diff in (E:\Websites\glpi\vendor\sebastian\diff\src)
donatj/phpuseragentparser in (E:\Websites\glpi\vendor\donatj\phpuseragentparser\src\UserAgent)
elvanto/litemoji in (E:\Websites\glpi\vendor\elvanto\litemoji\src)
symfony/console in (E:\Websites\glpi\vendor\symfony\console)
scssphp/scssphp in (E:\Websites\glpi\vendor\scssphp\scssphp\src)
laminas/laminas-mail in (E:\Websites\glpi\vendor\laminas\laminas-mail\src\Protocol)
laminas/laminas-mime in (E:\Websites\glpi\vendor\laminas\laminas-mime\src)
rlanvin/php-rrule in (E:\Websites\glpi\vendor\rlanvin\php-rrule\src)
blueimp/jquery-file-upload in (E:\Websites\glpi\vendor\blueimp\jquery-file-upload\server\php)
ramsey/uuid in (E:\Websites\glpi\vendor\ramsey\uuid\src)
psr/log in (E:\Websites\glpi\vendor\psr\log\Psr\Log)
psr/simple-cache in (E:\Websites\glpi\vendor\psr\simple-cache\src)
psr/cache in (E:\Websites\glpi\vendor\psr\cache\src)
league/csv in (E:\Websites\glpi\vendor\league\csv\src)
mexitek/phpcolors in (E:\Websites\glpi\vendor\mexitek\phpcolors\src\Mexitek\PHPColors)
guzzlehttp/guzzle in (E:\Websites\glpi\vendor\guzzlehttp\guzzle\src)
guzzlehttp/psr7 in (E:\Websites\glpi\vendor\guzzlehttp\psr7\src)
glpi-project/inventory_format in (E:\Websites\glpi\vendor\glpi-project\inventory_format\lib\php)
wapmorgan/unified-archive in (E:\Websites\glpi\vendor\wapmorgan\unified-archive\src)
paragonie/sodium_compat in (E:\Websites\glpi\vendor\paragonie\sodium_compat\src)
symfony/cache in (E:\Websites\glpi\vendor\symfony\cache)
html2text/html2text in (E:\Websites\glpi\vendor\html2text\html2text\src)
symfony/css-selector in (E:\Websites\glpi\vendor\symfony\css-selector)
symfony/dom-crawler in (E:\Websites\glpi\vendor\symfony\dom-crawler)
twig/twig in (E:\Websites\glpi\vendor\twig\twig\src)
twig/string-extra in (E:\Websites\glpi\vendor\twig\string-extra)
symfony/polyfill-ctype not found
symfony/polyfill-iconv not found
symfony/polyfill-mbstring not found
symfony/polyfill-php80 not found
symfony/polyfill-php81 not found
symfony/polyfill-php82 in (E:\Websites\glpi\vendor\symfony\polyfill-php82)
league/oauth2-client in (E:\Websites\glpi\vendor\league\oauth2-client\src\Provider)
league/oauth2-google in (E:\Websites\glpi\vendor\league\oauth2-google\src\Provider)
thenetworg/oauth2-azure in (E:\Websites\glpi\vendor\thenetworg\oauth2-azure\src\Provider)

LDAP directories
 
Server: xxxxxxxxxxxxxxxxxx

SQL replicas
 
Not active

Notifications
 
Way of sending emails: SMTP (anonymous@mail.domain.loc)

Plugins list
 
    geninventorynumber   Name: Inventarnummern generieren     Version: 2.8.3      State: Enabled                                 
        Install Method: Marketplace

Anything else?

No response

cedric-anne commented 1 year ago

Hi,

Can you confirm that the personal setting "Notifications for my changes" is set to "No"? image

TheKringel commented 1 year ago

Apologize, my fault. I totally overlooked this setting. All works fine.