Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to debug? #7

Open
narthur opened this issue Dec 18, 2019 · 4 comments
Open

How to debug? #7

narthur opened this issue Dec 18, 2019 · 4 comments

Comments

@narthur
Copy link

narthur commented Dec 18, 2019

I'm trying to get this set up and am having trouble. Amazon says my SNS HTTPS subscription was confirmed successfully, and my CloudWatch logs say that notifications are being delivered. But no new contacts are showing up as on hold, and no new bounces are showing up in CiviCRM.

What do I need to check to figure this out?

@mecachisenros
Copy link
Owner

@narthur difficult to tell without knowing how you've set it up, have you followed SES/SNS guide here?

If you are familiar with PHP and development in general I can suggest points where to look to figure out what is going on.

But perhaps it would be better to give a try/use the aws extension, better documented, has a UI to create Identities and Subscriptions from within Civi, and also supports click/open tracking through SNS.

@narthur
Copy link
Author

narthur commented Dec 18, 2019

Thanks for the tips!

Just found this repeated over and over in my logs, probably since this hook is getting hit a lot right now since I'm sending a large mailing:

[18-Dec-2019 12:46:01 America/New_York] PHP Warning: Invalid argument supplied for foreach() in /home/audiove9/public_html/comm/wp-content/plugins/civicrm/civicrm/ext/civicrm-ses-master/CRM/Ses/Page/Webhook.php on line 152

Line 152 is the foreach in this function:

/**
 * Get header by name.
 *
 * @param  string $name The header name to retrieve
 * @return string $value The header value
 */
protected function get_header_value( $name ) {
	foreach ( $this->message->mail->headers as $key => $header ) {
		if( $header->name == $name )
			return $header->value;
	}
}

@narthur
Copy link
Author

narthur commented Dec 18, 2019

Discovered that I needed to turn on "Include Original Headers" for domains and emails in AWS SES settings, and it seems to have fixed the issue. Could this be added to the setup instructions?

@mattwire
Copy link
Contributor

@narthur Or see #8 which works around this another way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants