Skip to content

Commit

Permalink
Merge pull request #739 from wazo-platform/blog-posts-summary
Browse files Browse the repository at this point in the history
Add  blog posts summary

Reviewed-by: Francis Chartrand
  • Loading branch information
wazo-community-zuul[bot] authored Jul 25, 2024
2 parents 1181705 + cbf8acf commit c4df886
Show file tree
Hide file tree
Showing 31 changed files with 65 additions and 3 deletions.
2 changes: 2 additions & 0 deletions website/blog/asterisk-scale-apps-introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ status: published

This article is the first one of a series about the work that we do at Wazo around Asterisk application scalability. For this first post, we will describe some high level aspects of the approach we take to scale Stasis applications. We will explain which components are involved and their role. Let’s take a simple application as an example.

<!-- truncate -->

# Our sample application

Our application will be a simple conference app : when a user calls the 8000 extension, he will be placed in a conference.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/engine-installation-and-acceptance-tests.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ This guide will show how to quickly get a development environment of
Wazo Platform inside a virtual machine to run the acceptance tests. To do so,
we will use libvirt, virt-installer and the Wazo Platform iso.

<!-- truncate -->

## Requirements

I'm currently running Debian Buster and installed the following packages:
Expand Down
2 changes: 2 additions & 0 deletions website/blog/extending-wazo-with-plugind.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ One of the aspect that was still cruelly missing was a way to distribute and eas

Wazo plugins will fill that gap.

<!-- truncate -->

# Meet wazo-plugind

Plugind is a service that we developed to help manage third party plugins as well as official plugins. At the moment we are using plugins to add features to the new administration interface, but in the future we will be able to ship complete features using plugins. We could still package and enable official features with our services, the way we always did, but we think that the only way to get a good and flexible plugin system that will be usable by the community is to use it ourselves.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/have-an-itch.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ be able to start with what matters most to our users.

If you are a telecommunications solution provider tell us about you needs.

<!-- truncate -->

What are your customers asking for?
What would make you more productive?

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ Our application is always connected with our server via WebSocket, but there are

We can't force the application to stay foreground, so how can we get rid of theses limitations?

<!-- truncate -->

## Poor Man's Solution: Push Notification

At the first time, we have set up Push Notification thanks to Firebase Cloud Messaging. When the user receives a call, we can detect if the websocket connection status and send a push if the application is not connected.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/integrating-a-jabra-headset.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ We've been tasked with integrating the Jabra headset in our Web and Desktop appl

![Jabra headset](https://user-images.githubusercontent.com/2076632/71919321-659ba580-3152-11ea-8095-d27f22a6958b.jpg)

<!-- truncate -->

## Integrating a Jabra Headset with our Desktop app.

Adding the Jabra SDK in our Electron application was pretty straightforward, we were able to catch the headset button events and changing it status (on-hook, ringing ...).
Expand Down
2 changes: 2 additions & 0 deletions website/blog/introducing-wazo.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Hi everyone, long time no see!

We've been quite busy the last few days, but we are pleased to announce the birth of a new project in the world of communications, introducing: [Wazo](https://wazo-platform.org).

<!-- truncate -->

## What is Wazo?

[Wazo](https://wazo-platform.org) is a unified communication platform and a full-featured IPBX based on Asterisk, oriented towards enterprise communications. Wazo was forked from XiVO on November 25th, 2016, starting off the development version following XiVO 16.13. Every feature of XiVO 16.13 is still available in Wazo, and there are more to come...
Expand Down
2 changes: 2 additions & 0 deletions website/blog/introducing-wazotester.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ In a complex microservice VoIP architecture testing the functionalities or stres

With our experience with scalable VoIP infrastructure and a lot of trials and errors, creating a mess with a lot of bash scripts doing different things preparing the environment for launching sipp tests and scenarios we decided to start from a clean slate and redesign or way to do tests.

<!-- truncate -->

## The scenario files

We wanted to have a descriptive method for defining procedures and running tests and came up with a simple YAML configuration file with the following root keys:
Expand Down
2 changes: 2 additions & 0 deletions website/blog/kamailio-consul-service-discovery.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ Dynamic scaling brought additional complexity in the configuration of our Kamail

We wanted to deploy Wazo on different kinds of platforms, not only containerized with Kubernetes but also with Docker compose or on Virtual machines using Ansible recipes. We had to choose a tool that will help us in service discovery and the flexible configuration of our components. That's where we decided that [HashiCorp Consul](https://www.consul.io) was the right tool to use.

<!-- truncate -->

## What is Consul?

The [official](https://www.consul.io) definition of Consul is:
Expand Down
2 changes: 2 additions & 0 deletions website/blog/kamailio-developpers-meeting-2019-kemi.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ An important subject was approached in detail: KEMI (Kamailio Embedded Interface

KEMI is a framework allowing to use a language other than native language to program our Kamailio engine. With KEMI, we can use Javascript, LUA, Python, LUA, Ruby and Squirrel.

<!-- truncate -->

The advantages in the use of KEMI are numerous.

First of all, the use of a standard language used and well known by developers guarantees an enhanced code quality.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/kamailio-ha-dispatcher-and-dmq.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ This is the first of a series of blog posts about the HA features of the [Wazo P

The routers are not accessed directly from carriers nor the termination IPBXs, as they are behind the SBC infrastructure. We assume then the routers are on an internal, non-externally accessible network segment and communicate with the SBC using the SIP protocol over UDP.

<!-- truncate -->

## Stateful load balancing of the routers from the SBC with failover

When a new SIP message reaches our SBC and satisfies our strict requirements regarding security and validation and thus it is ready to be forwarded to the routing layer, the target host is selected from a list managed using the [dispatcher module](https://kamailio.org/docs/modules/stable/modules/dispatcher.html).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ In the [Wazo Platform C4](/blog/wazo-platform-c4-overview) we are committed to d

Our goal was while supporting high degrees of flexibility and ease to configure, to avoid any compromise regarding performances: we aim to support a high number of concurrent calls, high call rates with predictable and linear degradation of performances in case of overload.

<!-- truncate -->

## The solution

To provide flexible, API-driven routing features in the Wazo Platform C4 Softswitch we decided to implement it on the foundations of the [`rtjson`](https://kamailio.org/docs/modules/stable/modules/rtjson.html) module. This module not only allows you to push the routing destination `URI` and the outbound proxy, but it also supports the normalization of the `From` and `To` headers, the insertion of additional headers as well as various settings related to the transaction management and its timers.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/live-transcript-demo-astricon-19.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ At Astricon 2019 we presented that module. Unfortunately, the presentations at
Astricon have not been recorded. This article will get you started playing with
our Asterisk module.

<!-- truncate -->

## Motivation

Being able to stream audio out of Asterisk can be used to solve a variety of
Expand Down
2 changes: 2 additions & 0 deletions website/blog/new-public-release-wazo-1913.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ You can augment the platform and integrate it with your subscription and billing

These communication infrastructures can be deployed and scaled on bare metal, virtual machines or containers.

<!-- truncate -->

## What's the future of Wazo?

Wazo’s vision is that no single communication system can address appropriately the vast diversity of the communication needs of organizations, either for team collaboration or for customer engagement.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/pjsip-multi-tenant.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ as possible.
In this article we will look into the process of making this new API multi
tenant.

<!-- truncate -->

# Differences Between `chan_sip` and `chan_pjsip`

`chan_sip` is the old channel driver that has been in Asterisk for ages to handle
Expand Down
2 changes: 2 additions & 0 deletions website/blog/queuemetrics-partnership.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ We are proud to announce our successful integration with Loway's QueueMetrics-Li

Loway's QueueMetrics-Live call-center suite, is now fully integrated with Wazo IPBX.

<!-- truncate -->

Wazo is a unified communication platform and a full-featured IPBX based on Asterisk technology, oriented towards enterprise communications.

QueueMetrics-Live suite collects Asterisk data and generates analytical reports for over 180 metrics, covering all the key categories of call center effective management: Reporting, Supervisor page, Agent page, Quality assessment and much more.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ The situation could be described as an unintended yet effective denial of servic

We will show here, how in less than a 3-day period - during a short hackathon - a team of developers, with no prior knowledge of the Wazo programmable platform, was able to put in place an effective solution to this prioritization issue, and save lives.

<!-- truncate -->

## DEMONSTRATION OF THE FLEXIBILITY AND SIMPLICITY OF USE OF THE WAZO PROGRAMMABLE PLATFORM

By solving this issue, our hidden objective was to demonstrate how easy it is to create a useful feature in a very short time frame based on the Wazo open programmable communication platform.
Expand Down
8 changes: 5 additions & 3 deletions website/blog/survey-2017.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ slug: survey-2017
status: published
---

*La version française suit*
_La version française suit_

Dear Wazo users,

Expand All @@ -17,10 +17,12 @@ We would like to call on a couple of minutes of your time to help us improve Waz

This survey should only take a few minutes or so and we promise to keep you informed of how we will use it to improve the roadmap.

* ~~Survey in English~~ (closed)
- ~~Survey in English~~ (closed)

Thank you for contributing to the Wazo project.

<!-- truncate -->

---

Chers utilisateurs de Wazo,
Expand All @@ -31,7 +33,7 @@ Nous vous sollicitons afin de mieux vous connaître et de faire évoluer positiv

Ce questionnaire devrait prendre quelques minutes de votre temps et nous ne manquerons pas de vous faire un retour sur les actions que nous mènerons.

* ~~Sondage en français~~ (fermé)
- ~~Sondage en français~~ (fermé)

Merci d'avance pour votre contribution au projet Wazo.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ For the past couple weeks, we've been working on the creation of automated integ

Avoiding regressions on such a large application is a huge challenge. We are making big steps in the automation process to fulfill this goal.

<!-- truncate -->

## You Must Choose, but Choose Wisely

The first step of our journey was the choose a testing framework that would fit our needs. Software like Selenium or Appium have proven their value, but they are slow and flaky. At the end of our investigation, we've selected [Detox](https://github.com/wix/Detox) to run our tests. Detox generates less flaky tests, because it monitors the app and waits for interactions or requests to finish before moving on to the next instruction.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-admin-ui.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ The current admin interface of Wazo is aging, and its internal design is signifi

So, you can try this admin interface by visiting `https://<wazo_ip>/admin`.

<!-- truncate -->

# Login

Once you enter the same credentials as the other admin interface, you'll see a small Plugins menu on the left: this is where you choose what you want to see in the admin interface: no more frighteningly long list of menus, you can select only what you need.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-asterisk-integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ sometimes what you need is simply missing. This article will show some common wa
modify your Wazo server to use features from Asterisk that are not available in the
wide range of Wazo tools.

<!-- truncate -->

## Dialplan

Dialplan is used to modify the flow of a call. The easiest way to add dialplan to
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-auth-refresh-token.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ almost anything else is to authenticate. The process of authentication on Wazo P
is basically creating a token using your username and password. This can be done
using the `/token` API of wazo-auth. Here's an example from the command line.

<!-- truncate -->

```ShellSession
$ curl -k -XPOST -H "Content-Type: application/json" -u "<username>:<password>" "https://<hostname>/api/auth/0.1/token" -d '{"expiration": 3600}'
```
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-c4-ansible.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ In our pursuit of enabling companies to build their IP communication infrastruct

So, beside the fast containerized way with docker-compose or helm chart for Kubernetes, Wazo's C4 can be deployed with Ansible on virtual machines or bare-metal.

<!-- truncate -->

## Wazo Platform C4 solution

We've already introduced our C4 platform in a previous [blog post](/blog/wazo-platform-c4-overview). Our SBC and Routing solution has in the last month grown and matured with the introduction of RTP Engine, Consul and the automatic configuration of Kamailio nodes as the architecture scales.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-c4-kubernetes.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ In our pursuit of enabling companies to build their IP communication infrastruct

We started with a deployment of our C4 (Class 4) SBC and routing solution on a Kubernetes Cluster through a Helm chart.

<!-- truncate -->

## Wazo Platform C4 solution

We've already introduced our C4 platform in a recent [blog post](/blog/wazo-platform-c4-overview). Our SBC and Routing solution has in the last month grown and matured with the introduction of RTP Engine, Consul and the automatic configuration of Kamailio nodes as the architecture scales. It is a fairly new project of ours but we've done giant leaps toward a complete C4 solution just in the last weeks.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-new-logo.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ Nous sommes très fiers de vous dévoiler notre nouveau logo pour Wazo ! Sans pl

![wazo-logo-full.png](../static/images/blog/wazo-new-logo/wazo-logo-full.png 'Wazo logo')

<!-- truncate -->

# Son histoire

Maintenant que nous vous l'avons dévoilé, il me semble important de vous raconter son histoire. J'ai toujours aimé travailler autour d'une histoire humaine, d'une rencontre, d'une idée et ce logo, et même le nom de Wazo, possède une histoire.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-ngrok-en.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Ngrok is a software allowing its users to create reverse tunnels to access a ser

![ngrok.png](../static/images/blog/wazo-ngrok/ngrok.png 'Ngrok website')

<!-- truncate -->

# Ngrok

Using Ngrok from Wazo is very simple. The first step is to register to the ngrok service [site](https://ngrok.com) (which is free, as in beer) and to retrieve your authentication token. The token is necessary to create tunnels.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-ngrok.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Ngrok est un logiciel permettant de monter simplement un tunnel inversé pour ac

![ngrok.png](../static/images/blog/wazo-ngrok/ngrok.png 'Ngrok website')

<!-- truncate -->

# Ngrok

Pour utiliser ngrok avec Wazo c'est aussi très simple. La première chose à faire est de vous inscrire sur le [site](https://ngrok.com) (c'est gratuit) et de récupérer votre token d'authentification. Il est nécessaire pour monter des tunnels.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-platform-c4-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ To fulfill Wazo Platform's vision to bring a full-featured, open-source, cloud-n

Keeping in mind our microservice architecture, we also wanted to further strip down some of the Asterisk dependant functionalities and try to use different tools.

<!-- truncate -->

## What is a C4?

Basically, a C4 softswitch routes traffic between C5 softswitches.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-unicom-en.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ I am asked quite regularly the difference between XiVO and Wazo in terms of feat

![unicom.png](../static/images/blog/wazo-unicom/unicom.png 'Unicom')

<!-- truncate -->

# Unicom

But what is Unicom? I had a lot of discussions and I had in mind two targets when I made it available to everyone. The first was to provide Software as a Service (SaaS) software, meaning: no upgrade to manage, no installation to do, increased mobility; but also to show that it was possible to develop new tools that would bring more value-added services, using Wazo and its APIs. This makes it a demonstration and also a source of ideas to exchange with the market players.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-unicom-fr.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ On me demande assez régulièrement la différence entre XiVO et Wazo en terme d

![unicom.png](../static/images/blog/wazo-unicom/unicom.png 'Unicom')

<!-- truncate -->

# Unicom

Mais qu'est-ce donc qu'Unicom? J'ai eu beaucoup de discussions et j'avais en tête deux cibles lorsque je l'ai mis à disposition de tous. La première était de fournir un logiciel SaaS (Software as a Service), donc pas de mise à jour à gérer, pas d'installation à faire, une mobilité accrue, mais aussi de montrer une voie possible avec Wazo pour les personnes souhaitant développer leur propre valeur ajoutée autour de Wazo en utilisant nos APIs. Cela permet d'en faire un démonstrateur mais aussi une source à idées permettant d'échanger de manière constructive avec les acteurs du marché.
Expand Down
2 changes: 2 additions & 0 deletions website/blog/wazo-webhooks.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ J'ai donc commencé un travail d'un connecteur sur une plateforme appelée Zapie

![zapier.png](../static/images/blog/wazo-webhook/zapier.png 'Zapier website')

<!-- truncate -->

# Zapier

Zapier est une plateforme cloud, avec des centaines de connecteurs vous permettant de faire 3 choses.
Expand Down

0 comments on commit c4df886

Please sign in to comment.