Welcome to My iptv forum

  • Everyone is invited! My iptv forum is for everyone, new and advanced user alike!
  • Searching is key! Before you post a question, use the forum search feature to determine whether your topic has already been covered.
  • Do not start flame wars! If someone has engaged in behavior that is detrimental to the discussion -- spamming, harassment, etc -- report the post and we'll take a look.
  • Resource icon

    xF2 in Credit SparkPost Mail Transport for XF 2.2 2.1.4 2.1.4

    XenForo 2.x
    xF2 in Credit SparkPost Mail Transport for XF 2.2 2.1.4
    Xenforo Offline

    Xenforo

    Member
    Trusted Member
    +Lifetime VIP
    New member
    Member
    Apr 4, 2020
    5,527
    5,375
    113
    Turkey
    Eldorado submitted a new resource:

    SparkPost Mail Transport for XF 2.2 - SparkPost Mail Transport for XF 2.2

    Adds a SparkPost mail transport option to have all mails sent via your SparkPost account.

    This is the XF v2.2 compatible version of https://enxf.net/resources/sparkpost-mail-transport.1907/ and has been completely rewritten to support Swiftmailer v6 library that is part of XF v2.2

    This addon has full bounced email and unsubscribed email handling support using the SparkPost Events API - no mailbox required.

    Setup

    If you haven't already done so, you will need to configure a sending domain for your forum in your SparkPost account. It is highly recommended that you also set up a default bounce domain.

    You will then need to create an API key with the following permissions:
    • Events Search: Read-only
    • Transmissions: Read/Write
    Once you have your API key, change the Email transport method in the Email options page to "SparkPost" and paste your API key into the supplied box.

    sparkpost-mail-transport-for-xf-2-2-2.png


    sparkpost-mail-transport-for-xf-2-2-1.png


    sparkpost-mail-transport-for-xf-2-2.png



    Upgrading from XenForo v2.1 and SparkPost Mail Transport v1.x

    Because the new version of the Swiftmailer library supplied with XenForo v2.2 is incompatible with the old version in XF 2.1 - care must be taken when upgrading versions to avoid breaking your forum.

    In short: upgrade to at least v1.1.0 of the addon first before upgrading to XF v2.2 and then immediately after upgrading to XF v2.2, ensure you upgrade the addon to v2.0.0 or higher.

    Configuration

    As per the screenshot above - you may configure some transport options when configuring SparkPost.
    • Click Tracking turns on click tracking on all links in emails sent
    • Open Tracking adds a tracking image to all emails sent to track opens
    • Test Mode will append '.sink.sparkpostmail.com' to all recipient email addresses so we can test communication with SparkPost without actually sending any emails to the recipients.
    Note that it is highly recommended that you set up a custom tracking domain before enabling click or open tracking.

    There is an additional configuration page under the SparkPost Mail option heading:

    sparkpost-mail-transport-for-xf-2-2-3.png



    • Message Events Batch Size allows you to configure how many events the system will attempt to retrieve in each batch. In general you shouldn't need to adjust this from the default.
    Testing

    You can test the functionality of the addon using the built in XenForo email test system - go to the admin UI > Tools > Test outbound email

    sparkpost-mail-transport-for-xf-2-2-4.png



    Note the email transport class should be \Hampel\SparkPostDriver\Transport\SparkPostTransport - if it isn't, then you haven't installed or activated the addon correctly.

    There is also a second test facility which allows you to specify whether to send transaction or non-transactional emails. Go to the admin UI > Tools > Test SparkPost

    sparkpost-mail-transport-for-xf-2-2-5.png



    Turn on the checkbox to send transactional email - turn it off to send non-transactional.

    In all cases, you should examine the headers of the emails you receive to verify that it was indeed sent via SparkPost and to validate the presence/absence of the List-Unsubscribe header (the header should be present for non-transactional emails and absent for transactional emails).

    Transactional vs Non-transactional Emails

    Transactional emails are automated emails sent by a system to communicate with a customer or site user about information relevant to their account or usage of your site. They are typically specific to an individual user and are generally important to the user for the ongoing use of your site.

    Examples of transactional emails are:
    • account creation and activation emails
    • password resets and two-factor authentication
    • security and account alerts
    • notifications resulting from subscriptions or alert options the user has chosen
    • purchase receipts and shipping notifications
    • legal and important site notices
    Non-transactional emails (also referred to as Commercial Emails) are generally sent to a group of users in bulk (although they may also be personalised), containing promotional or marketing material. Usually only users who have opted in to receive such material from you will receive them.

    Examples of non-transactional emails are:
    • newsletters
    • sales offers
    • new product updates
    • email designed to increase user engagement and onboarding, etc
    The SparkPost website has more information about Transactional vs Commercial emails.

    By default, SparkPost marks all emails sent through their API as "non-transactional". This addon changes that behaviour and sets all forum emails to transactional except for:
    • Emails sent via the admin UI - Communication > Email users
    • Welcome emails
    There are two significant differences between transactional and non-transactional emails sent via SparkPost:
    1. non-transactional emails have the List-Unsubscribe header added (overrides the header added by XenForo) for one-click unsubscribe requests in some email clients. Transactional emails do not contain this header.
    2. there are separate suppression lists for transactional and non-transactional emails. If someone unsubscribes from non-transactional emails, you can still send them important transactional emails like forum subscriptions and password resets. However, if someone unsubscribes or blocks you from transactional emails, you should disable their account, since you will no longer be able to email them about important forum information.
    See below for more information on suppression lists.

    Bounce and Unsubscribe Handling

    The automated bounce and unsubscribe handling in the addon will check for all of the standard hard and soft bounce calls that might be received as a result of sending emails. These bounced messages are intercepted by SparkPost and we can then execute a query to determine what action we need to take as a result.

    You do NOT need to configure a "Bounced email address" (unless you don't have a default bounce domain set up) or "Unsubscribe email address" in your email options. Nor do you need to enable the "Automated email handler" or "Enable automated email handler" options - SparkPost does not forward bounced emails or unsubscribe notifications via email - we query their API to determine bounce / unsubscribe information.

    Unsubscribe handling is a little more sophisticated than the standard XenForo system - since we differentiate between transactional and non-transactional emails and handle them differently.

    Note that if we receive a hard bounce for transactional emails - the users account will be disabled to prevent further emails being sent.

    Suppression lists

    When SparkPost receives a hard bounce from a sent email or a List-Unsubscribe request, it will place that email address onto a suppression list which means that you can no longer send email to that user. This is in place to protect your sending reputation - since continuing to send email to an invalid or unsubscribed address is a spam indicator which could see you blocked from some mail providers.

    The thing to be aware of is that if a users forum account has been disabled due to bounced emails, they will most likely have been added to the SparkPost suppression list as well. If you re-enable their account without changing email addresses, then they may not receive any emails from your site because sending to them is blocked by SparkPost.

    If you are sure the email is now valid, you can remove them from the SparkPost suppression list - in the SparkPost admin console - https://app.sparkpost.com/lists/suppressions.

    Just remember that there are two separate lists - one for transactional emails and one for non-transactional emails.

    Read more about this resource...
     
    Relate Threads
    Xenforo Offline

    Xenforo

    Member
    Trusted Member
    +Lifetime VIP
    New member
    Member
    Apr 4, 2020
    5,527
    5,375
    113
    Turkey
    Eldorado updated SparkPost Mail Transport for XF 2.2 2.1.0 with a new update entry:

    SparkPost Mail Transport 2.1.0

    Update
    • required parameter specified after optional parameter in SubContainer/SparkPost::logJobProgress - reorder function parameters to make this more usable
    • required parameter specified after optional parameter in Test/AbstractTest::message - just make them both required
    • explicitly list "egulias/email-validator": "^2.0" as a requirement so that we don't run into problems with the version shipped with XenForo
    Important: if you also run my...

    Read the rest of this update entry...
     
    Xenforo Offline

    Xenforo

    Member
    Trusted Member
    +Lifetime VIP
    New member
    Member
    Apr 4, 2020
    5,527
    5,375
    113
    Turkey
    Xenforo updated SparkPost Mail Transport for XF 2.2 2.1.1 with a new update entry:

    bugfix v2.1.1

    * bugfix: strip uri prefix returned in uri from paged responses

    I suspect this is actually a bug in the Sparkpost API provided by the vendor - but I would need to do further tests to verify this. Either way, I've coded a workaround which should hopefully work.

    NOTE: this release is identical to the previous version uploaded. I accidentally entered the wrong version number (v2.2.1) into resource manager when uploading the previous version - but the download is actually v2.1.1. If you have...

    Read the rest of this update entry...
     

    Create an account or login to comment

    You must be a member in order to leave a comment

    Create account

    Create an account on our community. It's easy!

    Log in

    Already have an account? Log in here.

    Top Posters of the Month

    Online statistics

    Members online
    65
    Guests online
    468
    Total visitors
    533
    18,335Threads
    64,168Messages
    62,984Members
    DeejeeyLatest member
    Top