R.I.P. Kazoo

My deployment is going great, no issues whatsoever. Parent company 1pbx has entered into a partnership with one of the largest telcos in Canada, so we have been busy working with them. pbxHQ will likely not see any major changes for a few months, but we now have all the resources we need to further develop integrations and remove any existing pain points (bad UI experience for onboarding, among others)

I'm glad to hear that. That's awesome. I wish their SmartPBX was open so that users can hack it. I wish it had as user friendly forum as this one here. I assume you're sticking with 4.3 ? Seems 5.x was a good idea, but I'm unsure if they will release it to public to run on your own hw. Have you implemented Vivix Blast or something like it?
 
wish there was as bit better documentation on it. They recently announcements integration with OneBill
 
I'm glad to hear that. That's awesome. I wish their SmartPBX was open so that users can hack it. I wish it had as user friendly forum as this one here. I assume you're sticking with 4.3 ? Seems 5.x was a good idea, but I'm unsure if they will release it to public to run on your own hw. Have you implemented Vivix Blast or something like it?

SmartPBX is fully open source: https://github.com/2600hz/monster-ui-voip

SmartPBX is simply a Monster-UI app which allows for easier management of a customer account (PBX I guess you could say). What used to take many actions to complete, can now be done in 1 or 2. For example adding a user and connecting a device to the user--to do this properly before, it involved creating a user, creating a callflow for their extension, creating a voicemail box, adding devices, setting presence IDs on devices to match the users extension, etc. Now that is all done in a couple clicks in SmartPBX.

One thing about Kazoo that may confuse some people, is there are two types of "apps". There are Kazoo Apps that run on your Kazoo application server(s). Some examples are crossbar (the HTTP API), HotOrNot (Call rating engine), and many more. Then there are Monster-UI apps which add functionality to the web portal. Many apps on the web portal will require certain API endpoints to be enabled, as they are not all enabled by default. As far as I can remember, anything that the open-source Monster-UI+apps needs is usable open-source, meaning the backend components exist to facilitate full proper usage of the app.

Aaron
 
SmartPBX is fully open source: https://github.com/2600hz/monster-ui-voip

SmartPBX is simply a Monster-UI app which allows for easier management of a customer account (PBX I guess you could say). What used to take many actions to complete, can now be done in 1 or 2. For example adding a user and connecting a device to the user--to do this properly before, it involved creating a user, creating a callflow for their extension, creating a voicemail box, adding devices, setting presence IDs on devices to match the users extension, etc. Now that is all done in a couple clicks in SmartPBX.

One thing about Kazoo that may confuse some people, is there are two types of "apps". There are Kazoo Apps that run on your Kazoo application server(s). Some examples are crossbar (the HTTP API), HotOrNot (Call rating engine), and many more. Then there are Monster-UI apps which add functionality to the web portal. Many apps on the web portal will require certain API endpoints to be enabled, as they are not all enabled by default. As far as I can remember, anything that the open-source Monster-UI+apps needs is usable open-source, meaning the backend components exist to facilitate full proper usage of the app.

Aaron
You seem to be doing good job of explaining things here. Maybe you should do a monetized video series on YouTube.
 
One thing about Kazoo that may confuse some people, is there are two types of "apps". There are Kazoo Apps that run on your Kazoo application server(s). Some examples are crossbar (the HTTP API), HotOrNot (Call rating engine), and many more. Then there are Monster-UI apps which add functionality to the web portal. Many apps on the web portal will require certain API endpoints to be enabled, as they are not all enabled by default. As far as I can remember, anything that the open-source Monster-UI+apps needs is usable open-source, meaning the backend components exist to facilitate full proper usage of the app.

Hey - I thank you very much for sharing your knowledge and expertise. Would be great if we can get enough people involved in this project over here on voip-info - perhaps open up a new section of the forum for it. I hope you continue to hang out and feel free to write any items you want to share, I'm sure it would be welcomed by all.
 
Quite busy nowadays, but if any Kazoo related topics come up, feel free to @ mention me which should give me a notification :)
 
As I mentioned in a previous post in this thread, their docs are not exactly correct, and lacking in some clarity in some areas. With that, was able to get it installed.
 
Has anyone been able to do a install of Kazoo, i have used the instruction from https://docs.2600hz.com/sysadmin/doc/install/install_via_centos7/ and the installation completes I just can't login to the monster-UI, it allways say " Oops! Something went wrong! " after I enter user and password. I have tried 2 clean installs but allways the same ?

I haven't followed those docs verbatim in quite a while as I'm already very familiar with the process, but they should be pretty accurate. Is your Monster-UI config.js file pointing to your API endpoint? You can take a look at my config if you like: https://portal.pbxhq.com/js/config.js

This might help you fill in some missing config variables. I have a few objects in there that you wouldn't need, the only real requirement is the API basepath--here is a copy of my config for this one variable:

api: {
// The default API URL defines what API is used to log in to your back-end
default: 'https://api.apivoip.com:8443/v2/'
}

And to confirm your API is working and you are correctly pointed to it, you can check the response you get by visiting: https://api.apivoip.com:8443/ and https://api.apivoip.com:8443/v2 and see if your API is returning the same as mine when visiting the corresponding endpoints, but to your install.

Kazoo is quite different from Incredible PBX in that there is no simple one step install script. Even after you get Kazoo installed successfully, you will need a basic understanding of the various components if you want to be successful with your deployment. All the information is available online, and there are quite a few helpful individuals in the community.

As with most technical help inquiries, you will get better answers if you demonstrate that you attempted to solve your problem first before asking.


After having used Kazoo for many years, for anyone who isn't familiar with the basics of what Kazoo is all about and the complexity, I will try to explain it simply:

To get a basic install up and running should not be much of a challenge. But with a basic install, you probably won't accomplish much more than you could with something simpler with less moving parts. To really take advantage of all the benefits Kazoo offers, you will need a deeper understanding of how the components work together, how to configure the individual components as per your requirements, how to secure all the components, how to deploy in a way that offers redundancy, etc...

One random example is billing. Kazoo can handle billing quite well, in terms of call rating, having multiple rate decks, defining service plans, automatic monthly payments from customers, automatic top-up of balances, and more. Configuring all of this is not very well documented (some aspects it seems have intentionally not been documented).

There is a lot to learn to take full advantage of the platform, but it is a very worthwhile journey if you are willing to learn and do your research.

All of the complexity of Kazoo is there for a reason. Once you get to know it better, you start to understand why things were designed the way they were. It isn't possible to have a "simple" system, while still being as capable as Kazoo is. I'm glad that 2600hz leaned towards being very capable rather than very simple. Having said that, more detailed and up to date documentation would have been really nice, but that doesn't generate them any money so it is understandable.

I am happy to answer questions within reason, provided you demonstrate that you at least attempted to figure things out yourself. If you get stuck on something, let me know and I'll point you in the right direction.

Aaron
 
t allways say " Oops! Something went wrong! " after I enter user and password. I have tried 2 clean installs but allways the same ?
Ditto! And the lack of documentation lead me to use my time elsewhere.
 
Considering the web portal is a SPA with every interaction with the platform clearly visible in the browser, it is trivial to troubleshoot these issues. You probably didn't have the API defined in your web portal config.

For anyone who tried installing by following the instructions verbatim, some of the "sed" commands which find/replace certain text in configs can be slightly off. Ever since day 1 , I preferred to manually edit those files anyways to see what was actually going on inside. Blindly copying and pasting commands into the terminal and hoping for the best is an easy way to have a system with at least 1 aspect of it not configured right.

If you aren't willing to open a config file and see what is going on, Kazoo probably isn't right for you. The config files are quite well documented with inline comments, it makes configuring it yourself not a difficult task at all. As opposed to sed commands that may or may not match the right text to replace. Here is a good example, the Kamailio sed commands to replace the default values with your real hostname and public IP work, but they do not uncomment the line itself to make the variable known to the SBC.

Sed commands:

# Update the hostname in the config
sed -i "s/kamailio\.2600hz\.com/${_HOSTNAME}/g" /etc/kazoo/kamailio/local.cfg

# Update the IP addresses
sed -i "s/127\.0\.0\.1/${IP_ADDR}/g" /etc/kazoo/kamailio/local.cfg

Actual live (default) config straight from github:


################################################################################
## SERVER INFORMATION
################################################################################
## UNCOMMENT & CHANGE "kamailio.2600hz.com" TO YOUR SERVERS HOSTNAME
# # #!substdef "!MY_HOSTNAME!kamailio.2600hz.com!g"
## UNCOMMENT & CHANGE "127.0.0.1" TO YOUR SERVERS IP ADDRESS
## Usually your public IP. If you need
## to listen on addtional ports or IPs
## add them in "BINDINGS" at the bottom.
# # #!substdef "!MY_IP_ADDRESS!127.0.0.1!g"


A quick peak inside of this file would show you the text in all caps saying to uncomment the parameters. The sed command alone will just replace the variables. As I said previously, if you can't be bothered to take a peak inside of a config file, Kazoo is not the right tool for you.
 
Ditto! And the lack of documentation lead me to use my time elsewhere.

I've had that in the past and I think it was something getting jacked up with the database. In my instance, I didn't have enough memory. I've got a single instance with just 1Gb RAM, but with the multi-instance I think people prefer to have 4GB of RAM on it.
 
Sed commands:

# Update the hostname in the config
sed -i "s/kamailio\.2600hz\.com/${_HOSTNAME}/g" /etc/kazoo/kamailio/local.cfg

# Update the IP addresses
sed -i "s/127\.0\.0\.1/${IP_ADDR}/g" /etc/kazoo/kamailio/local.cfg

Thanks pbxhq, I did find those and uncommented them also my /var/www/html/monster-ui/js/config.js has api: { 'default': 'xxx.xxx.xxx.xxx:8000/v2/' }, and shows the same results as yours.

{"data":{"message":"invalid credentials"},"error":"401","message":"invalid_credentials","status":"error","timestamp":"2021-01-21T15:59:17Z","version":"4.3.135","node":"5-bEsHRTcpvOhJHnl_Fx-g","request_id":"b76ee6de11f0d88a9fb5ae4382054738","auth_token":"undefined"}

I should have mentioned what I had tried, thanks again and I will keep poking around to try and solve this.
 
Finally able to login, this part needs the FQDN not IP address, /var/www/html/monster-ui/js/config.js has api: { 'default': 'xxx.xxx.xxx.xxx:8000/v2/' },
 
Finally able to login, this part needs the FQDN not IP address, /var/www/html/monster-ui/js/config.js has api: { 'default': 'xxx.xxx.xxx.xxx:8000/v2/' },

There is no reason an IP address would not work there, unless you are using a virtual host or some other method of proxying that relies on it being a name as opposed to an IP.
 
Finally able to login, this part needs the FQDN not IP address, /var/www/html/monster-ui/js/config.js has api: { 'default': 'xxx.xxx.xxx.xxx:8000/v2/' },
You can also enable SSL using letsencrypt or other provider. for Crossbar and also for the web service wtih the virtualhost.
 
@fmateo05 , thank you, would you be so kind to provide me the commands to execute at the console to check all these?

Because even when I type ifconfig at the command line using the console returns 'command not found'

Thank you

You can exec: ip addr or apt-get install net-tools (this package provides the ifconfig command).

Let me help you with some of the commands to quickly start using kazoo with this method.

By default, all kazoo related services start up when booting the first time.

- Change MY_IP_ADDRESS parameter on /etc/kazoo/kamailio/local.cfg to server's IP address and restart kazoo-kamailio (systemctl restart kazoo-kamailio ).

- Restart Kazoo Ecallmgr: systemctl restart kazoo-ecallmgr
- Restart freeswitch (to allow it obtain the server's ip address) systemctl restart kazoo-freeswitch
- Execute: sup crossbar_maintenance create_account {account id} sip.$(hostname) {username} {password}
- Init the apps:
sup crossbar_maintenance init_apps /var/ww/html/monster-ui/apps http://{server_ip_address}:8000/v2/
- or-
sup crossbar_maintenance init_apps /var/ww/html/apps http://{server_ip_address}:8000/v2/

cd /usr/local/src
git clone --depth 1 git://github.com/2600hz/kazoo-sounds
sup kazoo_media_maintenance import_prompts /usr/local/src/kazoo-sounds/kazoo-core/en/us en-us
sup -n ecallmgr ecallmgr_maintenance add_fs_node freeswitch@$(hostname -f)

If you have some issues at this point, please let me know.
 

Members online

No members online now.

Forum statistics

Threads
26,762
Messages
174,867
Members
20,323
Latest member
johnsonyou
Get 3CX - Absolutely Free!

Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.
Back
Top