Communicating With Rock

Say what? How Rock helps you get heard.

Download PDF
Current Version: McKinley 11.0
Note: A newer version of this book is available. Use the version dropdown to switch to the newest version.

Updates for McKinley 11.0

Below is a summary of the updates for this version.

  • Added SendGrid Email Communication Transport
  • Added support for multiple SMS Pipelines

Updates for McKinley 1.0

No updates made.

Updates for McKinley 2.0

No updates made.

Updates for McKinley 3.0

Below is a summary of the updates for this version.

  • Noted the change in location of 'Communication Templates' to it's new location under 'Login Status (top right of the page) > My Settings > Communication Templates'.

Updates for McKinley 4.0

Below is a summary of the updates for this version.

  • Updated information on communication approvals highlighting emails that will be sent for new communications waiting for approval.
  • Added tip on how to disable the view button on the bottom of the grid by removing view rights to the communications page.
  • Added a link to merge documents in the Admin Hero Guide.

Updates for McKinley 5.0

Below is a summary of the updates for this version.

  • Added information on enabling SMTP for Google Apps

Updates for McKinley 6.0

Below is a summary of the updates for this version.

  • Moved Managing Dynamic Content chapter to Designing and Building Websites manual.

Updates for McKinley 7.0

Below is a summary of the updates for this version.

  • Moved the Managing Dynamic Content chapter to the Designing and Building Websites manual.
  • Added note about Text to Workflow in SMS in Detail chapter.
  • Added Communication Wizard chapter.
  • Added Communication Lists chapter.
  • Added Communication Preferences chapter.
  • Moved Simple Email Editor section to own chapter.
  • Updated HTML Emails, Communication Templates, and History and Analytics chapters.
  • Added MMS Considerations section to SMS in Detail chapter.
  • Updated Communication Wizard screenshots and template documentation.
  • Updated Simple Email Editor chapter to link to Email Template Survival Guide.
  • Updated Long Code Throttling information in SMS in Detail chapter.
  • Updated communication list names and syncing information in Communication Lists chapter.
  • Updated Communication Lists screenshot in Communication Lists chapter.

Updates for McKinley 8.0

Below is a summary of the updates for this version.

  • Updated screenshots to v8.

Updates for McKinley 9.0

Below is a summary of the updates for this version.

  • Added SMS Pipeline
  • Added SMS Conversation Page

Updates for McKinley 10.0

Below is a summary of the updates for this version.

  • Added Save feature in Communication Wizard
  • Added Nameless Person features
  • Updated to include Group RSVP feature in Communication Wizard
  • Updated System Emails to System Communications
  • Updated Communication History and Analytics features

Updates for McKinley 12.0

Below is a summary of the updates for this version.

  • Added a Twilio Signature Validation option to the Twilio Communication Transport
  • SMS Conversations has a filter which allows you to search for conversations by person
  • The Communication Wizard has a new cleaner look and feel, with added enhancements
  • Added a new "Video" widget in the Communication Wizard to allow easy sharing of videos
  • Mass Push Notification lets you send push notifications to all active devices in your system

Updates for McKinley 13.0

Below is a summary of the updates for this version.

  • Added support for sending images from within SMS Conversations
  • SMS Phone Numbers can now have security applied to them
  • Notes can be created directly from SMS Conversations
  • New Communication Transport settings let you control how many concurrent communication recipients will be processed in parallel
  • SMS Pipeline actions have an Expire Date so they can be automatically deleted by the cleanup job if/when they expire

Updates for McKinley 14.0

Below is a summary of the updates for this version.

  • The SMS Pipeline has a new Give action, allowing for Text Giving functionality

Updates for McKinley 15.0

Below is a summary of the updates for this version.

  • The SMS Phone Numbers defined type has been replaced with a new System Phone Number model

Updates for McKinley 16.0

Below is a summary of the updates for this version.

  • Added guidance to help ensure compliance with spam regulations and policies, particularly with Gmail
  • In Communication History, organizations with multiple campuses can filter recipients by campus from the Recipient Details page
Ministry by Text Advertisement

Welcome

In today's hectic world people expect their communications to be personal and professional. One channel isn't enough; organizations must meet people where they are. Sometimes that means pushing a message through email or text, other times it needs to be pulled from the web or social media. Rock gives you the tools you need to personalize your message through all these mediums and more. Let’s jump in and see how Rock can be that communications assistant you’ve always dreamed of.

Sending a Communication

Communications are ways of pushing out messages to your attendees. Today this can be in the form of emails or SMS text messages, but in the future communications could offer many more options.

Rock has two tools for sending communications: our Communication Wizard, which will make you feel like an email rock star, and the Simple Email Editor, which is best suited for sending simple emails, such as from a group toolbox. If you’re anxious to get started sending messages with the wizard, jump to the Communication Wizard section. If you’d like to learn about how communications work in Rock, read on.

But Wait, I Just Want To Send a Letter!

"These are great and all, but I need a good old-fashioned low-tech letter. Although I would like to use a fancy merge document and maybe a little Lava..." If this is you, you need to head over to the Rock Admin Hero Guide for more info on Lava and merge docs.

Under the Hood of Communications

Rock's Communication Engine

Like a car engine, Rock's communication tool has a number of different parts or components. Most of them can be found in the Communications screen (Admin Tools > Communications). We'll be talking about many of them in depth throughout this guide, but you can read an overview of all of the parts in the Communications chapter of the Admin Hero Guide.

Mediums and Transports

Like everything in Rock, communications is designed to be extensible for the future. That means the messages of tomorrow won't be limited by the messages of today. The communications engine is based on two types of components: mediums and transports. Let's look at how that works.

Think of mediums as different communication channels. Today Rock provides an email medium and a SMS medium. Other mediums could easily be provided in the future for things like mobile application push notifications. These mediums can be written by either the core developers of Rock or by third-party developers. If you don’t like it, change it! Mediums can be configured under:
Admin Tools > Communications > Communication Mediums.

Transports, on the other hand, can be thought of as the worker bees of the mediums. They do the actual work of getting the messages to their recipients. Today the Email Medium has transports for delivering emails through a normal SMTP server as well as via the Mailgun email service. Settings for the transport are configured under:
Admin Tools > Communications > Communication Transports.

A medium can only use one transport at a time. You select the transport under the medium administration.

Communications Send Job

Usually when you send a communication, it will be sent immediately to a communication queue that gets processed in almost real-time. There is, however, a Rock Job that runs every 30 minutes to look for communications with a pending status.
You can view this under: Admin Tools > System Settings > Jobs Administration > Send Communications.
You don’t need to worry about this job, but we wanted to point it out so you know more about how communications are sent.

Bounced Mail

We know you have much to share, so let's make sure you have the opportunity to do that. You have to process bounced mail to keep your email addresses accurate and improve your email reputation (a metric used by ISPs to help determine if your organization's email is spam). Bounced messages are emails that are returned back to you after you send them because an email address is incorrect or no longer valid. Rock can automate this process if you use an email integration that supports the notification of these messages. Currently, the only core integration that supports bounced mail processing is the Mailgun integration (more on this integration is provided under the Integrations chapter of this manual). Third-party provided solutions may be available for other services.

SMS Pipeline

In this chapter we’ll look at how Rock handles incoming SMS messages using Rock’s SMS Pipeline feature.

Rock’s SMS Pipeline is the entry point for all incoming messages. Think of it as a switchboard operator that's directing each message to its intended action.

The Fundamentals

Below is an overview of how the SMS Pipeline feature works. If some of these concepts are foreign to you right now, don’t worry. We’ll go over all the details in the next section.

  1. An incoming SMS message is received into the pipeline.
  2. The message flows down the pipeline, through a series of Actions. Actions are activities that the system performs, like launching a workflow.
  3. Each action has filters. The pipeline uses filters to analyze the message and its contents against criteria you provide. If the message meets your criteria, then the action is performed. If not, the message moves to the next action. This process repeats until an action is performed.
  4. When an action is performed, the pipeline looks at the action’s Continue setting. This determines if the message should continue down the pipeline to the next action, or if the matched action is all that’s needed.
  5. If a message continues down the pipeline after an action has already been performed, it works the same way as described in #3 above. Satisfying the filter criteria for one action does not mean the message automatically satisfies the filters on the remaining actions.

These general steps are repeated for each new message you receive. That means you can use a single pipeline to perform different actions for a variety of scenarios.

Anatomy of Actions

Actions automate many of the tasks you would want to perform in Rock after receiving a text message. For instance, you might want to send the person an automated reply message. Or, you might want to launch a workflow if the person’s message contains certain keywords.

Each action you add has its own settings and filters, giving you full control over what should happen and when.

Rock ships with three SMS Pipeline actions:

  • Launch Workflow
  • Reply
  • SMS Conversations

We’ll use the Reply example pictured below to describe the properties of actions in general. Then in the following sections we’ll dive into each type of action individually.

SMS Pipeline Actions
SMS Pipeline
1 Actions
These are the actions you can add to the pipeline. Click and drag the desired action into the center of the page to add it.
2 Name
This is the name of the action, which displays within the pipeline in the center of the page. The default name will be the type of action it is. If you have the same type of action in your pipeline more than once, you’ll want to change their names so you can easily tell them apart.
3 Active
The action will only be performed if it is active. You might want to disable actions that only apply during certain times of the year, so you don’t have to delete them when they’re no longer needed.
4 Continue
After an action is performed the process will check the Continue setting for that action. If Continue is enabled, the message will continue down the pipeline to the next action. When Continue is disabled, the process ends with that action and any remaining actions in the pipeline are ignored.
5 Filters
Filters decide whether an action will be performed. If a message meets the action’s filter criteria, then the action is performed. If not, the process moves to the next action to evaluate that set of filters. If no filters are applied to an action, every message that reaches the action will cause the action to be performed.
6 Action-Specific Properties
This area will appear for actions where additional setup is needed. It will change depending on the type of action. We’ll cover these properties in the next section.

SMS Pipeline Webhooks

You might have noticed the Webhook URL at the top of the SMS Pipeline Detail page. This identifies the pipeline you’re viewing. You’ll use this URL to link your phone numbers to a specific pipeline. See below for details.

SMS Pipeline Actions

As noted in the prior section, all actions share some common properties. However, each type of action has unique features and properties that we’ll describe in detail below.

SMS Conversations

This action will send the message over to the SMS Conversations page, at which point you’re messaging with the person directly. There is only one filter for this action, and no additional unique properties.

Remember, the phone number filter references the number to which the person sent the message, not the person’s phone number. If this is left blank, then every message that reaches this action will go to the SMS Conversations page.

SMS Conversations
SMS Conversations

As pictured above, the SMS Conversations action is typically at the bottom of the pipeline. If the person’s message doesn’t meet the criteria for any of the other actions, this is how you can ensure it doesn’t fall through the cracks.

Reply

The Reply action is an easy way to automate responding to an incoming text. You can customize the content of your response, and personalize it for the recipient using Lava. The reply action can in some cases eliminate the need for a workflow if a specific message is always to be returned.

Reply
Reply
1 Message Filter
You can check the content of the incoming text message against key words you provide. You can add as many of these conditions as needed. You can also select whether the message requires "any" or "all" of those criteria to match.
2 Response
This is the content of your organization's response, which will be sent if the incoming message meets the filter requirements. You can personalize the response using Lava.

The example pictured above will only perform the Connect Response action if the words "serve" or "volunteer" are somewhere in the message's text. If the incoming text says "I would like to serve" then the contents of the Response field will be sent to the person as a text message. In this particular example a workflow might also be launched for this message, because the Continue option is enabled.

Launch Workflow

As the name implies, this action will launch a workflow. You’ll want to configure your workflow to receive information from the pipeline, using the workflow attribute merge fields we cover in the SMS Pipeline Workflows chapter of the Blasting Off with Workflows guide.

Launch Workflow Action
Launch Workflow Action
1 Workflow Type
You’ll use the drop down to choose your preconfigured workflow.
2 Pass Nameless Person
You can control whether Nameless person records (see Nameless People) should be passed to your Workflow.
3 Workflow Name Template
This Lava-enabled field is where you can create a string to use as the workflow name.
4 Workflow Attributes
This lets you pass information, like the person or their phone number, to the workflow you want to launch. See the SMS Pipeline Workflows chapter of the Blasting Off with Workflows guide for details on setting this up.

SMS Pipeline In Action

Let’s look at a completed pipeline to see how this all comes together. This pipeline has four actions, and was designed to handle inquiries about small groups and connecting. Below each screenshot we’ll highlight the key points.

Response
Response

As pictured above, when an incoming text contains the word 'group', an auto-response will be sent to them with more information about joining a group. In this case the processing stops, as the Continue option is not enabled.

If the SMS message doesn't contain the word 'group' then the "Connect Response" action will be evaluated because it's the next in line. If the message contains the word 'volunteer' or 'serve' an auto response gets sent with more information about getting connected to a serving team. The arrow on the action indicates that the continue functionality is enabled, and the next action will run if the message meets the requirements.

Launch Workflow
Launch Workflow

In this example, the workflow action has the same filters as the "Connect Response" action. That means any message which activates the "Connect Response" action will also launch this workflow.

Lastly, the pipeline continues down to the “SMS Conversations” action so that a staff member can directly connect with this person.

In this case, the "SMS Conversations" action has no filters applied. Knowing this, and looking at the pipeline as whole, all incoming SMS messages will end up in the SMS Conversations page except messages that contain the word 'group'.

If we enabled Continue in the "Group Response" action, then every incoming SMS message would go to the SMS Conversations page. In that case, a message containing the word 'group' would not satisfy the "Connect Response" and "Launch Workflow" filter criteria, so those actions won’t be performed.

If an SMS message is received that says "I'd like to learn more about your services" it would pass through the pipeline straight to the "SMS Conversations" action. No automated replies would be sent and no workflows would be launched for that message.

SMS Pipeline Lava

You can use Lava to customize and personalize your pipeline’s actions. There are different merge fields depending on whether you're working with the Reply or Launch Workflow action.

SMS Pipeline Response Lava
SMS Pipeline Response Lava

Launch Workflow Action Lava

Below is a list of Lava merge fields you can include in your pipeline when you're working with the Launch Workflow action. These are the same workflow attribute merge fields we cover in the SMS Pipeline Workflows chapter of the Blasting Off With Workflows guide.

SMS Pipeline Workflow Lava Merge Fields
Merge Field Description Field Type
{{ FromPerson.PrimaryAlias.Guid }} The pipeline uses the person's phone number to look up the first person with that phone number. If it finds a match, it assigns that individual's record to FromPerson. If the phone number is used in more than one profile, the pipeline defaults to the first record of an adult with children. Person
{{ FromPhone }} The person's phone number, pulled from the inbound message, from the SMS gateway. This will automatically get added to the workflow as FromPhone and will include the country code (i.e., the raw phone number 18645555555) Phone Number
{{ ToPhone }} The SMS gateway number where the message was sent Phone Number
{{ ReceivedDate }} The date the message was received Date
{{ ReceivedTime }} The time the message was received Time
{{ ReceivedDateTime }} The date and time the message was received Date Time
{{ MessageBody }} The content of the SMS message that was received Text or Memo
{{ MatchedGroups }} If the RegEx expression provided contains match groups, they are loaded into an array here. This is an advanced feature, so if you’re not sure what this means, don’t worry. You probably don’t need it. Typically, you fill in a text field with a merge expression of a single result from the MatchedGroups array.

Reply Action Lava

Below is a list of Lava merge fields you can use when you're working with the Reply action. Note that each uses a prefix of Message.

SMS Pipeline Reply Lava Merge Fields
Merge Field Description
{{ Message.FromNumber }} The person’s phone number from the inbound message
{{ Message.ToNumber }} The SMS number where the message was sent
{{ Message.FromPerson }} The pipeline uses the person's phone number to look up the first person with that phone number. If it finds a match, it assigns the value to FromPerson. If the phone number is used in more than one profile, the pipeline defaults to the first record of an adult with children. This is the full Person object, so, for instance, you'll need {{ Message.FromPerson.FullName }} to get the person's full name.
{{ Message.Message }} The content of the SMS message that was received

Adding New Pipelines

Technically a single pipeline is all you need in Rock. After a while though, you might find that your single pipeline becomes complex, especially if you have multiple numbers that you are supporting. In this case you can create additional pipelines. Please note though that a single SMS phone number can only work with a single pipeline, but a pipeline can service multiple SMS numbers.

To start, navigate to Admin Tools > Communications > SMS Pipeline. From here you can add, delete or edit your list of pipelines.

SMS Pipeline List
SMS Pipeline List

Click the button to add a new pipeline or click an existing pipeline to access its details. You can edit the 'Default' pipeline that ships with Rock, or you can create your own. In this example we’ll add a new pipeline from scratch so you can see the process.

The first thing you’ll need to do is provide a name and description for the pipeline. If you have multiple pipelines, be sure to make the name and description clear.

Add New Pipeline
Add New Pipeline

Click the Save button, and that's all you need to start configuring your new pipeline using the instructions in the above sections. Remember, each pipeline can be associated with its own webhook (see below) for added flexibility.

From One to Many

If you started using SMS Pipeline before Rock v11, you don't need to change anything. The webhook you have in place will continue to work. However, don't forget that a webhook will stop working if the associated pipeline is deleted.

SMS in Detail

Before you can start using the SMS features Rock has to offer, you need set up a phone number. This chapter provides the information you’ll need to get started.

Add SMS Phone Number

You need to have a phone number before you can start sending and receiving texts. We recommend Twilio, and have a whole section for setting up Twilio in a later chapter. Even if you don’t have a phone number set up yet, it’s important to be familiar with the SMS Phone Number settings because they are referenced later in this chapter.

These settings can be accessed and maintained from Admin Tools > Communications > SMS Phone Numbers.

Add SMS Phone Number
Add SMS Phone Number
1 Value
Be sure that the phone number is in the Value field and that it is in the format of "+15555555555" (or similar for international numbers).
2 Description
A good description can be very helpful if you have multiple phone numbers.
3 Active
Only Active phone numbers can receive responses. You might use a phone number for a large event and then inactivate it until the next event.
4 Response Recipient
The person you select here will receive the incoming messages sent to the SMS Phone Number you’re viewing. This only happens if Enable Response Recipient Forwarding is enabled. Be sure the individual you select has a valid SMS phone number on their record.
5 Enable Response Recipient Forwarding
If "Yes" is selected, then incoming messages to this SMS Phone Number will be sent to the Response Recipient. If "No" is selected, then the conversation will go to the SMS Pipeline or SMS Conversations.
6 Launch Workflow On Response Received
You have the option of automatically launching a workflow when a response is received. Use this field to indicate which workflow should launch. Don’t forget, you can use the same phone number to launch different types of workflows using the SMS Pipeline.

SMS Number Strategies

Now that you've seen how SMS replies are handled in Rock, let's touch briefly on strategies to implement this effectively in your organization.

SMS services like Twilio make it very inexpensive to rent phone numbers for SMS. (A number from Twilio runs only $1 per month.) Don't limit your organization to a single number if you need more than one. Think about getting a number for each department and/or heavy SMS user. It's also very easy to turn a SMS number on and off. You might grab a number for a large event and remove it after the event is over. You can also reuse a number internally by changing the Response Recipient as described above.

MMS Considerations

Standard MMS (aka, Multimedia Messaging Service) messages allow you to send images, slideshows, videos and audio clips as attachments. While this means you can do some creative things with your communications, there are some limitations to keep in mind.

The biggest limitation is that the recipient's phone may not support all multimedia files. So, while you may be able to send a short video, not all of your recipients may be able to view it.

Another thing to keep in mind is that some mobile carriers limit the file size of attachments being sent over their network. For example, Twilio limits messages that combine text and images to 5MB. If you try to send, say, an MMS message combining text and video, and the total size is greater than 5MB, Twilio will prevent the message from sending. Before sending out a large number of messages, it's a good idea to test your communications on various handsets using different file formats and sizes. See what works and what doesn't.

Twilio, Short Codes and MMS Messages

If you're using a Twilio short code, keep in mind that it doesn't automatically support MMS messages. You can add MMS capabilities for a one-time fee of $500. This is different than regular "long codes" (phone numbers) where MMS is usually automatically supported.

If you're not sure whether your account supports MMS messaging, check your Twilio Console. If you only see "Capabilities: SMS" and MMS is not listed then it's likely you haven't purchased MMS for your short code.

See the setting up Twilio section for more information on configuring Twilio as your SMS provider.

Long Code Throttling

It's still a bit like the Wild West out there when it comes to SMS and MMS. Each carrier has its own rules and practices. For many carriers, sending or receiving too many messages too quickly will set off spam warnings, which results in messages either not being sent or not being received. This can be a real problem when you need to send information to a lot of people at once.

Fear not. We've got you covered. Out of the box, Rock comes configured with Long Code Throttling. This global attribute slows the delivery of non-short code numbers. By default it is set to 100 milliseconds, or a 10th of a second, which is the rate we've found works best for both speed and reliable delivery. You can modify the rate, though, by changing your Twilio transport settings (Admin Tools > Communications > Communication Transports). You can also disable Long Code Throttling altogether. Keep in mind, though, that this may result in your messages not being delivered.

Configuring Twilio for SMS Pipeline

In the past, each SMS feature included its own webhook. The SMS Pipeline condenses those features into one place, so you only have to use one webhook. That means you can use a single phone number for a variety of different purposes.

To set your number up for the SMS pipeline in Twilio, set the A Message Comes In URL to:
https://YourServer/Webhooks/TwilioSMS.ashx?SmsPipelineId=YourPipelineId

If you need multiple SMS Pipelines, you can link each one to your phone numbers by specifying the pipeline’s ID in the URL. We’ve made this easy by displaying the URL you’ll need on the pipeline itself.

See the Integrations chapter for more information on setting up Twilio in general.

SMS Conversations

In the prior chapter we explain why many of your incoming SMS messages will end up getting passed from the SMS Pipeline into SMS Conversations. Now, let’s take a step back and see how to manage those messages, or messages that are sent to SMS Conversations directly. Navigate to People > Communications > SMS Conversations to start.

SMS Conversations Page
SMS Conversation Page
1 New Conversation
This will open up a new conversation window to start a conversation with a selected individual.
2 All Responses
Response Listing – this panel displays all the responses to the specific SMS number.
3 Available SMS numbers
The top of the page shows all the SMS numbers that don't have response recipient forwarding enabled. If only one number is available, then the dropdown would be replaced with a label.
4 Show/Hide
You can choose to show or hide messages that have already been read.

We realize that every organization is different, so we add in settings to allow you to customize each feature for your needs. Suppose you have the Students Director and First Impressions Director using communications for scheduling different events with their volunteers. This could be done with the out of the box SMS Conversations page, or you can customize this so the two can only see their own SMS number on different pages.

Create Multiple SMS Pages

Use blocks to create multiple pages for SMS Conversations. On each page you can then specify who can access these pages and which number/numbers are used for that SMS page. To learn more about creating pages and blocks check out the Designing and Building Websites using Rock guide.

Nameless People

Sooner or later, you’ll start receiving SMS messages from people and phone numbers you don’t recognize. If you’re worried that this will cause a snag in your processes, don’t be.

Rock will try to match the phone number of a new incoming SMS message to a person in the system. If it can’t find anyone with that number, Rock will create a Nameless Person record instead. This allows your processes to continue as normal, without knowing their name or other contact information. In most cases this will result in the message being passed from the SMS Pipeline to the SMS Conversations page. Other possible actions are limited because we don’t know who the person is.

Nameless People in SMS Conversations
Nameless People in SMS Conversations
1 Phone Number
Typically a name is shown here. Since Rock doesn’t know the person’s name, you’ll see the phone number instead.
2 Unknown Person
This indicates the conversation is with an unknown (i.e. nameless) person.
3 Link To Person
Click this button to link the phone number to a new or existing person record. We’ll cover that in detail below.

As new texts come in, you might lose track of your nameless people in the SMS Conversations page. Luckily, you can go to Admin Tools > Communications > Nameless People to see and manage your list of nameless records:

Nameless People Page
Nameless People Page
1 Phone Number
All of the phone numbers Rock can't link to a person record are listed here.
2 Link To Person
Click the button to link the phone number to a new or existing person record (see below).

Where Did My Nameless Person Go?

Each night, the RockCleanup job will go through the Nameless record types to look for a matching person record. If it finds a match it will merge them for you and the Nameless record will be removed.

Linking to an Existing Person

Once you know for sure who you’re talking to, you'll want to link the phone number (and the conversation) to an actual person in Rock. You'll do this from the Link Phone Number to Person page. You can get there from the SMS Conversations page or from the Nameless People page as described above.

Link Phone Number to Person
Link Phone To Person
1 Add New Person
As pictured above, this page lets you quickly and easily create a new person record to be linked with the phone number.
2 Link Existing Person
Clicking this button will give you a person picker screen so you can look up the existing record to be linked with the phone number.

Respond from a Device

When you send an SMS message (see the Communication Wizard chapter) you'll select an SMS number to send from. When Response Recipient Forwarding is enabled as described earlier, responses will be forwarded to the response recipient's mobile phone with the sender's name and a response code.

The response code consists of the @ symbol followed by a three-digit number (e.g., @347). If further follow-up is required, the response recipient can use this code to reply back.

If your mind is swimming a bit, that’s OK. Let's look at an example. In our example Jenny has just sent out a bulk SMS message to several attendees reminding them of the car show that afternoon. Let's walk through a conversation she has with Alisha.

SMS Example
SMS Example
1 Bulk Message
The original bulk SMS message. Notice Jenny has cleverly used merge fields to personalize the text message with each recipient's name.
2 First Response
Alisha then responds to the message.
3 Response Code
The response goes back to Rock's SMS phone number. Rock then looks up that number's response recipient and relays the message to Jenny's phone. Because the message is no longer directly from Alisha, Rock adds Alisha's name to the message and also the response code @671.
4 Sent to Alisha
Jenny decides she would like to continue the conversation so she writes a quick message back including the response code. Rock will use this code to match the conversation back to Alisha.
5 Shows Message
Alisha receives Jenny's response. Note how Rock has removed the response code. To Alisha it appears that she is texting Jenny directly.

Notice that both sides of the conversation are texting to Rock's SMS number (555) 351-5392. Little does Alisha know that Jenny's real number is 867-5309.

Configuring Email

Out of the box, the email communication medium is configured to use the SMTP transport. You'll want to be sure that your mail server settings are all correctly configured under:
Admin Tools > Communications > Communication Transports > SMTP.

SMTP Relaying May Bite You

If you decide to use SMTP as your transport be sure that the server/service you use is configured to allow the Rock server to relay. If you're using Google Apps see the tips in the Integrations section below.

Broken Images?

If you’re finding that some of your images appear as broken links in your email, be sure your Public Application Root organization setting is set to the proper URL. This can be modified under:
Admin Tools > General Settings > Global Attributes > Public Application Root.

There are several other settings that you should be aware of. While most are preconfigured to best practices, it's good to know that they exist.

Unsubscribe HTML

If you'd like to change the HTML that is displayed at the bottom of all bulk emails your can do so under:
Admin Tools > Communications > Communication Mediums > Email.
The default is to display a small Unsubscribe link at the bottom right of the email.

Mailgun Unsubscribe

To avoid having two Unsubscribe options at the bottom of your emails, be sure to check that your Tracking Settings in Mailgun itself are turned off.

Default Plain-text

If you do not provide a plain-text message, the recipient will see a generic message with a link to view the rich text email on your website. The contents of this generic message can be configured under:
Admin Tools > Communications > Communication Mediums > Email.
The default message is:

Unfortunately, you cannot view the contents of this email as it contains formatting that is not supported by your email client.  
You can view an online version of this email here:
<link to page>
        

Safe Sender Domains

Many email service providers have implemented new restrictive policies on emails that are sent from a person's account (e.g., yahoo.com) but did not originate from their email server. Because Rock sends email on behalf of others these emails can bounce in these situations. To prevent this, if an email communication is created with a From Address that is not in the Safe Sender Domains defined type, the Organization Email global attribute value will be used instead for the From Address and the original value will be used as the Reply To address.

You'll want to add all of your organization's email domains to the Safe Sender Domains defined type under:
Admin Tools > Communications > Safe Sender Domains.

Communication Lists

The Communication Wizard utilizes communication lists to send messages. Communication lists are kind of like the contact lists or groups you can set up in your own email and messaging apps. Rock's communication lists are simply groups of a specific type. For example, you could create a communication list of all small group members, or everyone registered for summer camp, or anyone serving as an usher. If you can create a group of it, you can create a communication list from it. Using groups as the basis for lists allows you to quickly identify and select recipients from the different areas of your organization.

Communications lists can be found in the Communication Lists screen, located at:
Admin Tools > Communications > Communication Lists.
Click the name of a list to view its members or modify its settings.

Communication Lists
Communication Lists

Rock ships with the following four lists:

  • Members and Attendees
  • Parents of Children
  • Parents of Youth
  • Sports Ministry

These lists are just samples to get your juices flowing and so you can see how lists should be configured. You can use them for your organization if you want, but you'll need to wire them up to sync with your data views. Because these lists are groups, you can add people to them manually...or you can use Rocks' group sync features to keep them automatically updated. To learn more, see the Group Sync chapter in the Rock Your Groups guide.

You can also create your own communication lists. In the Communication Lists screen, click the button to create a new list.

Communication List Detail
Communication List Add New

As you can see, the Communication List Detail screen offers a lot of options and flexibility for creating your communication list. To make your new list available to members viewing the Communication List Subscribe block on your external site, be sure to click the Public checkbox. (To learn more about that block, see the Communication Preferences section below.)

Next let's look at how to associate the list with categories and data views.

Communication List Categories

You can create categories to further identify and filter your communication lists. The Communication List Categories page is located at Admin > Communications.

Communication List Detail
Communication List Categories

Rock ships with one category, called "Public", but you can create as many categories as you want. For example, you could create a category called "Staff Only" to use when creating communication subscription blocks you want only to be available to staff members. Categories can have child categories as well. You can use communication list categories in a number of ways: for paring down the recipients in your communication lists, in creating subscribe/unsubscribe blocks in your organization's website, for creating data views to use when filtering communication lists... The more you use them, the more you're going to see how extensive they are. We'll be talking about communication list categories a little later in the Communication Preferences chapter.

Segments

Segments provide a way to select and filter your lists based on any field in the system. You can use data views to further pare down, or segment, who you’re communicating with in a particular list. They can be global to all lists or unique to a specific list. When using the Communication Wizard, after selecting a communication list, you can add any segments you want to use to filter that list. For example, if you only want the communication to be sent to members who are age 35 or older, you’d select the segments “Members” and “35 and Older”. (More on that in the next section.)

It's important that you think through your list strategy. A smart use of segments can cut down on the number of lists you will need.

Data views can be created, modified and deleted in the Communications Segments category of the Data Views screen, located at People > Data Views. For more information about data views, see the Filtering Using Data Views section of the Taking Off with Reporting manual.

OK, now for the fun part. Let’s look at how to actually use the Communication Wizard.

Communication Wizard

Rock's Communication Wizard works like other wizard models, with buttons that move you forward and backward through a series of screens. Let's walk through how to use the wizard to send a communication.

Sending a Communication Using the Communication Wizard

To begin a new communication, go to People > New Communication.

Recipient Selection
Recipient Selection

The Recipient Selection screen is the first screen of the Communication Wizard. Here you select whether the communication will be sent to Specific Individuals or to a List. If you arrive at this screen from a grid, the Specific Individuals tab will automatically be selected.

If you’re using a communication list (rather than selecting individual recipients), you can further segment that list by choosing options in the Segments section of the screen. Remember, segments are data views that can be modified. Read the Communications Lists section above to learn more.

After adding at least one individual, or after identifying the List you'll be using, you can view the intended recipients by clicking the View List button.

Click Nextto advance to the Communication Delivery screen.

Wait! I want to go back!

If at any point you want to return to a previous screen, click the Previous button.

Communication Delivery
Communication Delivery

The Communication Delivery screen is where you specify how and when to send the communication. If you want Rock to decide which format to send to a recipient based on their communication preference, select the Recipient Preference tab. Otherwise, you can choose whether to send the communication by email or SMS. You can also choose whether to send the communication immediately or set a later date and time to send it.

Note the Is The Communication Bulk toggle. Here is where you designate whether or not you're sending a bulk (or group) communication. When you select "Yes", Rock automatically includes a link for the recipient to unsubscribe from the list associated with the communication. You can change the default for this option in the block settings.

Click Nextto advance to the Communication Template screen.

Communication Template
Communication Template

Now it's time to select the template you want to use to create your communication. You can imagine how, after you’ve created a number of templates, having a Template Image Preview (i.e., thumbnail) will help you easily locate the template you want. You can also use the Category Filter dropdown to help you locate your template. If you don’t see a template listed, you may not have permission to use it, or it might not be set up for use with the wizard. You can learn more about template security and support in the Email Template Survival Guide.

After selecting your template, click Next to advance to the Email Summary screen.

Email Summary
Email Summary

The Email Summary screen is where you specify the sender, the sender email address, the subject, and any files you want to attach to the message. Click Show Additional Fields to also specify a reply-to address, CC list, and BCC list.

Click Next to advance to the Email Editor. (Note: if your communication will be sent by SMS only, the wizard will skip this screen.)

Email Editor
Email Editor

Here’s where things get really fun. The Email Editor is a drag-and-drop visual email composer. This is where you configure the layout, images, text, buttons, etc., of your communication.

To add an element, simply drag it from the buttons bar to where you want it to be in your message. Notice that when you drag an element over a section, that section lights up with a yellow border. A transparent image of the element also helps to show where you’re placing it.

After placing an element, you can edit it by clicking on the section it's in. The options associated with that element are displayed on the right side of the screen. Notice that the section you’re editing is highlighted with a red border, and you can view your changes in real time. When you’re done editing the section, click Complete. If you decide you don’t want that element after all, click Delete.

At any point while working in the Email Editor, you can send a test email to yourself by clicking the Send Test button. Click Preview to see both desktop and mobile previews of your design. Click Save to save a draft of your email.

We should pause a moment here to note the RSVP button, indicated by the icon. This element is used to send RSVP requests to groups, and it requires some setup in advance. For full details check out the Group RSVP section of the Rock Your Groups guide.

When everything is set up and looks the way you want, click Nextto go to the Mobile Text Editor screen. (Note: if your communication will be sent by Email only, the wizard will skip this screen.)

Confirmation
Mobile Text Editor

The Mobile Text Editor is similar to the Email Editor. This is where you design how your SMS message will appear. On the right side of the screen you can see a preview of how your message will look. You can incorporate merge fields and images to personalize and customize your message.

You can also send a test text to yourself by clicking the Send Test button. Click the Save button to save a draft of your text.

When finished setting up the mobile version, click Nextto go to the Confirmation screen.

Confirmation
Confirmation

This is the Moment of Truth. Are you ready to send the email? If so, click Send. If you’re not quite ready, you can save your communication for later by clicking Save Draft. Your communication drafts are located in the Communication History screen. You also have the option of changing your communication delivery time in this screen. Click Edit in the blue alert message to change your delivery options.

After clicking Send, the communication is sent to the communication queue.

Communication Queue
Wizard Complete

To immediately view the communication’s analytics, click the View Communication link. See Communication Analytics to learn more.

To turn around and send the same communication to a different list, click the Copy Communication link. This will take you back to the beginning of the Communication Wizard, keeping the settings and design options of the original communication.

Pretty cool, right? With the Communication Wizard, you’re going to be rocking email and SMS messages in no time.

Simple Email Editor

Rock’s previous, non-wizard communication system (aka, Simple Email Editor) is still available. You may find it useful for volunteers to use to send individual or simple communications. Here’s what you should know about using the Simple Email Editor.

Sending a Communication Using the Simple Email Editor

There are a lot of ways to start a new communication. The most popular one is to click the button at the bottom of any grid of people. This will take you to the New Communications page and add all of the individuals from the grid to the communication as recipients. This is really powerful when used with Data Views and groups pages. If you prefer you can also start a new communication from People > New Communication and enter your recipients by hand.

Tip: Hide the New Communications Button

If a person does not have view access to the New Communications page the button at the bottom of the grid will be hidden.

Once on the New Communications page, you’re ready to start crafting your message. We'll walk through each section of this page highlighting some of the features you have at your disposal.

New Communication
New Communication
1Selector
Email is the default communication medium, but this can be updated from the communication selector at the top of the page.
2Recipients
The recipient list will be filled with all of the people you previously selected as recipients. You can also add and/or remove names from the list at this point. Don’t forget that if you started with a blank communication you'll need to enter all of the names manually. You may notice that some names are in red. These names either do not have an email address or have been marked as not wanting emails or bulk emails.
3Bulk Option
Determine if this message should be treated as a bulk email. Bulk emails will have the unsubscribe link added to them. They will also not be sent to people who have asked that they not receive bulk emails from your organization.
4Template
If you would like to use a previously created email template you can select it here. For more information on creating templates see the Email Template Survival Guide. This page can be set with a default template. Out-of-the-box this will show your organization’s header and footer with the sender's signature.
5From
Fill in the email address that you would like the email to be sent from. By default, your contact information will be input, but you can change this as needed.
6Reply to Email
You might want replies to go to a different address than the one you're sending from. For example, when you send emails from the organization's leader, you may want the replies to go to an administrative assistant.
7Attachments
You can add any number of attachments you want to the email. Why limit a good thing?
8Subject
Next, enter the subject of your email. A well-written subject can greatly increase the response rate of the email. Here are a few tips: provide context for the content of the message and a hint about the organization sending it. Remember to focus on catching the eye of the reader. You can use Lava merge fields in your subject line so by all means, be creative.
9The Message
Now the fun part: your message. While you can enter any generic message in this box, consider personalizing your message using merge fields. The message editor has a button {} for selecting a merge field to add. Personalization is one of Rock's main strengths so be sure to use it to its fullest.
10Delay Send
If you'd like you can delay the sending of your message to a date and time in the future. What a timesaver!
11Test
Before sending the email it's wise to send a test. Using the Test button will send the contents of the email to the currently logged in user. The first recipient will be used to process any merge fields in the email.
12Draft
Finally, you can send the communication or save it as a draft to be completed later. This draft will be available to complete from Tools > Communication History. Take the time to get it right!

Resolving Relative Links

By default Rock will convert relative URLs in links and images to absolute URLs using the Public Application Root global attribute.

Approvals

As your organization grows, you'll find an increasing number of people sending large emails. Chances are good that not all of them understand the intricacies of your communications strategies. Rock has just the thing to help you maintain quality in growth – approval settings for emails that are sent to a large number of people.

Approving Emails

By default, emails that are sent to 300 or more recipients will require approval. This number can be changed by configuring the block settings of the Communication block.

When an email requires approval, its status will be set to Pending Approval and members of the RSR - Communication Approvers group will receive an email. Note that this is the only group that will receive the approval emails.

A communication will not be sent until it's approved by a person with approval access. By default these are the RSR - Communication Administration and RSR - Communication Approvers roles. Before a communication is approved these roles have the ability to edit the communication to ensure it meets the standards of your organization.

Any individual with approval access can view a complete list of communications waiting for approval from the Communication History page. The filters on the Communications List block allows approvers to view communications from anyone in Rock, with additional filters for status.

Additional security roles can be added to approve communications by adjusting the block security of the Communication block. Simply add them to the Approve permission of this block.

Approver Notification Emails

As of Rock v11.1 you can make changes to the email approval notification. By default, the System Communication for approval emails is Communication Approval Email. Just like other communications, you can customize the content of your approval notifications to suit your needs.

Email Only

The approval notification communication only works with emails and cannot be used with the SMS or Push features.

If you need to take it a step further, you can use an entirely different template for these approvals. Simply go to Admin Tools > Communications > Communication Settings and select the template you want to use instead. This feature is available as of Rock v11.1.

Communication Settings
Communication Settings

Communication Preferences

Rock's communication tools provide powerful functionality not only to senders but also those receiving communications. Recipients can control not only which communications they receive but also how they receive them. Let's look at how Rock handles communication preferences.

Communication List Subscribe Block

Rock ships with the Communication List Subscribe block ready for you to use in both your internal and external sites. You can view the block's details in the Block Type Detail screen located at Admin Tools > CMS Configuration > Block Types. When placed on a page of your site, this block will display the communication lists a person is subscribed to. For example, here's how the block might look on a Subscribe page of an organization's external site.

Sample Subscribe Page
 Sample Subscribe Page

In this example, the block shows the three communication lists that ship with Rock: Parents of Children, Parents of Youth and Sports Ministry. If a person were subscribed to additional lists unique to your organization, they would be displayed here as well.

You can further configure the Communication List Subscribe block in the block settings. This is one area where Communication List Categories come into play. You can specify a category in the block settings if you want the Communication List Subscribe block to target only a particular segment of the communication lists.

Communication List Block Settings
Communication List Block Settings

Here you can see the block settings of the Communication List Subscribe block of that same Subscribe page. The Communication List Categories dropdown shows the available categories. Remember, the "Public" category ships with Rock, but you can create as many categories as you want. Whichever categories you select here will affect the functionality of the Communication List Subscribe block. For example, you could select Staff Only to display lists only available to staff members. If you don't select a category, Rock will display all of the lists the person is authorized to view.

Now let's look at how a person interacts with the Communication List Subscribe block to set their communication preferences.

Setting Subscription Preferences

There are two ways a person can access and set their communication preferences: by logging in and navigating to a subscribe page, or by clicking an unsubscribe link that takes them to an email preferences page. Let's look at the subscribe page option first.

Setting Preferences in a Subscribe Page

When a person logs in, the Communication List Subscribe block is made available for them to set their communication preferences. If that block is placed on a Subscribe page, as shown in the earlier screenshot, they can select which lists they want to subscribe to, and choose which format they want the messages they receive to be in. To subscribe to a list, simply check the box beside the list's name. To unsubscribe, uncheck the box. To set a delivery preference, simply click which you want to receive: email or SMS. Super easy, right?

Communication Wizard and Delivery Preference

The Communication Wizard uses the preferences set using the the Communication List Subscribe block. So, when sending a communication using the wizard, if you choose the Recipient Preference option in the Communication Delivery screen, the wizard will check which preferences a person has set and send the communication accordingly.

The Communication List Subscribe block works the same way for the internal pages of your organization's site as well. You can create subscribe pages available only to staff members or others where they can set their communication preferences. For example, you can set up an employee resources page with an email preferences zone containing the Communication List Subscribe block.

Sample Employee Resources Page
Sample Employee Resources Page

Setting Preferences from an Unsubscribe Link

The other way a person can access and set their communication preferences is by clicking on an unsubscribe link in an email or SMS message.

The US government's CAN-SPAM act requires that all "bulk" emails have an unsubscribe link. Rock automates the insertion and processing of these links for you. Here are a few things you'll need to know about how this process works.

  • When you send a bulk communication using the communication wizard, Rock automatically includes an unsubscribe link in your message, but you can place the unsubscribe link anywhere by using the merge field: [[ UnsubscribeOption ]].
  • If you do not provide this merge field when using the Simple Email Editor, the link will be added for you at the bottom of your email (*evil laugh*).
  • You can modify the format and destination of this link on the Email Medium
    Admin Tools > Communications > Communication Mediums > Email.
    If you blank out this field, then no link will be added to your message. Think about it before you simply delete it. Friendly senders should provide a way to opt-out of messages.

Below is a view of the page that is displayed when someone clicks an unsubscribe link.

Unsubscribe Page
Unsubscribe Page

The unsubscribe block on this page allows you to customize the wording for each of the options on the page. If you want to add more reasons for the "I no longer attend" option, you can do that under
Admin Tools > General Settings > Defined Types > Inactive Record Reason.
The block also allows you to suppress any reasons that might be awkward in this context (e.g., Deceased, No Activity).

Here’s a quick overview of each of these options is below:

  • I'm still involved and wish to receive all emails. This doesn't unsubscribe them from anything. In fact, if they had currently unsubscribed, it would undo that preference.
  • I'm still involved but don't want to receive mass emails. This will keep the email address active in the system but will remove them from receiving bulk emails.
  • I'm still involved but don't want to receive any emails. This will inactive a person's email address inside Rock. You will still be able to see their address but they will not receive any emails.
  • I'm no longer involved. This will inactivate the person's record in the database. They will be asked to select a reason and have the option of providing more information.

A Note About the Email Preference Page

If a person is logged in when they view the Email Preference page, any communication lists they're subscribed to will be displayed beneath the first "I am still involved...and wish to receive all emails" item.

Communication History and Analytics

Communication History

You can view a history of the communications you've sent under People > Communication History. The list of communications can be filtered based on a variety of data elements, like type, status, content, etc.

Communication History
Communication History

See the Bigger Picture

Those with Administrate permissions on this block will be able to see every communication in the system and can filter by a specific person.

Viewing Analytics

When you click a communication from the Communication History list, Rock displays a page showing the status of the message along with any analytics that are available. This is where using one of the email service integrations like Mailgun can provide a ton of value.

With services like Mailgun you can see how many people have opened your message and even which links they've clicked. This gives you a much broader understanding of how well your message was received and what calls to action were engaged. To learn more about Mailgun, see the Integrations chapter below.

Communication Analytics
Communication History - Analytics
1 Status States
Analytics are shown for each state that a message could be in. The number and types of states is dependent on the transport that you used. The states pictured above include:
  • Pending - The communication has been saved or queued but hasn't been sent yet.
  • Delivered - The communication has been sent to the appropriate destination server. For email communications this does not mean that it necessarily reached the person's inbox, just that it made it to the recipient's email server.
  • Failed - The communication did not reach the recipient. This could be from a bad email address or a hard bounce.
  • Cancelled - This state is used when a communication has been cancelled by the sender.
2 Analytic Graph
This graph shows the number of opens, clicks and unopened messages over time. As emails are opened you should expect the number of unopened messages to go down while the number of clicks (hopefully!) goes up.
3 Actions
The Actions section gives you lots of information at a glance, making it easy to monitor overall activity.
4 Clients
Services like Mailgun can identify which email clients are being used by recipients to view your email.
5 Popular Links
In addition to knowing the number of clicks, progress bars at the bottom of the page let you know which links are being clicked and how frequently.

Email Analytics

If you want a wider view of these types of analytics for emails, go to People > Communications > Email Analytics. There you can view analytics for all emails within a specified time period.

Viewing Message Details

This page shows you details related to the communication itself. Reviewing things like the subject of an email or the phone number used to send a text message can be helpful both for sent messages and for future communications that are pending.

Communication History - Message Details
Communication History - Message Details
1 Created By
The name of the person who created the communication, and when it was created, will be displayed here.
2 Approved By
After a communication has been approved you can see who approved it and when the approval took place.
3 Communication Details
Specifics about the communication, including the From Name, From Address and Subject, are displayed here for reference. For text messages, the number that was used to send the text will be displayed.
4 Message
The contents of either the email or SMS message will be displayed for reference.
5 Originated from this page
If the communication originated from a list block, such as those associated with data views or small groups, clicking this link will take you to that page.
6 Cancel Send
If the communication is scheduled to go out in the future, you can cancel it from here by clicking this link. This function is not available for communications that have already been sent.
7 Copy Communication
Often times you will want to resend a similar communication. Using the Copy Communication link will create a new communication with the exact settings used for the communication being viewed. It's important to note that the recipient list will be exactly the same. If the initial communication was sent from a dynamic list of people (like a Data View) it will not re-run the list.

Viewing Activity

This area lists activities for the communication. Depending on the transport used, you can see every time the message was opened by a recipient and every link inside the communication that was clicked.

Communication History - Activity
Communication History - Activity
1 Date
The date and time on which the activity occurred are displayed for reference.
2 Person
The person who took the action is provided as a link that takes you to their Person Profile page.
3 Activity
The specific action (e.g. Opened, Click) that the person performed is shown here. You can sort the list by activity to group actions together.
4 Details
Details related to the activity are displayed here. If the person clicked a link, the link’s URL will also be displayed.

Viewing Recipient Details

Details about the individuals who received the email can be viewed here. This is great for accessing and analyzing easily customizable sets of information about communication recipients.

Communication History - Recipient Details
Communication History - Recipient Details
1 Person Properties
Select one or more person properties and click the Update button to have those properties displayed in the grid. You can then sort the communication recipients according to the selected properties.
2 Person Attributes
Like the person properties, you can select one or more attributes to display in the grid. From allergies to t-shirt sizes, you can add as many as you need.
3 Filter Options
You can filter results based on a wide variety of options related to the communication and to the recipient. You can even filter by name to view details for an individual or a family.
4 Recipient Detail Information
This area will show the person’s name and general information related to the communication itself. As described above, columns can be added according to any properties and/or attributes you’ve selected.

System Communications

System Communications (formerly known as "System Emails") are communication templates that are used by Rock to send very specific messages. Typically these are automated communications, such as the message someone receives when they've forgotten their password and requested to reset it.

System Communications can be used with either emails or SMS messaging. While Rock sets these up to look professional from the start, you may want to modify them to match your organization's branding. You can edit these communications under Admin Tools > Communications > System Communications.

System Emails and System Communications

With the addition of SMS messaging configuration, System Communications replaces what was formerly known as System Emails. Current versions of Rock will have both areas available, but System Emails has been renamed to System Emails (Legacy) to help distinguish between the two. If you're using any Rock Shop plugins related to communications, you may need to maintain templates in both places until the plugin can be updated to reference System Communications instead of System Emails.

Integrations

Email: Mailgun

We've already touched on just how great we think Mailgun is, but let's dig deeper into the benefits of their service.

Note:

We are not in a business partnership with Mailgun, nor do we receive any form of compensation from them. We are just passing along helpful tips about some quality products and services we’ve discovered along the way. While Rock ships with the Mailgun transport, other integrations and plug-ins may be available in the Rock Shop.

Mailgun is an email delivery service that provides several advanced features. Mailgun is operated by the popular web hosting company Rackspace and is used by numerous online businesses like Stripe, Github, Lyft, Slack and many many more. While Rock can use any SMTP mail server to deliver its emails, we think you'll find that using a service like Mailgun is more than worth the small cost. The main benefits of Mailgun are:

  • Improved deliverability of your emails through advanced reputation features like SPF records, domain-keys and reputation monitoring. If all of this sounds greek to you, don’t worry, they handle all of the technical details. You just need to know that they know what they're doing so you don't have to. Whew!
  • Email analytics that help you keep track of trends. Through Mailgun, Rock can show you how many of your emails made it to their destination and, even more importantly, how many were opened and internal links clicked. All of this happens for you behind the scenes so you can just sit back and view the reports.
  • Not all email addresses work. Mailgun can notify you about incorrect email addresses so you can follow up. These bounced emails will be reported and the person’s profile will be flagged to show the incorrect address.
  • Mailgun also offers to inline your emails for you as you send.

Costs

As of this writing, Mailgun has a free starter package that generously gives you 5,000 emails a month for your first three months. After that you can pay by the number of emails you send, or purchase a different plan. For full details and up-to-date pricing visit their website. In our experience, Mailgun's pricing has been very competitive and their features are among the best in their class.

While the starter package will save you money, keep in mind that you will be given a shared IP address with other organizations. In addition to sharing that IP address, you'll share their reputation, and in some cases, their blacklist. If you find that your emails are not always getting through, or if you want to be on the safe side, you might consider purchasing a plan with a dedicated IP address. And if you've already found yourself on a blacklist, Mailgun has provided documentation about blacklists and how to follow up with their support in the event that you find yourself on a blacklist.

Setting Up Mailgun

Mailgun has spent time making their service easy to configure. Follow the steps below to enable and configure a new Mailgun account for Rock.

  1. Sign up for a new account on the Mailgun website.
  2. Setup your domain. Mailgun will walk you through the DNS changes that need to be made to ensure the best delivery and spam protection.
  3. Once setup is complete, head to the main Dashboard page in your Mailgun account to start collecting what you’ll need to get Mailgun set up with Rock.
    1. In the box near the bottom-right of the Dashboard page, click on the ‘API Keys’ link. Note the Private API Key, which can be made fully visible by clicking the eye-shaped icon.
    2. Next, head back to the Dashboard and scroll the bottom to see a list of your domains. Click the ‘Domain settings’ link for a domain. On the new page click the ‘SMTP Credentials’ tab.
    3. Under the ‘SMTP credentials’ heading, note the Login and password. You might need to reset the password.
    4. On the same page, below the Login information, note the value under ‘SMTP Settings’ (e.g. smtp.mailgun.org).
  4. Take a breather! You're almost done... The last step is to configure the webhooks in the Mailgun admin portal. To do this select 'Webhooks' from the navigation and put the following address into all of the events under "Webhooks".
    https://[yourserver.com]/webhooks/Mailgun.ashx
  5. Mailgun Webhooks
    Mailgun Webhooks

    Here's what your webhooks screen should look like once you've got it configured in Mailgun.

    (Long-time users of Rock and Mailgun may find that Mailgun has automatically migrated their webhooks to the "Legacy Webhooks" section. That configuration will also work for as long as Mailgun supports the legacy format, but presumably Mailgun will discontinue that at some point in the future - so it's probably best to move the addresses to the "Webhooks" section as shown).
  6. Let's head back to your Rock server. First, let's enable the Mailgun Transport under
    Admin Tools > Communications > Communication Transports > Mailgun.
    Start by checking the Active checkbox. Next provide the values from Step 2 above..
  7. Last step and we're done. Now that the email transport is configured, we need to tell Rock to use it for the email medium under
    Admin Tools > Communications > Communication Mediums > Email.
    Select Mailgun SMTP under Transport Container.

SMS: Twilio

Twilio is the leading SMS provider. Period. They not only provide the best service but they are also one of the least expensive options available. Again, we don’t have a relationship with this organization, but we do know a good thing when we see it! Below are instructions on setting up this service for Rock.

  1. From the Twilio website click the sign-up link, then provide your account information. You'll then need to verify that you have a pulse by typing in a verification code they text to you. Finally, select a phone number to tie to your account and proceed to your account information.
  2. On your account page note your Account SID and Auth Token. You'll need this for Step 5 below.
  3. In order to receive replies from your SMS messages you'll need to provide a 'callback' (aka webhook) address for your SMS number. This tells Twilio how to tell Rock when this event occurs. You can set by clicking 'Numbers' from the main menu, selecting the SMS number you wish to configure, then adding the URL format below to the 'Messaging Request URL'.

    https://-yourserver-/Webhooks/Twilio.ashx

    SMS Pipeline

    To set your number up for the SMS pipeline, use the 'Messaging Request URL'
    https://-YourServer-/Webhooks/TwilioSMS.ashx?SmsPipelineId=-YourPipelineId-

    Configuring the Twilio Webhook
    Configuring the Twilio Webhook

    Make It Accessible

    It's important that this address be accessible from the Internet so Twilio can access it.

  4. Before you can actually use Twilio for real communications, you'll need to upgrade from the free trial.
  5. From Rock navigate to
    Admin Tools > Communications > Communication Transports > Twilio.
    Enter in your Account SID and Auth Token and activate the transport. Click Save when done.
  6. Next set the Twilio transport as the default transport for the SMS medium under
    Admin Tools > Communications > Communication Mediums > SMS.
  7. Finally, add your Twilio phone number under
    Admin Tools > Communications > SMS Phone Numbers.
    You can add as many Twilio numbers here as you wish. Be sure that the phone number is in the Value field and that it is in the format of “+15555555555” (or similar for international numbers). You also must set a response recipient to get all of the replies to these numbers. Be sure the individual you select has a valid SMS phone number on their record.

That's it! Now you’re set to send SMS messages from the Rock communications features.

Twilio's Impact Access Project for Non-Profit Organizations

Twilio offers a $500 kickstart credit to non-profit organizations. To learn more, visit www.twilio.org.

Twilio, Short Codes and MMS Messages

If you're using a Twilio short code, keep in mind that it doesn't automatically support MMS messages. You can add MMS capabilities for a one-time fee of $500. This is different than regular "long codes" (phone numbers) where MMS is usually automatically supported.

If you're not sure whether your account supports MMS messaging, check your Twilio Console. If you only see "Capabilities: SMS" and MMS is not listed then it's likely you haven't purchased MMS for your short code.

Email: Google Apps

This techincally isn't an integration as much as tips for configuring SMTP Relaying for Google Apps. The basic steps are covered in this link from Google https://support.google.com/a/answer/2956491?hl=en. A couple of tips are below.

  • The link above notes you will find the relaying settings under the 'Apps' menu setting. That setting appears to have been moved. Instead search for 'SMTP Relay' in the admin search.
  • We've found success with the following Google Relay options.
    1. Allowed Senders: Any Addresses
    2. Authenication: Require SMTP Authenication
    3. Encryption: Require TLS encryption
  • On the Rock side use the following SMTP settings.
    1. Sever: smtp-relay.gmail.com
    2. Port: 587
    3. Username: The admin account username
    4. Password: The admin account password
    5. Use SSL: Yes

Email: SendGrid

SendGrid is another supported Transport you can use in Rock. Like the other options described above, be sure to evaluate each service before deciding which is the best fit for your organization’s needs.

Most of the configuration you’ll need to do will be with SendGrid. You can learn more and get started for free by visiting https://sendgrid.com/. After you’re set up with SendGrid, you’ll need to provide the following in Rock:

  • Base URL: The default URL https://api.sendgrid.com should work in most cases. You can change this if needed based on your setup in SendGrid.
  • API Key: SendGrid will provide this when you’re set up with their service. This is required for Rock and SendGrid to communicate.

Like other Communication Transports, you can also choose whether SendGrid should track email opens, clicks and unsubscribes. Note that Rock only supports HTTP/S (and not SMTP) for SendGrid.

Setting up SendGrid

The first step will be getting your API Key. Log in to your SendGrid account and navigate to Settings > API Keys. Click the button for Create API Key.

Create API Key
Create API Key

We recommend giving Restricted Access permission. Also, make sure Mail Send is assigned full access as pictured below.

API Key Configuration
API Key Configuration

Be sure to copy the API key when it is presented to you. SendGrid warns that you won’t see it again, and that's true. If you lose the key you’ll have to create a new one.

Once you’ve got your API key, you’ll need to add it to Rock. Inside Rock, navigate to Admin Tools > Communications > Communication Transport and add the Base URL and your API Key as pictured below.

Communication Transport
Communication Transport

Next, you’ll need to update the Communication Medium configuration in Rock. Navigate to Admin Tools > Communications > Communication Mediums and access the Email entry. Change the Transport Container to the SendGrid HTTP transport configured in the prior step.

Communication Medium
Communication Medium

With the above configuration in place, head back over to SendGrid to set up the Event Webhook. You can access this in SendGrid under Settings > Mail Settings > Event Settings. Click the pencil icon for the Event Webhook row to access its settings.

Edit Event Webhook
Edit Event Webhook

The Event Webhook settings in SendGrid will look like those pictured below. The HTTP Post URL will be formatted as shown, with your Rock URL followed by Webhooks/TwilioSendGrid.ashx. Twilio owns SendGrid, so don’t be concerned about the Twilio part of the webhook.

Event Webhook Configuration
Event Webhook Configuration

Note that Processed and Deferred currently have no functionality in Rock and can be left disabled. Be sure that the Event Webhook Status is set to Enabled before saving.

To track opens and clicks, you’ll want to enable those Tracking options in SendGrid. Under Settings click on Tracking to enable these options by clicking the pencil icon. The example below shows what the page will look like after open and click tracking has been enabled.

Tracking Settings
Tracking Settings

Lastly, add your information to the Sender Authentication settings. This helps with deliverability. An example of the setup is pictured below, but if you’re not sure what you need there’s a helpful link at the top of page.

Sender Authentication
Sender Authentication

Don’t be discouraged if your emails aren’t popping into inboxes right away. There are a variety of factors that can cause delays ranging from a few minutes to several hours. You can click on the Activity menu item in SendGrid to search for emails you’ve sent and view details on what may be holding them up. Be patient, because sometimes there’s a delay between sending an email and seeing it in the Activity list.

Improve