Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
PHP osConsoleCommand V1.02
#1
Eine Mini Web Anwendung um Konsolenbefehle an OpenSim zu senden.

   
Firefox Browser Ansicht

Der Sinn der Mini Web Anwendung ist es mal eben einen alert zu senden, oder den Simulator über ein Script zu sichern.
Natürlich sind alle Konsolen befehle möglich, und dies auch mal eben vom Handy.
Es ist in jedem Browser oder Gerät mit Internet Browser aufrufbar.
Allerdings sind einige Befehle wie show *** sinnlos da ja nichts angezeigt wird.
Die Oberfläche der Mini Web Anwendung passt sich eurer anzeige an.


Code:
<!DOCTYPE html><html><head><meta charset="utf-8">
<!--
    OpenSim Console Commands V1.02 by Manfred Aabye
 -->
<title>OS Console</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<link rel="stylesheet" href="https://www.w3schools.com/lib/w3-theme-blue-grey.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<body class="w3-theme-l4">

<div style="min-width:400px">

<!-- Kopfzeile -->
    <div class="w3-button w3-bar w3-large w3-theme-d4" onclick="w3_open()"><a href="#" class="w3-bar-item w3-button"><i class="fa fa-bars"></i></a></button>
    <span class="w3-bar-item">OpenSimulator Console Commands</span>
    </div>

<!-- Sidebar -->
<div class="w3-sidebar w3-bar-block w3-card w3-animate-left" style="width:300px;display:none" id="commandsbar">
  <button onclick="w3_close()" class="w3-bar-item w3-button w3-large">Close &times;</button>
    <span class="w3-bar-item">alert</span>
    <span class="w3-bar-item">alert-user</span>
    <span class="w3-bar-item">appearance find</span>
    <span class="w3-bar-item">appearance rebake</span>
    <span class="w3-bar-item">appearance send</span>
    <span class="w3-bar-item">backup</span>
    <span class="w3-bar-item">bypass permissions</span>
    <span class="w3-bar-item">change region</span>
    <span class="w3-bar-item">clear image queues</span>
    <span class="w3-bar-item">command-script</span>
    <span class="w3-bar-item">config get</span>
    <span class="w3-bar-item">config save</span>
    <span class="w3-bar-item">config set</span>
    <span class="w3-bar-item">create region</span>
    <span class="w3-bar-item">debug attachments log</span>
    <span class="w3-bar-item">debug eq</span>
    <span class="w3-bar-item">debug groups messaging verbose</span>
    <span class="w3-bar-item">debug groups verbose</span>
    <span class="w3-bar-item">debug http</span>
    <span class="w3-bar-item">debug jobengine</span>
    <span class="w3-bar-item">debug permissions</span>
    <span class="w3-bar-item">debug scene set</span>
    <span class="w3-bar-item">debug scripts log</span>
    <span class="w3-bar-item">debug threadpool level</span>
    <span class="w3-bar-item">debug threadpool set</span>
    <span class="w3-bar-item">debug xengine log</span>
    <span class="w3-bar-item">delete object creator</span>
    <span class="w3-bar-item">delete object id</span>
    <span class="w3-bar-item">delete object name</span>
    <span class="w3-bar-item">delete object outside</span>
    <span class="w3-bar-item">delete object owner</span>
    <span class="w3-bar-item">delete object pos</span>
    <span class="w3-bar-item">delete-region</span>
    <span class="w3-bar-item">dump asset</span>
    <span class="w3-bar-item">dump object id</span>
    <span class="w3-bar-item">edit scale</span>
    <span class="w3-bar-item">estate create</span>
    <span class="w3-bar-item">estate link region</span>
    <span class="w3-bar-item">estate set name</span>
    <span class="w3-bar-item">estate set owner</span>
    <span class="w3-bar-item">export-map</span>
    <span class="w3-bar-item">generate map</span>
    <span class="w3-bar-item">get log level</span>
    <span class="w3-bar-item">j2k decode</span>
    <span class="w3-bar-item">kick user</span>
    <span class="w3-bar-item">land clear</span>
    <span class="w3-bar-item">link-mapping</span>
    <span class="w3-bar-item">link-region</span>
    <span class="w3-bar-item">load iar</span>
    <span class="w3-bar-item">load oar</span>
    <span class="w3-bar-item">load xml</span>
    <span class="w3-bar-item">load xml2</span>
    <span class="w3-bar-item">login disable</span>
    <span class="w3-bar-item">login enable</span>
    <span class="w3-bar-item">physics get</span>
    <span class="w3-bar-item">physics set</span>
    <span class="w3-bar-item">region restart abort</span>
    <span class="w3-bar-item">region restart bluebox</span>
    <span class="w3-bar-item">region restart notice</span>
    <span class="w3-bar-item">remove-region</span>
    <span class="w3-bar-item">reset user cache</span>
    <span class="w3-bar-item">restart</span>
    <span class="w3-bar-item">rotate scene</span>
    <span class="w3-bar-item">save iar</span>
    <span class="w3-bar-item">save oar</span>
    <span class="w3-bar-item">save prims xml2</span>
    <span class="w3-bar-item">save xml</span>
    <span class="w3-bar-item">save xml2</span>
    <span class="w3-bar-item">scale scene</span>
    <span class="w3-bar-item">scripts resume</span>
    <span class="w3-bar-item">scripts start</span>
    <span class="w3-bar-item">scripts stop</span>
    <span class="w3-bar-item">scripts suspend</span>
    <span class="w3-bar-item">set log level</span>
    <span class="w3-bar-item">set terrain heights</span>
    <span class="w3-bar-item">set terrain texture</span>
    <span class="w3-bar-item">set water height</span>
    <span class="w3-bar-item">shutdown</span>
    <span class="w3-bar-item">sit user name</span>
    <span class="w3-bar-item">stand user name</span>
    <span class="w3-bar-item">sun current_time</span>
    <span class="w3-bar-item">sun day_length</span>
    <span class="w3-bar-item">sun day_night_offset</span>
    <span class="w3-bar-item">sun day_time_sun_hour_scale</span>
    <span class="w3-bar-item">sun update_interval</span>
    <span class="w3-bar-item">sun year_length</span>
    <span class="w3-bar-item">teleport user</span>
    <span class="w3-bar-item">terrain bake</span>
    <span class="w3-bar-item">terrain effect</span>
    <span class="w3-bar-item">terrain elevate</span>
    <span class="w3-bar-item">terrain fill</span>
    <span class="w3-bar-item">terrain flip</span>
    <span class="w3-bar-item">terrain load</span>
    <span class="w3-bar-item">terrain load-tile</span>
    <span class="w3-bar-item">terrain lower</span>
    <span class="w3-bar-item">terrain max</span>
    <span class="w3-bar-item">terrain min</span>
    <span class="w3-bar-item">terrain modify</span>
    <span class="w3-bar-item">terrain multiply</span>
    <span class="w3-bar-item">terrain newbrushes</span>
    <span class="w3-bar-item">terrain rescale</span>
    <span class="w3-bar-item">terrain revert</span>
    <span class="w3-bar-item">terrain save</span>
    <span class="w3-bar-item">terrain save-tile</span>
    <span class="w3-bar-item">tree active</span>
    <span class="w3-bar-item">tree freeze</span>
    <span class="w3-bar-item">tree load</span>
    <span class="w3-bar-item">tree plant</span>
    <span class="w3-bar-item">tree rate</span>
    <span class="w3-bar-item">tree reload</span>
    <span class="w3-bar-item">tree remove</span>
    <span class="w3-bar-item">unlink-region</span>
    <span class="w3-bar-item">vivox debug</span>
    <span class="w3-bar-item">wind base wind_update_rate</span>
    <span class="w3-bar-item">wind ConfigurableWind avgDirection</span>
    <span class="w3-bar-item">wind ConfigurableWind avgStrength</span>
    <span class="w3-bar-item">wind ConfigurableWind rateChange</span>
    <span class="w3-bar-item">wind ConfigurableWind varDirection</span>
    <span class="w3-bar-item">wind ConfigurableWind varStrength</span>
    <span class="w3-bar-item">wind SimpleRandomWind strength</span>
    <span class="w3-bar-item">windlight disable</span>
    <span class="w3-bar-item">windlight enable</span>
    <span class="w3-bar-item">windlight load</span>
    <span class="w3-bar-item">.</span>
    <span class="w3-bar-item">.</span>
</div>

<!-- Post es klingelt das Telefon -->
<?php if (!isset($_POST['telefon'])): ?>

<!-- Start Abfrage Nutzer -->
<form class="w3-container" action="" method="post">
    <input type="hidden" name="telefon" value="1" />
    
<!-- OpenSim Einstellung -->
    <div class="w3-row w3-section">
    <p><label class="w3-text"><i class="fa fa-cogs" style="font-size:48px;color:grey"></i></label></p>
    <p><label for="base" class="w3-label control-label"><i class="fa fa-pencil" style="font-size:24px"></i>  OpenSim IP:</b></label></p>
        <div class="w3-third">
            <p><input class="w3-input w3-border" type="text" placeholder="OpenSim IP" name="OpenSim_IP"/></p>
        </div>
    </div>
 
    <div class="w3-row w3-section">
    <p><label for="base" class="w3-label control-label"><i class="fa fa-pencil" style="font-size:24px"></i>  OpenSim Port:</b></label></p>
        <div class="w3-third">
            <p><input class="w3-input w3-border" type="text" placeholder="OpenSim Port" name="OpenSim_Port"/></p>
        </div>
    </div>

     <div class="w3-row w3-section">
    <p><label for="base" class="w3-label control-label"><i class="fa fa-pencil" style="font-size:24px"></i>  OpenSim Password:</b></label></p>
        <div class="w3-third">
            <p><input class="w3-input w3-border" type="password" placeholder="OpenSim Password" name="OpenSim_Password"/></p>
        </div>
    </div>
    

<!-- Command Eingabe -->
     <div class="w3-row w3-section">
    <p><label class="w3-text"><i class="glyphicon glyphicon-file" style="font-size:48px;color:grey"></i></label></p>
    <p><label for="base" class="w3-label control-label"><i class="fa fa-pencil" style="font-size:24px"></i>  OpenSim Command:</b></label></p>
        <div class="w3-third">
            <input class="w3-input w3-border w3-light-grey" type="text" placeholder="OpenSim Command" name="OpenSim_Command"/>
        </div>
    </div>
<br>

<!-- Command Button -->
    <div class="w3-row w3-section">
    <div class="w3-third">
        <button class="w3-btn w3-blue-grey w3-half w3-border" type="submit" name="submit"><i class="fa fa-mail-forward" style="font-size:24px"></i>  Send OpenSim Command</button>
        <button class="w3-btn w3-blue-grey w3-half w3-border" type="reset" name="Reset"><i class="fa fa-mail-reply" style="font-size:24px"></i>  Data Reset</button>
    </div>
    </div>
</form>
<?php endif ?>    
</div>

<?php
// Eingaben auswerten und Senden
function senden()
{
    if (isset($_POST['telefon']) AND $_POST['telefon'] == 1)
        {
            // wir schaffen unsere Variablen und alle Leerzeichen beiläufig entfernen    

            $OpenSim_IP   = trim($_POST['OpenSim_IP']);
            $OpenSim_Port   = trim($_POST['OpenSim_Port']);
            $OpenSim_Password  = $_POST['OpenSim_Password'];
            $OpenSim_Command   = trim($_POST['OpenSim_Command']);

            // Einlesen der RemoteAdmin Datei.
            include('RemoteAdmin.php');
            
            // Mit OpenSim verbinden
            $myRemoteAdmin = new RemoteAdmin($OpenSim_IP, $OpenSim_Port, $OpenSim_Password);
            
            // OpenSim Konsolenbefehl samt parameter senden
            $parameters = array('command' => $OpenSim_Command);
            $myRemoteAdmin->SendCommand('admin_console_command', $parameters);
            // Jetzt die Seite neu starten
            ?><meta http-equiv="refresh" content="0; URL=./ConsoleCommand.php"><?php
        }
}

// Die Funktion senden aufrufen
senden();
?>

<!-- Sidebar abfrage -->
<script>
function w3_open() {
  document.getElementById("commandsbar").style.display = "block";
}

function w3_close() {
  document.getElementById("commandsbar").style.display = "none";
}
</script>

</div>
</body>
</html>    

Eistellungen in der Opensim.ini

[RemoteAdmin]
enabled = true
access_password = euer_Passwort
enabled_methods = all


Weitere Informationen:
http://opensimulator.org/wiki/RemoteAdmin


Download:
https://github.com/BigManzai/osConsoleCommand
[Bild: attachment.php?aid=2009]
Antworten }
Thanks given by: Otto vonOtter
#2
Hier ist noch ein kleines Backup Script mit dem Namen backup.txt,
welches alle eure Regionen mit einer Befehlszeile sichert.
Der Speicherort für die backup.txt Datei ist im /bin Verzeichnis eures OpenSimulators.
Achtung!!! command-script ist ein OpenSim Konsolen Kommando und kein Linux oder Windows Befehl.

backup.txt
Code:
change region root
alert "Alle Regionen werden jetzt gesichert!"
change region Welcome
save oar Welcome.oar
change region Home
save oar Home.oar
change region Begin
save oar Begin.oar
change region Sandbox
save oar Sandbox.oar
change region Fantasy
save oar Fantasy.oar
change region xTra
save oar xTra.oar
change region root
alert "Die Sicherung aller Regionen wurde fertiggestellt!"


Tragt bitte eure Regionsnamen ein und startet das Script dann folgendermaßen:
command-script backup.txt

Was passiert hier:
change region root aktiviert alle Regionen,
damit der alert (Nachricht) an alle Regionen gesandt wird.
Mit change region Welcome wird die Region Welcome aktiviert.
Mit save oar Welcome.oar wird die Region mit Tar Gz gepackt und in Welcome.oar gespeichert.
Und so geht das für jede Region weiter…
Zum Schluss wird noch einmal eine Nachricht gesandt das Backup fertig gestellt ist

Hier noch ein Paar Konsolen befehle,
aber bitte aufpassen ihr könnt euch auch euren Simulator killen.

Code:
alert <message> - Send an alert to everyone
alert-user <first> <last> <message> - Send an alert to a user
appearance find <uuid-or-start-of-uuid> - Find out which avatar uses the given asset as a baked texture, if any.
appearance rebake <first-name> <last-name> - Send a request to the user's viewer for it to rebake and reupload its appearance textures.
appearance send [<first-name> <last-name>] - Send appearance data for each avatar in the simulator to other viewers.
backup - Persist currently unsaved object changes immediately instead of waiting for the normal persistence call.
bypass permissions <true / false> - Bypass permission checks
change region <region name> - Change current console region
clear image queues <first-name> <last-name> - Clear the image queues (textures downloaded via UDP) for a particular client.
command-script <script> - Run a command script from file
config save <path> - Save current configuration to a file at the given path
config set <section> <key> <value> - Set a config option.  In most cases this is not useful since changed parameters are not dynamically reloaded.  Neither do changed parameters persist - you will have to change a config file manually and restart.
create region ["region name"] <region_file.ini> - Create a new region.
debug attachments log [0|1] - Turn on attachments debug logging
debug eq [0|1|2] - Turn on event queue debugging
 <= 0 - turns off all event queue logging
 >= 1 - turns on event queue setup and outgoing event logging
 >= 2 - turns on poll notification
debug groups messaging verbose <true|false> - This setting turns on very verbose groups messaging debugging
debug groups verbose <true|false> - This setting turns on very verbose groups debugging
debug http <in|out|all> [<level>] - Turn on http request logging.
debug jobengine <start|stop|status|log> - Start, stop, get status or set logging level of the job engine.
debug permissions <true / false> - Turn on permissions debugging
debug scene set <param> <value> - Turn on scene debugging options.
debug scripts log <item-id> <log-level> - Extra debug logging for a particular script.
debug threadpool level 0..3 - Turn on logging of activity in the main thread pool.
debug threadpool set worker|iocp min|max <n> - Set threadpool parameters.  For debug purposes.
debug xengine log [<level>] - Turn on detailed xengine debugging.
delete object creator <UUID> - Delete scene objects by creator
delete object id <UUID-or-localID> - Delete a scene object by uuid or localID
delete object name [--regex] <name> - Delete a scene object by name.
delete object outside - Delete all scene objects outside region boundaries
delete object owner <UUID> - Delete scene objects by owner
delete object pos <start x, start y , start z> <end x, end y, end z> - Delete scene objects within the given volume.
delete-region <name> - Delete a region from disk
dump asset <id> - Dump an asset
dump object id <UUID-or-localID> - Dump the formatted serialization of the given object to the file <UUID>.xml
edit scale <name> <x> <y> <z> - Change the scale of a named prim
estate create <owner UUID> <estate name> - Creates a new estate with the specified name, owned by the specified user. Estate name must be unique.
estate link region <estate ID> <region ID> - Attaches the specified region to the specified estate.
estate set name <estate-id> <new name> - Sets the name of the specified estate to the specified value. New name must be unique.
estate set owner <estate-id>[ <UUID> | <Firstname> <Lastname> ] - Sets the owner of the specified estate to the specified UUID or user.
export-map [<path>] - Save an image of the world map
fcache assets - Attempt a deep scan and cache of all assets in all scenes
fcache clear [file] [memory] - Remove all assets in the cache.  If file or memory is specified then only this cache is cleared.
fcache expire <datetime> - Purge cached assets older then the specified date/time
fcache status - Display cache status
force gc - Manually invoke runtime garbage collection.  For debugging purposes
force permissions <true / false> - Force permissions on or off
force update - Force the update of all objects on clients
generate map - Generates and stores a new maptile.
j2k decode <ID> - Do JPEG2000 decoding of an asset.
kick user <first> <last> [--force] [message] - Kick a user off the simulator
land clear - Clear all the parcels from the region.
link-mapping [<x> <y>] - Set local coordinate to map HG regions to
link-region <Xloc> <Yloc> <ServerURI> [<RemoteRegionName>] - Link a HyperGrid Region. Examples for <ServerURI>: http://grid.net:8002/ or http://example.org/path/foo.php
load iar [-m|--merge] <first> <last> <inventory path> <password> [<IAR path>] - Load user inventory archive (IAR).
load oar [-m|--merge] [-s|--skip-assets] [--default-user "User Name"] [--force-terrain] [--force-parcels] [--no-objects] [--rotation degrees] [--bounding-origin "<x,y,z>"] [--bounding-size "<x,y,z>"] [--displacement "<x,y,z>"] [-d|--debug] [<OAR path>] - Load a region's data from an OAR archive.
load xml [<file name> [-newUID [<x> <y> <z>]]] - Load a region's data from XML format
load xml2 [<file name>] - Load a region's data from XML2 format
login disable - Disable simulator logins
login enable - Enable simulator logins
physics list - List settable physics parameters
physics set <param> [<value>|TRUE|FALSE] [localID|ALL] - Set physics parameter from currently selected region
quit - Quit the application
region restart abort [<message>] - Abort a region restart
region restart bluebox <message> <delta seconds>+ - Schedule a region restart
region restart notice <message> <delta seconds>+ - Schedule a region restart
region set - Set control information for the currently selected region.
remove-region <name> - Remove a region from this simulator
reset user cache - reset user cache to allow changed settings to be applied
restart - Restart the currently selected region(s) in this instance
rotate scene <degrees> [centerX, centerY] - Rotates all scene objects around centerX, centerY (default 128, 128) (please back up your region before using)
save iar [-h|--home=<url>] [--noassets] <first> <last> <inventory path> <password> [<IAR path>] [-c|--creators] [-e|--exclude=<name/uuid>] [-f|--excludefolder=<foldername/uuid>] [-v|--verbose] - Save user inventory archive (IAR).
save oar [-h|--home=<url>] [--noassets] [--publish] [--perm=<permissions>] [--all] [<OAR path>] - Save a region's data to an OAR archive.
save prims xml2 [<prim name> <file name>] - Save named prim to XML2
save xml [<file name>] - Save a region's data in XML format
save xml2 [<file name>] - Save a region's data in XML2 format
scale scene <factor> - Scales the scene objects (please back up your region before using)
scripts resume [<script-item-uuid>+] - Resumes all suspended scripts
scripts start [<script-item-uuid>+] - Starts all stopped scripts
scripts stop [<script-item-uuid>+] - Stops all running scripts
scripts suspend [<script-item-uuid>+] - Suspends all running scripts
set log level <level> - Set the console logging level for this session.
set terrain heights <corner> <min> <max> [<x>] [<y>] - Sets the terrain texture heights on corner #<corner> to <min>/<max>, if <x> or <y> are specified, it will only set it on regions with a matching coordinate. Specify -1 in <x> or <y> to wildcard that coordinate. Corner # SW = 0, NW = 1, SE = 2, NE = 3, all corners = -1.
set terrain texture <number> <uuid> [<x>] [<y>] - Sets the terrain <number> to <uuid>, if <x> or <y> are specified, it will only set it on regions with a matching coordinate. Specify -1 in <x> or <y> to wildcard that coordinate.
set water height <height> [<x>] [<y>] - Sets the water height in meters.  If <x> and <y> are specified, it will only set it on regions with a matching coordinate. Specify -1 in <x> or <y> to wildcard that coordinate.
shutdown - Quit the application
sit user name [--regex] <first-name> <last-name> - Sit the named user on an unoccupied object with a sit target.
stand user name [--regex] <first-name> <last-name> - Stand the named user.
stats record start|stop - Control whether stats are being regularly recorded to a separate file.
stats save <path> - Save stats snapshot to a file.  If the file already exists, then the report is appended.
sun current_time [<value>] - time in seconds of the simulator
sun day_length [<value>] - number of hours to a day
sun day_night_offset [<value>] - induces a horizon shift
sun day_time_sun_hour_scale [<value>] - scales day light vs nite hours to change day/night ratio
sun help - list parameters that can be changed
sun list - list parameters that can be changed
sun update_interval [<value>] - how often to update the sun's position in frames
sun year_length [<value>] - number of days to a year
teleport user <first-name> <last-name> <destination> - Teleport a user in this simulator to the given destination
terrain bake -
terrain effect <name> -
terrain elevate <amount> -
terrain fill <value> -
terrain flip <direction> -
terrain load <filename> -
terrain load-tile <filename> <file width> <file height> <minimum X tile> <minimum Y tile> -
terrain lower <amount> -
terrain max <min> -
terrain min <min> -
terrain modify <operation> <value> [<area>] [<taper>] - Modifies the terrain as instructed.
Each operation can be limited to an area of effect:
* -ell=x,y,rx[,ry] constrains the operation to an ellipse centred at x,y
* -rec=x,y,dx[,dy] constrains the operation to a rectangle based at x,y
Each operation can have its effect tapered based on distance from centre:
* elliptical operations taper as cones
* rectangular operations taper as pyramids
terrain multiply <value> -
terrain newbrushes <Enabled?> -
terrain rescale <min> <max> -
terrain revert -
terrain save <filename> -
terrain save-tile <filename> <file width> <file height> <minimum X tile> <minimum Y tile> -
translate scene xOffset yOffset zOffset - translates the scene objects (please back up your region before using)
tree active <activeTF> -
tree freeze <copse> <freezeTF> -
tree load <filename> -
tree plant <copse> -
tree rate <updateRate> -
tree reload -
tree remove <copse> -
tree statistics -
unlink-region <local name> - Unlink a hypergrid region
vivox debug <on>|<off> - Set vivox debugging
wind base wind_update_rate [<value>] - Get or set the wind update rate.
wind ConfigurableWind avgDirection [<value>] - average wind direction in degrees
wind ConfigurableWind avgStrength [<value>] - average wind strength
wind ConfigurableWind rateChange [<value>] - rate of change
wind ConfigurableWind varDirection [<value>] - allowable variance in wind direction in +/- degrees
wind ConfigurableWind varStrength [<value>] - allowable variance in wind strength
wind SimpleRandomWind strength [<value>] - wind strength
windlight disable -
windlight enable -
windlight load -
[Bild: attachment.php?aid=2009]
Antworten }
Thanks given by:
#3
Version V1.02 jetzt mit kleiner Gedächnishilfe.
Einfach oben links auf den Hamburger drücken und eine Sidebar erscheind mit einigen OpenSim Befehlen/Funktionen.
Automatisch möchte ich das nicht einfügen sonst bin ich das hinterher schuld das ihr euch euren Simulator abschießt.
Aber man kann das per kopieren einfügen.

https://github.com/BigManzai/osConsoleCommand
[Bild: attachment.php?aid=2009]
Antworten }
Thanks given by:


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste