Announcement

Collapse
No announcement yet.

Error - Subject value must be composed of printable US-ASCII or UTF-8 characters

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Error - Subject value must be composed of printable US-ASCII or UTF-8 characters

    Subject Example:
    [2018-10-25 15:04:03] Espo.WARNING: Subject: |||
    Post: [Задача] Проверить доступ к внешним сайтам
    ||| [] []
    [2018-10-25 15:04:03] Espo.ERROR: EmailNotification: [0] Subject value must be composed of printable US-ASCII or UTF-8 characters. [] []

    Any sugestions?

    Additional subject examples:
    Post: [Задача] Проблемы с почтой
    Post: [Задача] Автоответчик. Переход звонка
    Закрыто: [Обращение] Fwd: team для настройки VPN

  • #2
    The reminder of calls and meetings by mail does not work. The cronjob is executed successfully. Outgoing mail is created. What else can it be?

    Comment


    • #3
      It the right answer is: create ru_RU templates?

      Comment


      • #4
        At first check default_charset in phpini
        After you can modify needed files. Also check file charset

        Comment


        • #5
          Unfortunately you are not right.

          Problem is in old version of zend-mail included in distrib.

          Old version of function

          public static function canBeEncoded($value)
          {
          $encoded = iconv_mime_encode('x-test', $value, ['scheme' => 'Q']);

          return (false !== $encoded);
          }

          on string 'Post: [Задача] Расширить права на ПК' return wrong answer, but fresh function from zend-mail (https://github.com/zendframework/zen...rWrap.php#L140)

          public static function canBeEncoded($value)
          {
          // avoid any wrapping by specifying line length long enough
          // "test" -> 4
          // "x-test: =?ISO-8859-1?B?dGVzdA==?=" -> 33
          // 8 +2 +3 +3 -> 16
          $charset = 'UTF-8';
          $lineLength = strlen($value) * 4 + strlen($charset) + 16;
          $preferences = [
          'scheme' => 'Q',
          'input-charset' => $charset,
          'output-charset' => $charset,
          'line-length' => $lineLength,
          ];
          $encoded = iconv_mime_encode('x-test', $value, $preferences);
          return (false !== $encoded);
          }

          return correct answer.

          Please update zend-mail package (or maybe zendframework) to fix errors.
          Last edited by dimyy; 11-28-2018, 08:12 AM.

          Comment


          • #6
            Usually when we update zend mail it brings about tons of new bugs. We planned to release this week and don't want to hold it off again. Maybe we could change only this one function,
            If you find EspoCRM good, we would greatly appreciate if you could give the project a star on GitHub. We believe our work truly deserves more recognition. Thanks.

            Comment


            • #7
              Now I change only this function and wait results. After 3-5 days I report here test results

              Comment


              • #8

                After a week, everything is fine. No more "Subject value must be composed of printable US-ASCII or UTF-8 characters" errors. The reason is the old "canBeEncoded" function.

                Comment

                Working...
                X