/webconf-manager

Webconf Manager repo

Primary LanguageGoGNU Affero General Public License v3.0AGPL-3.0

webconf-manager

webconf-manager has been written as a small utility addressing specific needs for GRNET's teleconferencing service. It is a fairly lightweight API that can be used to add BigBlueButton and Transcoding types of hosts into Ansible's dynamic inventory and to deploy upon them the necessary Ansible roles.

In general three methods are implemented:

Name Verb Body Description
/list GET - List all BigBlueButton and Transcoding servers
/add POST application/json Add a new pair of BigBlueButton and Transcoding servers into Ansible's dynamic inventory
/deploy POST - Deploy via Ansible the whole conferencing instrastructure

Examples:

curl –X GET 'http://{{ host_or_ip }}:{{ port }}/list'
curl -X POST -H "Content-Type: application/json" \
-d '[{ 
        "name": "webconf-bbb5.grnet.gr", 
        "type": "bigbluebutton", 
        "internal_ip": "172.16.0.52", 
        "storage_path": 5 
    }, 
    { 
        "name": "webconf-trans5.grnet.gr",
        "type": "transcoding", 
        "internal_ip": "172.16.0.51",
        "storage_path": 5
    }]' 'http://{{ host_or_ip }}:{{ port }}/list'
curl –X POST 'http://{{ host_or_ip }}:{{ port }}/deploy'