Jump to content

TS3 Master: Error occured. Time to clean up.


Stark

Recommended Posts

Hey there!

 

Due to complete data failure, I've had to reinstall TCAdmin and whatnot.

 

Now, after the reinstall, I cannot seem to create a TS3 server. After having set TCA in debug mode, this is what I see in the console:

 

(SNIP---Copy ALL the files!) 
Writing the configuration files
Writing the config file C:\TCAFiles\Users\stark\2\ts3server.ini
Wrote the config file C:\TCAFiles\Users\stark\2\ts3server.ini
Writing the config file C:\TCAFiles\Users\stark\2\query_ip_whitelist.txt
Wrote the config file C:\TCAFiles\Users\stark\2\query_ip_whitelist.txt
Executing event scripts for AfterCreate
Game has 4 scripts. Executing event: AfterCreate
Executing script 'Download defaults.sql and set serveradmin password'.
[b]An error occurred. Time to clean up. (CreateGameServer)[/b]
Deleting the service with id 2 from the database
Game has 4 scripts. Executing event: AfterDelete
The system cannot find the file specified
System.ComponentModel.Win32Exception: The system cannot find the file specified
  at Microsoft.Scripting.Actions.Calls.MethodCandidate.Caller.CallWithInstance(Object[] args, Boolean& shouldOptimize)
  at IronPython.Runtime.Types.BuiltinFunction.<>c__DisplayClass8.<MakeBuiltinFunctionDelegate>b__2(Object[] callArgs, Boolean& shouldOptimize)
  at IronPython.Runtime.Types.BuiltinFunction.BuiltinMethodCaller`1.Call0(CallSite site, CodeContext context, TFuncType func)
  at System.Dynamic.UpdateDelegates.UpdateAndExecute2[T0,T1,TRet](CallSite site, T0 arg0, T1 arg1)
  at Microsoft.Scripting.Interpreter.DynamicInstruction`3.Run(InterpretedFrame frame)
  at Microsoft.Scripting.Interpreter.Interpreter.RunInstructions(InterpretedFrame frame)
  at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
  at Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0 arg0, T1 arg1)
  at IronPython.Compiler.PythonScriptCode.RunWorker(CodeContext ctx)
  at IronPython.Compiler.RuntimeScriptCode.InvokeTarget(Scope scope)
  at Microsoft.Scripting.Hosting.ScriptSource.Execute(ScriptScope scope)
  at TCAdmin.SDK.Scripting.Engines.IronPythonEngine.Execute(Credentials credentials)
  at TCAdmin.SDK.Scripting.ScriptEngineManager.Execute()
  at TCAdmin.GameHosting.SDK.Objects.GameScript.ExecuteEventScripts(ScriptEngineManager scriptEngineManager, ServiceEvent eventScript, ObjectList scripts)
  at TCAdmin.GameHosting.Automation.AutomationProcesses.?()
  at TCAdmin.GameHosting.Automation.AutomationProcesses.Start()
  at TCAdmin.TaskScheduler.ModuleApi.StepBase.Start(Object arguments)

 

Any ideas as to why this is happening? Would it be a problem that I'm currently running things on Windows Server 2016?

Link to comment
Share on other sites

Interestingly enough, it's the default script (I haven't added this, came like this with TCA). As far as I can see, I see nothing wrong?

 

import clr;
import System;

clr.AddReference("TCAdmin.SDK")

from System import String, Environment, PlatformID;
from System.IO import Path, File;
from System.Diagnostics import Process;
from System.Threading import Thread;
from TCAdmin.SDK.Misc import WebClient;
from TCAdmin.SDK import MonitorConfiguration;
from TCAdmin.SDK.Objects import Server;

#-- Download suggested default permissions and virtual server settings for ATHPs
#-- https://support.teamspeakusa.com/index.php?/Knowledgebase/Article/View/318/0/how-do-i-prevent-customers-from-increasing-their-slots
wc = WebClient();
wc.DownloadFile("http://media.teamspeak.com/literature/defaults.sql", Path.Combine(ThisService.RootDirectory, "sql/defaults.sql"));

#-- Set serveradmin password
if Environment.OSVersion.Platform == PlatformID.Win32NT :
p = Process();
p.StartInfo.FileName=ThisService.Executable;
p.StartInfo.Arguments=String.Format("serveradmin_password={0} create_default_virtualserver=0 logappend=1 no_password_dialog=1", ThisService.Variables["RConPassword"]);
p.StartInfo.WorkingDirectory=ThisService.WorkingDirectory;
p.Start();

Thread.Sleep(5000);
if not p.HasExited :
 p.Kill();

else:
runas=ThisService.GetServiceCredentials().User;
p = Process();
p.StartInfo.FileName="chown";
p.StartInfo.Arguments=String.Format("--recursive {0}:{0} {1}", runas, ThisService.WorkingDirectory);
p.Start();
p.WaitForExit();

p = Process();
p.StartInfo.FileName="su";
p.StartInfo.Arguments=String.Format("{0} -c\"./ts3server_startscript.sh start serveradmin_password={1} create_default_virtualserver=0 logappend=1 no_password_dialog=1\"", runas, ThisService.Variables["RConPassword"]);
p.StartInfo.WorkingDirectory=ThisService.WorkingDirectory;
p.Start();
p.WaitForExit();

Thread.Sleep(5000);

p = Process();
p.StartInfo.FileName=Path.Combine(ThisService.WorkingDirectory, "ts3server_startscript.sh");
p.StartInfo.Arguments="stop";
p.StartInfo.WorkingDirectory=ThisService.WorkingDirectory;
p.Start();
p.WaitForExit();
 
#-- Add master server's IP to whitelist if needed
if not ThisService.ServerId.Equals(MonitorConfiguration.MasterServerId) :
File.AppendAllText(Path.Combine(ThisService.WorkingDirectory, "query_ip_whitelist.txt"), Environment.NewLine + Server.GetServerFromCache(MonitorConfiguration.MasterServerId).PrimaryIp);

 

Now, ignoring execution error of the script gets me slightly further, but I do meet a somewhat similar issue.

 

Executing event scripts for AfterCreate
Game has 4 scripts. Executing event: AfterCreate
Executing script 'Download defaults.sql and set serveradmin password'.
An error occurred while executing the script with game id 104 and script id 2. Error: System.ComponentModel.Win32Exception: The system cannot find the file specified
  at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
  at Microsoft.Scripting.Utils.InvokeHelper`2.Invoke(Object arg0)
  at Microsoft.Scripting.Actions.Calls.MethodCandidate.Caller.CallWithInstance(Object[] args, Boolean& shouldOptimize)
  at IronPython.Runtime.Types.BuiltinFunction.<>c__DisplayClass8.<MakeBuiltinFunctionDelegate>b__2(Object[] callArgs, Boolean& shouldOptimize)
  at IronPython.Runtime.Types.BuiltinFunction.BuiltinMethodCaller`1.Call0(CallSite site, CodeContext context, TFuncType func)
  at System.Dynamic.UpdateDelegates.UpdateAndExecute2[T0,T1,TRet](CallSite site, T0 arg0, T1 arg1)
  at Microsoft.Scripting.Interpreter.DynamicInstruction`3.Run(InterpretedFrame frame)
  at Microsoft.Scripting.Interpreter.Interpreter.RunInstructions(InterpretedFrame frame)
  at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
  at Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0 arg0, T1 arg1)
  at IronPython.Compiler.PythonScriptCode.RunWorker(CodeContext ctx)
  at IronPython.Compiler.RuntimeScriptCode.InvokeTarget(Scope scope)
  at Microsoft.Scripting.Hosting.ScriptSource.Execute(ScriptScope scope)
  at TCAdmin.SDK.Scripting.Engines.IronPythonEngine.Execute(Credentials credentials)
  at TCAdmin.SDK.Scripting.ScriptEngineManager.Execute()
  at TCAdmin.GameHosting.SDK.Objects.GameScript.ExecuteEventScripts(ScriptEngineManager scriptEngineManager, ServiceEvent eventScript, ObjectList scripts)
Configuring the game service
An error occurred. Time to clean up. (CreateGameServer)
Deleting the service with id 2 from the database
Game has 4 scripts. Executing event: AfterDelete
The file C:\TCAFiles\Users\admin\2\ts3server_win64.exe does not exist
System.IO.FileNotFoundException: The file C:\TCAFiles\Users\admin\2\ts3server_win64.exe does not exist
File name: 'C:\TCAFiles\Users\admin\2\ts3server_win64.exe'
  at TCAdmin.GameHosting.Automation.AutomationProcesses.?()
  at TCAdmin.GameHosting.Automation.AutomationProcesses.Start()
  at TCAdmin.TaskScheduler.ModuleApi.StepBase.Start(Object arguments)

Edited by Stark
Adding info.
Link to comment
Share on other sites

To me it looks like you are trying to run the ts3 server AS a service INSIDE TCAdmin.

I could be wrong, but that's not how it works. I do it differently;

I run it outside of TCA, TCA connects to it and creates voice services on it.

 

Did you follow the install instructions?

http://help.tcadmin.com/Teamspeak_Server_Configuration#Install_.26_Configure_the_Teamspeak_3_Master_server

 

My bad, that's new.

Link to comment
Share on other sites

To me it looks like you are trying to run the ts3 server AS a service INSIDE TCAdmin.

I could be wrong, but that's not how it works. I do it differently;

I run it outside of TCA, TCA connects to it and creates voice services on it.

 

Did you follow the install instructions?

http://help.tcadmin.com/Teamspeak_Server_Configuration#Install_.26_Configure_the_Teamspeak_3_Master_server

 

My bad, that's new.

 

Yes, I did follow the instructions. I simply don't understand why it wouldn't work, with a brand spanking new database and OS installation.

Link to comment
Share on other sites

Luis solved this quickly for me.

 

Solution:

Hi, it looks like teamspeak changed the name of the teamspeak executable. Go to settings > games > TS3 64 for Windows > In the files & directories tab change ts3server_win64.exe to ts3server.exe
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Terms of Use