This page is a reference for 3rd party developers interested in adding the PlusLink Plugin to a pregnancy center's web site.

Requirements

The following requirements must be met to use the PlusLink Plugin

  • Online appointment scheduling via the PlusLink Plugin is only available for pregnancy centers that use the eKYROS CenterPiece database.
  • The pregnancy center must be registered with the eKYROS call center in PlusLink. This is done within the CenterPiece database.
  • Once registered, the center will receive an API Key and Registration Key from eKYROS personnel. This information is used to configure the plugin to display timeslots for the center.
  • The center can then share this information with their web site vendor to configure the plugin on their web site.
  • Sample Html and Javascript templates are provided below demonstrating how to bootstrap (launch) the plugin from a web site.

Basic Template

This is a basic template that displays the Plugin inline within a page. No bootstrap or jQuery required. It should work on most web sites by just cutting and pasting the code. Run Demo

Html Template

    // put the iframe within the body tag of your html page.

    <iframe id="pluginFrame" src="https://pluslinkplugin.ekyros.com" style="width: 100%; min-height: 800px;" frameborder="0"></iframe>


Javascript Template

<script>
    window.addEventListener('load', function() {
                
        // Get reference to iframe contentWindow
    
        var f = document.getElementById("pluginFrame").contentWindow;
                
        // configure data for plug-in.
        // type:        message type should always be 'ekyros'
        // apiKey:      Identifies Call Center
        // regKeys:     array that identifies 1 or more office locations for a pregnancy center.
        // themeColor:  specify a primary color used by the plug-in.  This is (optional) param, leave blank for default 'blue' color. 
        //              accepts hex value or named color.
        // waitTimeInMinutes: (optional) specifies duration (in minutes) before the user can create another appointment.  Default is 30 minutes.
        
        var data = {
        "type":     'ekyros',
        "apiKey":   '41301EE0-560C-45B3-BC89-CD32C1B2EE36',
        "regKeys":  ["CB124A4C-7679-4F96-84C9-87CEA27F8891",
                    "066B9A8A-872C-4E42-8F0A-09F6551B209B",
                    "37431EB3-CE82-4FA6-8587-BF1E1A27C8AA"],
        "themeColor": '#86A149',
        "waitTimeInMinutes": 30
        };
                
        // post message to plug-in running in iframe with config data.
        // Param1: Config data for Plug-in
        // Param2: Secuity requirement.  Must be origin (domain) used in iframe SRC attribute.
    
        f.postMessage(data, "https://pluslinkplugin.ekyros.com");
});
</script>

Bootstrap 4 Template (Advanced)

This template is based on Bootstrap 4. Warning! Some experience required. This requires bootstrap 4 scripts and css to be installed on your web site. NOTE: This example loads the plugin in a bootstrap 4 DIALOG. Don't just copy and paste the code.

Html Template

<div id="myModal" class="modal fade" backdrop="static" tabindex="-1" role="dialog">
    <div class="modal-dialog modal-lg" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title">Schedule an Appointment</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
            </div>
           
            <div class="modal-body">              
                <iframe id="modalFrame" src="https://pluslinkplugin.ekyros.com" style="width: 100%; min-height: 500px;" frameborder="0"></iframe> 
            </div>

            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
            </div>
        </div>
    </div>
</div>

Javascript Template

<script>
    (function () {
                
        // Always initialize the plug-in when the dialog is displayed!!!
        
        $("#myModal").on("show.bs.modal", function () {
                
            //get reference to iframe contentWindow
            
            var f = $('#modalFrame')[0].contentWindow;
                
                    // configure data for plug-in.
                    // type:        message type should always be 'ekyros'
                    // apiKey:      Identifies Call Center
                    // regKeys:     array that identifies 1 or more office locations for a pregnancy center.
                    // themeColor:  specify a primary color used by the plug-in.  This is (optional) param, leave blank for default 'blue' color.
                    //              accepts hex value or named color.
                    // waitTimeInMinutes: (optional) specifies duration (in minutes) before the user can create another appointment.  Default is 30 minutes.
                
            var data = {
                "type":     'ekyros',
                "apiKey":   '41301EE0-560C-45B3-BC89-CD32C1B2EE36',
                "regKeys":  ["CB124A4C-7679-4F96-84C9-87CEA27F8891", 
                            "066B9A8A-872C-4E42-8F0A-09F6551B209B", 
                            "37431EB3-CE82-4FA6-8587-BF1E1A27C8AA"],
                "themeColor": '#86A149'
            };
                
            // post message to plug-in running in iframe with config data.
            // Param1: Config data for Plug-in
            // Param2: Secuity requirement.  Must be origin (domain) used in iframe SRC attribute.
            
            f.postMessage(data, "https://pluslinkplugin.ekyros.com");

        });
    })();
</script>
            

Register a Callback Function

There may be times when you want the parent page to receive a notification from the Plugin when an appointment has been created. For example, you may want to redirect to a custom 'thank you' page on your site. You can easily accomplish this by registering a custom javascript function with the Plugin.

Javascript Template
<script>
    window.addEventListener('load', function() {         
     
        // Add the following block of code to the bottom of the basic javascript
        // template listed above, right below the f.postMessage() line.   
    
        window.addEventListener("message", function(e) {
      
            // security check.  make sure data type is from ekyros
            if (e.data.type == "ekyros") {
      
                // your custom javascript handler here 
      
                window.location.href = 'my-custom-web-page';
            }
        });

    })();
</script>

FAQs

Yes, a web site visitor can schedule 1 appointment per hour from the same device. If multiple attempts are made within an hour, the Plugin will return a friendly error message stating they need to wait a little longer before they can book another appointment.
Yes, see the "themeColor" option under the javascript code section.
Not at this time. The Plugin shares the same field definitions as the PlusLink Scheduler. The PlusLink Scheduler is used by helpline operators from OptionLine and Options United to book appointments for centers over the phone. Both schemas must match.
The intent is to display 1 or more locations for a *single* pregnancy center from their own web site. However, there isn't any technical reason why the Plugin cannot display locations for a group of centers in a specific regional area.
Not from within the Plugin. However, the center is notified of the new appointment within minutes of it being booked. As a best practice, many pregnancy centers use the CenterPiece Scheduler to send text reminders to clients for appointment confirmation. Here the client can easily respond with a request to re-schedule.
Yes. A pregnancy center can (and should) register with all Helplines in PlusLink, in addition to using the web site plugin. This will help drive client referral traffic to the center increasing the opportunity to save more lives! The PlusLink platform ensures timeslots are not double-booked between helpline operators, and the web.

Yes, we provide support. No, we don't charge for support.

If you are a 3rd party web site developer needing help, contact us by phone or email (below). We'd be happy to help you out!

If you are a pregnancy center, please call your dedicated eKYROS account manager.

Yes, but you will need to purchase a subscription to the CenterPiece database. Appointments from the PlusLink Plugin automatically download directly into the CenterPiece Scheduler. If you are interested in learning more about CenterPiece and eKYROS please contact us at sales@ekyros.com or check out our web site at www.ekyros.com.