Schleife für Tasterdruck

Ich habe mir für meine Sonossteuerung ein Script ausgedacht, mit dem solange ich eine Taste meines Remotec Controllers gedrückt halte, in meinem virtuellen Modul von Sonos der Lautstärkeerhöhen Button(je +10) gedrückt wird.

--[[
%% properties
%% globals
--]]
if 
tonumber(fibaro:getGlobalValue("TasterA1")) == tonumber("1") then
repeat
 fibaro:call(66, "pressButton", "9");   
 fibaro:sleep(300)
  elseif
  end

Wenn ich die Schleife ausführe erhalte ich folgende Fehlermeldung:
[DEBUG]14:11:37:untilexpected (to close repeatat line 7)nearelseif
was muß ich im Script ändern, damit es läuft.
Viele Grüße Salve

https://www.lua.org/pil/4.3.3.html

Gruß

Danke, ich habe weiter probiert und es etwas anders gelöst.

--[[
%% properties
%% globals
--]]
while
tonumber(fibaro:getGlobalValue("TasterA1")) == tonumber("1")
do
 fibaro:call(66, "pressButton", "9");   
 fibaro:sleep(300)
  end
while
tonumber(fibaro:getGlobalValue("TasterA2")) == tonumber("1")
do
 fibaro:call(66, "pressButton", "7");;   
 fibaro:sleep(300)
end

Weiß zwar nicht, ob das umständlicher ist, aber es funktioniert, ich kann jetzt laut und leise regeln, bin echt happy.
Viele Grüße Salve.