Ein Fehler im Dialplan verhindert das betreten einer Konferenz, wenn der Teilnehmer, den man in die Konferenz eingeladen hat mehr als eine Telefonnummer im Telefonbuch besitzt.
Der Fehler befindet sich in "/opt/GS5/misc/freeswitch/scripts/common/conference.lua"
Dort wird in der Funktion function Conference.find_invitee_by_numbers(self, phone_numbers) die SQL Query falsch zusammengebaut.
Eine funktionierende Query sieht wie folgt aus:
local sql_query = 'SELECT `a`.* \
FROM `conference_invitees` `a` \
JOIN `phone_numbers` `b` ON `b`.`phone_numberable_id` = `a`.`id` \
WHERE `b`.`phone_numberable_type` = "ConferenceInvitee" \
AND `a`.`conference_id` = ' .. self.id .. ' \
AND `b`.`number` IN (\'' .. table.concat(phone_numbers, "','") .. '\') \
LIMIT 1';
statt
local sql_query = 'SELECT `a`.* \
FROM `conference_invitees` `a` \
JOIN `phone_numbers` `b` ON `b`.`phone_numberable_id` = `a`.`id` \
WHERE `b`.`phone_numberable_type` = "ConferenceInvitee" \
AND `a`.`conference_id` = ' .. self.id .. ' \
AND `b`.`number` IN ("' .. table.concat(phone_numbers, "','") .. '") \
LIMIT 1';