Invision Community 4: SEO, prepare for v5 and dormant account notifications Matt November 11, 2024Nov 11
Posted Yesterday at 12:51 AM1 day This affects both of my purchases.I upgraded to v4.7.20 Beta 3 on the 13th of January, and I didn’t notice until just today that the SendGrid integration is gone from the list. It doesn’t appear, and my emails have not been going out since that date. My Support page in the ACP shows a dramatic spike in email errors, and I cannot choose PHP or SMTP (both give me errors) to temporarily work around this issue.Please let me know what I can do, if there’s a patch or something, to restore SendGrid functionality. This is, as you can imagine, a somewhat pressing issue.I would entertain reverting to 4.7.19, but I think the database has been upgraded so I don’t think that trying to revert to the 4.7.19 files would work.P.S. If I type “sendgrid” into the ACP, the “Integrations” and “Bulk Mail” options come up in the list. The Integrations page lists no SendGrid, and Bulk Mail is just the four bulk newsletters we sent out years and years ago.
Yesterday at 01:27 AM1 day Author @Marc, @Daniel F, @Jim M, I know you’re all in on v5, but it’s going to be awhile even after the 5.0 non-beta is released that I can upgrade to v5. I’ll have to stick with v4.x for awhile, but my forum is not able to send emails now because of this issue.
Yesterday at 01:45 AM1 day SendGrid integration is being deprecated, at least I saw some code changes that indicate that in 4.7.20 Beta 3: public static function isAvailable() { if( Settings::i()->sendgrid_deprecated ) { return FALSE; } return TRUE; }However, it should still show for those who had it configured: /** * Show Sendgrid for those that have it configured * * @return bool|array If returns TRUE, upgrader will proceed to next step. If it returns any other value, it will set this as the value of the 'extra' GET parameter and rerun this step (useful for loops) */ public function step2() { if( \IPS\Settings::i()->sendgrid_api_key ) { Settings::i()->changeValues( [ 'sendgrid_deprecated' => 0 ] ); } return TRUE; }
Yesterday at 01:48 AM1 day Author It doesn’t show here and email hasn’t worked since I upgraded to b3. I tried both the PHP and SMTP settings, so… I’m afraid as well that the SendGrid “choice” in my settings was removed or replaced.I saw the deprecated bit, too, but I imagine it’s being deprecated in version 5, and I should be able to use it through version 4.7.x.P.S. I set the conf_key to a conf_value of “sendgrid” (no quotes) in core_sys_conf_settings, but again, SendGrid doesn’t appear on the Integrations page or the Email Settings. Edited yesterday at 01:52 AM1 day by iacas
Yesterday at 01:56 AM1 day Have you cleared the cache from ACP > Support after updating the setting manually in the database?
Yesterday at 02:19 AM1 day Author 8 minutes ago, teraßyte said:Have you cleared the cache from ACP > Support after updating the setting manually in the database?Yes. Several times now, including earlier before I’d begun trying to do anything.My settings has an API key, the mail_method is set to “sendgrid”; it should show up from what I’m seeing in the files… but it does not. public static function outgoingHandlers(): array { return [ 'debug' => 'IPS\Email\Outgoing\Debug', 'postmark' => 'IPS\Email\Outgoing\Postmark', 'sendgrid' => 'IPS\Email\Outgoing\SendGrid', 'smtp' => 'IPS\Email\Outgoing\Smtp', 'php' => 'IPS\Email\Outgoing\Php' ]; }sendgrid_deprecated is 0mail_method is sendgridsendgrid_api_key has an entry (my API key)It feels like a bug in b3. 😛 Edited yesterday at 02:20 AM1 day by iacas
Yesterday at 03:24 AM1 day Yes, based on what you posted, this is most likely a bug introduced when adding the code to deprecate SendGrid.
Yesterday at 03:35 AM1 day If this is critical, I’d advise restoring back to the backup you took prior to upgrading to the beta and our team will review what you mentioned in the morning.
Yesterday at 04:18 AM1 day Author So…In just poking around, I edited Application.php and email.php. I made some of the tests “TRUE.” I commented out the “else” block.And at some point… the SendGrid option to come back in the Integrations list. I then reverted the files to the 4.7.20b3 version… and the SendGrid block is still there.I have no idea how or why. It might be okay for now. (I’ll monitor to make sure it’s actually sending email).None of the relevant settings in the database seem to have changed. It’s like some other setting changed somewhere. The settings with “mail” or “send” in them seem to be unchanged.I’ll keep monitoring this thread. Thanks for popping in, @Jim M. Something is goofy there. If SendGrid is deprecated (it seems to be), I haven’t seen anything talking about it. Searches don’t pull up much of anything.
Yesterday at 04:52 AM1 day I’m not sure why SendGrid was removed from your integrations; it shows up on my community using version 5 Beta 11.1.There are two settings for SendGrid in your AdminCP.System → Site Features → Integrations → SendGrid → Enable (which I know you’ve done from your screenshot)System → Settings → Email Settings → Mail delivery method (confirm SendGrid has been selected)
Yesterday at 09:53 AM1 day Solution Thanks for letting us know, this should be resolved in the next beta release (very soon).We’re moving our focus onto the Postmark integration (we’ve had great experiences working with them). With that we’re marking SendGrid API integration as deprecated, but it will continue to work if you already use it.
Yesterday at 12:58 PM1 day Author 7 hours ago, Gary said:System → Site Features → Integrations → SendGrid → Enable (which I know you’ve done from your screenshot)System → Settings → Email Settings → Mail delivery method (confirm SendGrid has been selected)Yes, the first one is set now. Either I made it return or something made it return.The second, however, is unavailable. It does not appear as an option. Just SMTP and PHP. Neither are selected because, I imagine, in the database it’s set to “sendgrid.”(Almost?) Every email my site has sent for the last week or so has been rejected due to a DMARC mismatch or other errors. This prevents users from finishing their registration as we ask that they verify their email address.I’ll look for the new beta soon. Thanks, @Stuart Silvester. I may move to Postmark, but as you would expect, I’m disappointed it broke and disappointed that we’ve not been given much notice. (Also, please realize that I know it’s marked as beta, and thus, I incur some risk. It was marked as a security update, though, IIRC.)
Yesterday at 01:07 PM1 day 9 minutes ago, iacas said:The second, however, is unavailable. It does not appear as an option. Just SMTP and PHP. Neither are selected because, I imagine, in the database it’s set to “sendgrid.”Yes, we have just fixed a bug here which was causing that nothing was set.
Yesterday at 01:21 PM1 day Author 12 minutes ago, Daniel F said:Yes, we have just fixed a bug here which was causing that nothing was set.Thanks. I’ve begun setting up Postmark (as a trial for now, SendGrid’s base 50k/month email plan is $19.95, Postmark’s 50k plan is $55), and though I can enter an API key and it saves… the Integrations screen doesn’t change. It never seems to Enable Postmark.I’ll check back in later today. Edited yesterday at 01:21 PM1 day by iacas
Yesterday at 03:16 PM1 day 1 hour ago, iacas said:Thanks. I’ve begun setting up Postmark (as a trial for now, SendGrid’s base 50k/month email plan is $19.95, Postmark’s 50k plan is $55), and though I can enter an API key and it saves… the Integrations screen doesn’t change. It never seems to Enable Postmark.I’ll check back in later today.After you enable Postmark by entering the API key, you’ll need to go to Email Settings to select Postmark as your chosen transport.
Yesterday at 03:51 PM1 day Author 34 minutes ago, Stuart Silvester said:After you enable Postmark by entering the API key, you’ll need to go to Email Settings to select Postmark as your chosen transport.I know that - it doesn’t show up as an option, and the Postmark API key doesn’t “stick” in the settings.The settings continue to look just like this:2 hours ago, iacas said:To be clear:I click “Enable” on the Postmark integration.I put in my API key and click the toggle for tracking to yes.I click Save.The “Saved” box appears for a few seconds.I re-visit the Integrations page and Postmark has a button that says “Enable” again as it wasn’t enabled. The Email Settings look like the above. Edited yesterday at 03:57 PM1 day by iacas
Yesterday at 09:09 PM1 day I haven’t been able to reproduce this, it works as expected for me. Try the latest beta and let us know if it’s still an issue.
23 hours ago23 hr Author 1 hour ago, Stuart Silvester said:I haven’t been able to reproduce this, it works as expected for me. Try the latest beta and let us know if it’s still an issue.I upgraded to b4 and SendGrid worked (but whatever I did last night got it back again, though emails still weren’t quite going through). I had preemptively set up Postmark last night and this morning, and switching to it worked today, and the option to send via Postmark is in the Email Settings page.(Oddly, and tangentially related: when I type “integration” into the search bar, the Integrations doesn’t show up. If I type Sendgrid or Postmark… it does.)So, I’ll continue to set up Postmark, I guess, and will see how it goes. I got their test email from the shell earlier, and the one that it sends you when you add the API key in the ACP.
4 hours ago4 hr Author The task “queue” hasn’t run many times since yesterday after I upgraded to b4. It’s often locked and if I run it manually… I get this error. Personal info (email addresses) redacted with #####.2C124/7 There was an issue running this task, please refer to the system log for further information. INSERT INTO `core_mail_error_logs` ( `mlog_date`, `mlog_to`, `mlog_from`, `mlog_subject`, `mlog_content`, `mlog_resend_data`, `mlog_msg`, `mlog_smtp_log` ) VALUES ( 1737567116, NULL, 'email@mydomain.com', NULL, NULL, '{"type":"list"}', '{"code":406,"message":"You tried to send to recipient(s) that have been marked as inactive. Found inactive addresses: email@proton.me. Inactive recipients are ones that have generated a hard bounce, a spam complaint, or a manual suppression."}', NULL ) IPS\Db\Exception: Column 'mlog_to' cannot be null (1048) #0 /var/www/html/system/Db/Db.php(941): IPS\_Db->preparedQuery() #1 /var/www/html/system/Email/Outgoing/Postmark.php(175): IPS\_Db->insert() #2 /var/www/html/system/Notification/Notification.php(941): IPS\Email\Outgoing\_Postmark->mergeAndSend() #3 /var/www/html/system/Notification/Notification.php(921): IPS\_Notification->sendEmails() #4 /var/www/html/system/Content/Content.php(2574): IPS\_Notification->send() #5 /var/www/html/applications/core/extensions/core/Queue/Follow.php(77): IPS\_Content->sendNotificationsBatch() #6 /var/www/html/system/Task/Task.php(55): IPS\core\extensions\core\Queue\_Follow->run() #7 /var/www/html/applications/core/tasks/queue.php(43): IPS\_Task::runQueue() #8 /var/www/html/system/Task/Task.php(384): IPS\core\tasks\_queue->IPS\core\tasks\{closure}() #9 /var/www/html/applications/core/tasks/queue.php(55): IPS\_Task->runUntilTimeout() #10 /var/www/html/system/Task/Task.php(283): IPS\core\tasks\_queue->execute() #11 /var/www/html/applications/core/modules/admin/settings/advanced.php(751): IPS\_Task->run() #12 /var/www/html/system/Dispatcher/Controller.php(107): IPS\core\modules\admin\settings\_advanced->runTask() #13 /var/www/html/applications/core/modules/admin/settings/advanced.php(38): IPS\Dispatcher\_Controller->execute() #14 /var/www/html/system/Dispatcher/Dispatcher.php(153): IPS\core\modules\admin\settings\_advanced->execute() #15 /var/www/html/admin/index.php(13): IPS\_Dispatcher->run() #16 {main}I understand what it’s saying, but… there are likely hundreds or something of these inactive members, and it’s going to be nearly impossible or would take a LOOOOONG time to go through all of them. (Edit below, and I can’t strike through this text as that seems to be missing in v5…):Edit: Well, I ran it three times, looked at the email address each time, and removed those members from all email. And now it just ran fine, and shows this:Whether it will keep getting stuck remains to be seen. I imagine there are a LOT of old members who are inactive. Edited 4 hours ago4 hr by iacas
4 hours ago4 hr I’ll contact you via a email so we can look further into that, I believe I see the problem but would like to make sure.
3 hours ago3 hr Author 12 minutes ago, Stuart Silvester said:I’ll contact you via a email so we can look further into that, I believe I see the problem but would like to make sure.Thanks. I see it and replied.