FreePBX activation and a broken Sangoma portal

FreePBX activation issues

When installing FreePBX, there’s an option to activate it. You don’t have to, but activation gives access to some additional FreeBPX modules and can be useful.

But all attempts to activate my system failed. I tried Firefox and Chromium on Linux and Firefox on Windows. Every time I got the same message:

Activation Error!
Unable to display activation page Error returned was:

{"guid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","count":4,"remainingoffers":{"createacct":"createacct","activate":"activate","pbxact_ucc":"
pbxact_ucc","ip_phones":"ip_phones"},"thisoffer":"createacct","offer":{"html":

In an attempt at troubleshooting the issue, I did a tcpdump of the HTTP conversation and reconstructed the web page from the dump. The “error returned” text is actually JSON text:

{
   "count" : 4,
   "guid" : "(redacted)",
   "offer" : {
      "html" : "(114k of HTML snipped)",
      "status" : "ok"
   },
   "offers" : {
      "activate" : "activate",
      "createacct" : "createacct",
      "ip_phones" : "ip_phones",
      "pbxact_ucc" : "pbxact_ucc"
   },
   "remainingoffers" : {
      "activate" : "activate",
      "createacct" : "createacct",
      "ip_phones" : "ip_phones",
      "pbxact_ucc" : "pbxact_ucc"
   },
   "sentvars" : {
      "business" : "(redacted)",
      "cell_num" : "(redacted)",
      "create" : "",
      "display" : "(redacted)",
      "extdisplay" : "(redacted)",
      "guid" : "(redacted)",
      "marketing_opt_in" : "(redacted)",
      "name" : "(redacted)",
      "newpassword1" : "(redacted)",
      "newpassword2" : "(redacted)",
      "office_num" : "",
      "oobesubmit" : "(redacted)",
      "persist" : {
         "guid" : "(redacted)",
         "lastrestart" : 1576895774,
         "lastrun" : 1576895774,
         "lastrun-timestamp" : 1576895777,
         "restartoobe" : false,
         "restartreason" : false,
         "sipstation-lastrun" : 1576894319,
         "sstrial-timestamp" : 1576894323
      },
      "portalemail" : "(redacted)",
      "portalpw" : "",
      "reseller_type" : "36",
      "shipping_address" : "(redacted)",
      "shipping_address2" : "",
      "shipping_city" : "(redacted)",
      "shipping_country" : "(redacted)",
      "shipping_state" : "(redacted)",
      "shipping_zip" : "(redacted)",
      "terms_and_conditions" : "1",
      "thisoffer" : "createacct",
      "view" : "activation"
   },
   "thisoffer" : "createacct",
   "update" : null
}

Did you see what’s missing? An indication of what the error actually was!

After poking aound the Sangoma forums (Sangoma “owns” FreePBX and is currently the primary developer) I came across the following command line:

fwconsole sa activate pbx@groupbcl.ca

So I gave it a try:

[root@pbx ~]# fwconsole sa activate pbx@groupbcl.ca
Attempting to activate against email address 'pbx@groupbcl.ca'
Running /var/www/html/admin/modules/sysadmin/bin/register_new --email=pbx@groupbcl.ca
Validating email...Error!
The email address pbx@groupbcl.ca does NOT have a portal account.

Ah, there’s a clue: the activation is talking to a “portal.” A quick search on DuckDuckGo showed there’s a web site at portal.sangoma.com. I visited the page and followed the link to sign up. I was presented with a form that asked for the same information that the FreePBX activation did. So I filled out the form, clicked Submit … and nothing happened.

The people who developed the Sangoma portal page are using a Google ReCAPTCHA with no warning that the ReCAPTCHA is in use and without checking to ensure the JavaScript from Google loaded.

All right. So I close the browser window, move my privacy-enable hosts file aside, load up a “clean” browser (which gets reset on every use), revisit the page, fill out the form again (15 fields) and submit it, and solve the damned ReCAPTCHA.

The page gave me an error, and suggested I try the customer care page.

So I go to the customer care page and … you have to register at the portal page in order to contact customer care! In addition:

All requests submitted to the Customer Service staff must be limited to general questions or billing inquiries. The Customer Service department is unable to assist with sales inquiries or provide any level of technical support assistance. Requests for technical support will be automatically closed. Please review the options here for support assistance.

The ineptness of the Sangoma web site boggles my mind.