Skip to content

Conference Invitees mit mehr als einer Telefonnummer können "not_public" Konferenzen nicht betreten #331

@merin80

Description

@merin80

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';

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions