Django : mise à jour de yawd-admin, template pour l’admin de Django

Depuis le 4 mai 2014, Yawd-admin n’a plus été mis à jour par les mainteneurs officiels. Plusieurs forks patchent quelques bugs et apportent une relative compatibilité avec la version 1.7 de django.
J’utilise par ailleurs ce package sur quelques projets, permettant ainsi de disposer d’une interface d’adminitration pour les sites django attrayante et performante. J’ai décidé de le mettre à jour.

Pour le moment, la dernière version stable est compatible à 100% avec django 1.6 et la version de dev avec django 1.7.
Je suis en train de finaliser la 1.8. Ensuite dès que yawd-admin sera compatible avec django 1.9, je commencerai à ajouter de nouvelles fonctionnalités.

Ensuite viendra la question de la reprise officielle de la maintenance de ce package ou la réalisation d’un fork puis publication sur pypi.

Si vous voulez donner un coup de main, le repo de yawd-admin est pour le moment sur github (je vais le migrer sur bitbucket quand j’aurais pris une décision sur fork ou pas).

Il existe un certain de nombre de paquets sympas fournissant un service à peu près équivalent pour django, comme django-grappelli, django-admin-bootstrapped, django-admin-bootstrap ou django-suit parmi ceux que j’ai utilisé et que j’apprécie.

Mais j’aime bien le look de yawd-admin même si tout n’est pas parfait, je vais pouvoir corriger quelques défaults 😉

Comparatif des versions des paquets dans ubuntu 14.04 et 16.04 et debian 8 et 9 que j’utilise le plus

Dans le cadre de mes différents projets, je suis amené à utiliser différents systèmes d’exploitation et différentes générations. Pour effectuer le bon choix, il est parfois utile de pouvoir comparer les versions des paquets disponibles dans les distributions (même si j’aime bien compiler certains paquets pour mieux coller à mes attentes, parfois il est nécessaire d’utiliser les paquets – pré-requis client par ex-).

J’ai choisi arbitrairement Ubuntu 14.04 LTS et la future 16.04 LTS ainsi que Debian stable (8) et testing. Il est bien sûr possible d’utiliser des ppa afin de disposer de versions plus à jour, mais cela est hors scope (et impose au passage une nécessaire confiance dans le contributeur et ajoûte une complexité de migration).
Pour préciser, ce comparatif a été réalisé dans l’objectif exclusif d’un usage en serveur et sans interface graphique !

Voici le tableau au 11/04/2016

Version des paquets selon la distribution Ubuntu / debian
PaquetsUbuntu 14.04 LTSUbuntu 16.04 LTSDebian 8Debian Testing
mariadb-server5.5.4710.0.23-210.0.2310.0.24
mysql-server5.5.475.7.115.5.475.6.28
postgresql9.3+1549.5+1739.4+1659.5+173
odbc-postgresql1:09.02.01001:09.03.03001:09.03.03001:09.03.0300
redis-server2:2.8.42:3.0.62:2.8.172:3.0.6
unixodbc2.2.142.3.12.3.12.3.1
apache22.4.72.4.182.4.102.4.18
nginx1.4.61.9.141.6.21.9.10
gunicorn17.519.4.519.019.4.5
ssh1:6.61:7.21:6.71:7.2
fail2ban0.8.110.9.30.8.130.9.3
iptables1.4.211.6.01.4.211.6.0
munin2.0.192.0.252.0.252.0.25
rsyslog7.4.48.16.08.4.28.16.0
freeswitchnananana
asterisk1:11.7.01:13.1.01:11.13.11:13.7.2
kamailio4.0.44.3.44.2.04.4.0
freeradius2.1.122.2.82.2.52.2.8
ansible1.5.42.0.0.21.7.22.0.1.0

Ma première conclusion de cette revue, est de ne plus lancer de nouveaux projets avec Ubuntu 14.04 LTS !

Je mettrais à jour de temps en temps cette liste (n’hésitez pas à proposer quelques paquets indispensables pour les projets télécoms)

 

Lancement du forum de support pour FreeSwitch

Afin de combler un manque, j’ai décidé de lancer un forum de support dédié à la communauté francophone de FreeSwitch. En effet, je reçois pas mal de demandes d’aide par email, et je trouve dommage de ne pas faire profiter la communauté des réponses.

FreeSwitch est un outil fantastique permettant de créer des applications VoIP et vidéo (mais pas seulement) complexes et performantes. J’ai créé plusieurs sections (d’autres sections peuvent être envisagées) : actualités, installation, configuration, programmation et matériels. L’objectif est de créer une communauté d’entre-aide.

Si vous souhaitez devenir modérateur, envoyez moi un message privé.

L’adresse : forum FreeSwitch France

Migration du blog vers php 7

Mon hébergeur proposant php 7, j’ai décidé d’effectuer la migration ce jour du blog des télécoms. Je n’ai rencontré aucun problème. Néanmoins, si vous rencontrez des difficultés, n’hésitez pas à m’en faire part.

Je trouve que le blog gagne en vitesse, ce qui est cool.

Ansible : installation automatisée de Freeswitch Ubuntu Debian – v1.3

Nouvelle mise à jour (v1.3) du role FreeSwitch pour Ansible, le célèbre moteur d’orchestration. Installation automatisée de FreeSwitch à partir des sources sur les systèmes linux basés sur Debian/Ubuntu.

Je viens de publier la mise à jour du role FreeSwitch pour Ansible, le célèbre moteur d’orchestration, la version 1.3. Ce role permet d’installer FreeSwitch de manière automatique à partir des sources sur les systèmes linux basés sur Debian et Ubuntu.

Un bug de dépendances touchant Debian Jessie a été corrigé, plus quelques modifications mineures.

L’utilisation est simple. Il faut dans un premier temps installer Ansible, puis ajouter mwolff44.freeswitch-mw à vos roles.

Installation d’Ansible recommandée (il faut une version supérieure à la 1.8, les paquets de Jessie ne fournissant que la 1.7 !) :

apt-get install -y python-apt python-pycurl libtiff5-dev git python-pip python-dev autoconf g++ libgmp-dev
pip install ansible makupsafe

Pour un usage rapide du script, voici la démarche.

git clone https://github.com/mwolff44/freeswitch-mw.git
echo localhost > inventory
ansible-playbook -i inventory freeswitch-mw/test.yml --connection=local

Bien entendu, vous pouvez utiliser vos fichiers de configuration et des options spécifiques (le détail est sur le github de freeswitch-mw – role d’installation automatisée de FreeSwitch). Voici un exemple de configuration ci-dessous (le fichier test.yml appelé ci-dessus) :

- hosts: all
  vars_files:
    - 'defaults/main.yml'
  tasks:
    - include: 'tasks/main.yml'
  handlers:
    - include: 'handlers/main.yml'

Le repository du role Ansible pour FreeSwitch est hébergé chez Github et est bien sûr validé en intégration continue grâce au service de travis-ci.org.

Si vous voyez des idées d’amélioration, n’hésitez pas.

 

Mise à jour du 11/02/2016 : mise à jour des paquets Debian / Ubuntu à installer pour Ansible. Installation avec pip de markupsafe

Nouvelle année 2016

Je vous souhaite une excellente année 2016, que la santé soit avec vous.

2016 sera encore une année mouvementée dans les télécoms.

Tout d’abord les grandes manoeuvres des opérateurs mobiles pour revenir à tout prix à 3 acteurs sur le marché français tout en se renforçant à l’international.

Le géant Numéricable qui doit finir de digérer SFR et faire face à la fuite des abonnés : réussir la difficile équation de pouvoir relancer les inévitables financements du réseau avec des revenus en baisse. La direction a trouvé une idée : augmenter les abonnements, mais … cela ne leur fait pas perdre des abonnés en plus ? la solution passe inévitablement par la fibre comme les autres opérateurs fixes ! mais voilà comment revenir à un pseudo monopole sans qu’une entité de régulation efficace ne puisse controler les coûts.

Est-ce que 2016 sera l’année où une régulation courageuse imposera la mutualisation des réseaux de fibres optiques en arguant avec force que c’est du domaine du service publique au même niveau que l’électricité. Et pourquoi pas un RTE des télécoms ?

2016 sera aussi l’année de la surveillance tout azimut. Vu les évènements récents, certaines décisions peuvent être compréhensibles, néanmoins il nous faut avoir sacrément confiance en nos dirrigeants. Malheureusement, condamnations et mises en examens à l’appui, cette confiance est fortement ébranlée. Que faire : sécuriser nos réseaux, nos serveurs, nos procédures, former les personnels afin de ne pas se trouver au milieu de cette guerre électronique.

Mais 2016 sera aussi une année remplie de nouveaux projets excitants qui remplira nos journées de stress mais aussi de bonheur (surtout quand ce foutu !$##!## se décide enfin à fonctionner 😀 ).

Je souhaite aussi une bonne année à quelques projets qui me tiennent à coeur : Dolibarr, Asterisk, FreeSwitch et Debian.

Profitez bien, la vie est courte.

PyFreeBilling V2 : quelles sont les news ?

Nouvelles de la v2 de PyFreeBilling, solution open source softswitch VoIP. PyFB gère les trunks, les comptes SIP, le routage, les tarifs, la facturation

Cela fait maintenant très longtemps que je n’ai pas communiqué sur la version 2 de PyFreeBilling, solution open source de softswitch VoIP. PyFB gère les clients, les fournisseurs, les trunks, les comptes SIP (mode user/mdp ou authentification par IP), les règles de routage, les tarifs, la facturation et le reporting.

La version 2 apporte de nombreuses nouveautés. La plus importante est la prise en charge native de plusieurs serveurs FreeSwitch de manière intégrée et simple. La V1 permet de le faire, mais il faut utiliser des scripts ssh et communiquer plusieurs ip à ses clients et fournisseurs. La V2 intègre Kamailio en frontal qui gère l’authentification et le load balancing entre les différents serveurs média (FreeSwitch).

La seconde nouveauté est une nouvelle interface plus moderne, plus rapide et plus réactive grâce à la technologie Ajax. Une API permet aussi d’intégrer PyFreeBilling à votre site web ou votre backoffice. Au passage, je cherche des traducteurs pour la documentation et l’interface. Pour le moment seul la langue anglaise est prévue.

La troisième importante nouveauté est la gestion des services (abonnement de canaux SIP par exemple) et des factures pdf.

Cette version est toujours en développement mais avance vite.

J’en profite pour remercier les sponsors qui me permettent de consacrer autant de temps à ce projet.

Quand la version 2 est prévue : j’espère libérer une beta pour la fin d’année (cadeau de Noël ?). Elle sera présentée avec le nouveau site de PyFreeBilling qui sera basé sur Pluxml.

Découvrez l’évènement Voip2day 2015 à Madrid

Je suis dans les starting blocks pour le Voip2day qui se déroule à Madrid ce 11 et 12 novembre 2015.

Cet évènement est organisé par la société espagnole AVANZADA 7 et rassemble les acteurs majeurs du marché des télécoms espagnols.

Comme chaque année, le programme est intéressant : exposants, ateliers commerciaux et surtout ateliers techniques. Au programme, du voicexml, du webrtc (vous allez m’y retrouver), de l’Asterisk dans docker, de l’Elastix et un atelier sur la sécurité SIP. Plus d’infos sur le programme du Voip2day du 11/11 et le programme ateliers voip2day du 12/11.

Le lieu de l’évènement est magique pour les amateurs de foot : le stade Santiago Berbabéu. Peut-être que je verrai Ronaldo ?


Si vous êtes de passage sur Madrid, n’hésitez pas à me faire signe.

Xivo : vidéo de présentation de l’IPBX libre

L’équipe Xivo vient de publier une vidéo en anglais présentant l’IPBX libre. Dans cette vidéo de 3:51 minutes, la communauté Xivo est présentée par Gregory Sanderson, développeur R&D de la team Xivo, les partenaires et les contributeurs. Enfin, vous trouverez un tutorial de prise en main de  Xivo en 3 étapes.

Bon visionnage.

FreeSwitch : mettre à jour une ancienne installation

Mise à jour ancienne installation FreeSwitch : résoudre les problèmes liés au changement de repository de FreeSwitch et de certificats.

Vous devez mettre à jour une ancienne installation de FreeSwitch. La procédure est assez simple. Soit vous souhaitez utiliser la même branche, dans ce cas cette commande est suffisante :

make current

ou vous souhaitez en profitez pour migrer vers la dernière version stable ou une version de dev, pour cela vous devez au préalable saisir cette commande :

git checkout v1.4.stable

Mais l’équipe de FreeSwitch ayant changé l’hébergement des repos, il y a de grandes chances pour que vous obteniez des erreurs comme celle-ci :

error: server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none while accessing https://stash.freeswitch.org/scm/fs/freeswitch.git/info/refs

ou une erreur indiquant que le repo est inaccessible (l’ancien repo FreeSwitch git).

Voici la solution :

git remote set-url origin https://freeswitch.org/stash/scm/fs/freeswitch.git

Et vous n’avez plus qu’à relancer une nouvelle compilation de FreeSwitch.