Getting Started

Notes to connect your PC or GI cluster to the Marketplace

One of the most exciting things about the new 2600Hz Marketplace is how simple it is to get started. This guide will walk you through setting up your existing 2600Hz Private Cloud or Global Infrastructure cluster in order to purchase and deliver applications.

"Linking your cluster" is a one-time process that synchs your 2600Hz account and cluster with the Marketplace in order to automate the delivery process when you purchase apps. KAZOO version 5.1 and up features a lightweight module that lives on your cluster and talks to a centralized application server. Together, they facilitate the delivery of applications to your cluster. 

Linking is the process of manually authorizing your cluster to talk to the application server. Once the link has been completed, you will be all set to purchase applications from the Marketplace and deliver them to your cluster! 

Prerequisites to Link Your Cluster

In order to link your cluster, there are a few prerequisites you will need when you’re ready to link your cluster. The two primary prerequisites are: 

  • You must be using KAZOO 5.0 or above
  • You must be the Superduper Admin for the ClusterYou can only link one KAZOO cluster to your Marketplace account.

Some valuable things to note

  • You can only link one KAZOO cluster to your Marketplace account.
  • In a KAZOO cluster, a Superduper Admin is any admin user that belongs to the top-level account in an account tree. The Superduper Admin is created during KAZOO setup, and is the entry point for cluster administration, including things such as making sub-accounts. Certain APIs and UI features require that the requesting account be the Superduper Admin. See the very bottom of this page to find out more about what a Superduper Admin is.

The Connection Details

Linking your cluster requires you to pass information between just two places: your account on the 2600Hz Marketplace, and your KAZOO account in MonsterUI. The process is as simple as passing an access token generated in the Marketplace and copy-pasting it to the Marketplace Connector in your KAZOO account.

Part 1: Generate an Access Token via the Marketplace and select copy

To generate the required access token, you'll need to first log in to the Marketplace.

Step 1: Log in using your ZSwitch account

Navigate to marketplace.2600hz.com and select “Log In” at the upper right.           
If you already have an account with 2600Hz, you can use your existing credentials. If you are planning to buy and deliver apps to a cluster, ensure that you log in using the Superduper Admin account for that cluster.

Step 2: Access your account settings

Once you’ve logged in, you can access your account by clicking on your account name in the top right corner. From the dropdown, click on “Manage Account.”

Step 3: Click on Manage Account

You will see a screen that will either display information about your linked cluster, or a button prompting you to complete the cluster link if you have not done so already.

 

Step 4: Generate an Access Code

For an account that has not linked a cluster yet, you’ll need to click Link My Cluster to get started.

Upon clicking Link My Cluster, you'll be greeted with the necessary steps to complete the cluster link.

Part 2: Log In to your KAZOO account and paste your access code 

Once you've generated your access token, the next step is to paste that token in your MonsterUI portal to complete the cluster link.

To paste your access code and link your cluster:

  • Navigate to your cluster’s MonsterUI portal and log in with the Superduper Admin account.
  • Select the Apps grid icon from the top bar in MonsterUI. Then click App Exchange in the bottom left of the screen.
  • On the bottom of MonsterUI’s App Exchange sidebar, click on Marketplace Connector. Click Enable Marketplace Connector to continue.

Below is what the home screen for the App Marketplace looks like if you have logged in as a Superduper Admin. NOTE: If your screen does not display the Marketplace Connector button, then you are not logged in correctly. Please check with the cluster's administrator.

Once you click the Enable Marketplace Connector button, you will see this screen:

 

  • Paste the Access Token in the Access Code dialog box provided. Then, enter a cluster name in the provided dialog. This can be different than your KAZOO cluster name, as it is just a vanity name for your cluster that is displayed under your Marketplace account.
  • Refresh this page. This page should also refresh automatically in a few moments after you have completed linking your cluster in your MonsterUI portal.

The Final Part: Set your KAZOO version on the Manage Cluster page

Once you have regenerated the App Exchange screen from Monster UI and your cluster is connected, you can return the the Marketplace. When you navigate to the Manage Cluster page now, you should see the details of the connection.

At this stage, you MUST assign your Marketplace account’s KAZOO version to match that of your cluster’s KAZOO version. Failure to do this could result in applications not delivering properly. Make sure to click the Save Changes button after setting your KAZOO version in the dropdown.

Following this, your cluster is linked and you are ready to purchase and deliver applications!

Purchasing an Application

Prerequisites for Purchasing Apps

Some reminders on our first phase of the Marketplace:

  • Currently all purchases are available to existing 2600Hz customers only. Your account must be current with credit and/or have a credit card assigned to it.
  • The first round of applications are available only to Private Cloud and Global Infrastructure installations, and these installations must be upgraded to KAZOO 5.1.
  • We anticipate that integration apps (apps that are not installed on to a cluster and instead ingest Crossbar, Event or Websocket data) submitted by our partners will be the first apps to be made available to Hosted customers.

High Level Overview

Below is a quick view of the steps to take when you want to buy an application.

Browsing for Apps

Once you have browsed and discovered an application that you would like to buy, the next step is to purchase the application.

Pricing for apps varies and some apps may have additional usage fees that are accounted for when the cluster is billed. For ZSwitch clusters, which is the only environment supported in Phase I of the Marketplace rollout, this means that purchasing an app will trigger the Marketplace to add quantities to line items in your Service Plan. This means that following purchase, you will be able to go to the Service Plan app in MonsterUI and see the changes reflected there.

Viewing an App's Details

Here you can view screenshots, read new version release notes, and get more detailed information on pricing.

The App Purchase Pages

When you click purchase on an application, it will open details about the application's pricing and payment options.

You will be asked to confirm a pricing plan. Some apps may have only one option, others may provide different pricing and purchase plans.          

NOTE: The pricing for an app often reflects the base price. It cannot calculate what your total monthly cost will be if additional fees (e.g. per device, or per user) are also part of the plan.

Select the plan you want and click on Choose This Plan.

The licensing screen will then have you agree to the Master Services Agreement, which is viewable by clicking on and downloading the linked PDF. Once you check agree, you then able to click Purchase.

Once you've clicked Purchase, the confirmation page will be displayed. As it states, you'll want to check the email associated with your KAZOO user for more details on what to do next.

After Purchasing: App Delivery

While the app delivery process has been significantly simplified compared to the past methods, you as the cluster administrator will still need to manually start the application. You may be asking, “how will I know how to start the application?”

Luckily, all apps listed on the Marketplace will feature full instructions and support on how to run it properly. 2600Hz applications such as Call Center, which previously had several manual steps, now generally will be distilled into a single command that you have to run on a single KAZOO node in order to start the application. Things like entering your licenses into the proper configuration files for example are now done behind-the-scenes and require no manual intervention to complete.

After Purchasing: App Management and Start Up Instructions

You can view what apps you have purchased as well as their status and details by clicking on Manage Accounts, part of the dropdown when clicking on your account on the far right of the nav bar, and then clicking on Manage Apps, located underneath your account details on the left side of the screen.

More Details on an App

By clicking on the dropdown chevron on the far right of the app’s table row, you can see details about your purchase and pricing plan, as well as instructions on how to run the app on your cluster. For apps that run as a KAZOO application, such as Call Center, this will generally be a single copy-and-paste command.

Two Ways to Start the Above Application

While how you choose to run commands on your KAZOO environment will differ based on several factors, the two methods applicable to most commercial KAZOO clusters would be to:

SSH into all of your KAZOO servers and run one of the two provided commands on each of them.

Use Cluster Manager’s Scripts tab (followed by pressing the Run Command button) to enter the command and run a task on all KAZOO nodes. You can filter by service for only servers running KAZOO to make it easy to ensure that you are running it on every node. If you have a large cluster and use Cluster Manager, this is likely your easiest bet.

Please Note

This is an example delivery, and the process outlined in this document will not apply for every application. Every application will, however, include startup instructions that should make the delivery process streamlined and easy to complete.

Cancelling a Subscription

If you no longer wish to use an application, for example in the case that you were only trialing, you can cancel your subscription by going to the Manage Apps page.

To cancel a subscription to an application, click the ellipsis button next to the dropdown chevron.

Once you have confirmed by clicking Yes, Proceed, the application will show up as cancelled in the Manage Apps page.

Additional Information

Who is a Superduper Admin?

Let’s say for example that we’ve just created a new KAZOO cluster, called Zwicky. On setup, we made the first account, identified using the first 6 characters of its Account ID, 9c40cc. We also created the first admin user, Lucy, identified by her email address lucy@zwicky.com. We then created two more users, Bob and John, and requested for John to be an admin. We did not do the same for Bob. So then, who is a Superduper Admin?

The account 9c40cc is the top-level account in the Zwicky cluster. Therefore, any users that have been flagged as admins in that account will be a Superduper Admin. Since Lucy was the default user that we assigned when creating the cluster, she is a Superduper Admin. John is also a Superduper Admin as well, since we created the user and flagged him as an admin on user creation. Bob however is not a Superduper Admin, since we did not include that he should be one when we made the user creation request.

Let’s say, like in the diagram above, we then create two sub-accounts underneath our original account. Since these accounts fall below the top level of the account tree, no user in these sub-accounts can be a Superduper Admin. They can still be an admin for that sub-account, but never a Superduper.

 

How to check if an account is Superduper Admin

You can use the KAZOO API to quickly check to see if an account has Superduper Admin privileges. Using the Accounts endpoint, we can check quickly to see whether data.superduper_admin is true or false.

Consider the following Python program:

import requests
        import json
        api_url = os.environ.get('KAZOO_API_URL') # don't forget to include port
        account_id = os.environ.get('KAZOO_ACCOUNT_ID')
        access_token = os.environ.get('KAZOO_ACCESS_TOKEN')
        url = "https://{}/v2/accounts/{}".format(api_url, account_id)
        headers = {'X-Auth-Token': access_token}
        r = requests.get(url, headers=headers)
        dat = json.loads(r.text)
        if dat['data']['superduper_admin']:
                print("this account has superduper admin privileges")
        else:
                print("this account does not have superduper admin privileges")

By sending a request to the KAZOO server with an account ID and a valid auth token, the response will contain the superduper_admin flag.