Skip to content

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

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