#!/bin/bash

list_media_servers() {
    sudo -u postgres psql -Aqt -d asterisk -c "SELECT name FROM mediaserver WHERE name <> 'default' ORDER BY name;" 2> /dev/null
}

display_mds_upgrade_reminder() {
    local media_servers="${1}"; shift

    echo ""
    echo "******************************************************************************"
    echo "*  IMPORTANT: the media servers replication is detached                      *"
    echo "*                                                                            *"
    echo "*  The following media servers are still running on a frozen replica:        *"
    echo "${media_servers}" | while read -r media_server; do
        printf '*    - %-70s*\n' "${media_server}"
    done
    echo "*                                                                            *"
    echo "*  Their database is NOT replicated anymore: any configuration change made   *"
    echo "*  on the XiVO Main will not reach them until they are upgraded.             *"
    echo "*                                                                            *"
    echo "*  You MUST now upgrade the XiVOCC, then run 'mds-upgrade' on each of these  *"
    echo "*  media servers. Run them all at once for the shortest maintenance          *"
    echo "*  window, or one after the other to keep the calls served by those not      *"
    echo "*  yet upgraded.                                                             *"
    echo "******************************************************************************"
    echo ""
}

media_servers=$(list_media_servers)

if [ -n "${media_servers}" ]; then
    display_mds_upgrade_reminder "${media_servers}"
fi
