TCAdmin 2

Overview


TC Admin 2 is a game hosting control panel with powerful features designed to help providers to save time and money managing their servers. TC Admin 2 module for Hostbill lets you sell Game and Voice servers. The module provides multiple options for product configuration and enables to bill for number of voice/game slots directly from HostBill.

Activating the module


  1. If the module is included in your HostBill edition you can download it from your client portal.
  2. If the module is not included in your HostBill edition you can purchase it from our marketplace and then download it from the client area.
  3. Once you download the module extract it in the main HostBill directory.
  4. Go to Settings → Modules → Hosting Modules, find and activate TCAdmin2 module.

Ensure you have billing API enabled in your TCAdmin 2 Settings - learn more

Connecting HostBill with TCAdmin2


  1. Proceed to Settings → Apps → Add new App
  2. From Applications list select TCAdmin2
  3. Enter:
    • Name - Name of this connection
    • IP Address
    • Username
    • Password
    • Port

      4. Verify entered credentials by clicking Test Connection to check if HostBill can connect
      5. Save Changes


Adding TCAdmin2 Product


  1. In HostBill go to Settings → Products & Services, and Add new order page
  2. From Order Types select Other Services
  3. Enter your orderpage name, select orderpage template. Save Changes
  4. Add new product in the new orderpage. Provide product name and setup price and then Save Changes.
  5. In product configuration section proceed to Connect with App, select TCAdmin2 and App server created in previous steps.
  6. You will be presented with following configuration options:

 


Config File
The file that contains the default values used for the TCAdmin billing API. This file contains more options not shown (commandline parameters, service level, game switching, etc). The default file is default.php

Game ID
The game ID that will be created. If sent blank a game server will not be created. Use "Get values from server" to load available games. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Game Slots
The number of slots that the game server will have. If sent blank a game server will not be created. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Game Private
Tick "Yes" if the game server is private. "No" if the game server is public. Default value is 0. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Game Branded
Tick "Yes" if the game server is branded. "No" if the game server is not branded. Default value is 0. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Game Datacenter
The datacenter ID where the game server will be created. This is required if creating a game server, can be set blank if in related config file skip_page is set to 1. You can also allow customer to select Datacenter/Location during order by ticking "Allow client to adjust during order" option.

Game Hostname
The game server's hostname. If the hostname is not specified it will be generated automatically. To enable hostname field for this product, set it in Components::Domains

Game RCon Password
The game server's RCon password. If the RCon password is not specified it will be generated automatically. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Game Private Password
The game server's private password. If the private password is not specified it will be generated automatically. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Voice ID
The voice ID that will be created. To create a Teamspeak 2 virtual server the value must be TEAMSPEAK. To create a Teamspeak 3 virtual server the value must be TEAMSPEAK3. If sent as NONE a voice server will not be created. If the value sent is TEAMSPEAK3 you can also send values for upload and download quotas in config file (voice_upload_quota and voice_download_quota)

Voice Slots
The number of slots that the voice server will have. If a valid voice ID is sent and this value is sent blank it will use the value of Game Slots. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Voice Branded
Tick "Yes" if the voice server is private. "No" if the voice server is public. Default value is 0. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Voice Datacenter
The datacenter ID where the voice server will be created. This is required if creating a game server.  This is required if creating a game server, can be set blank if in related config file skip_page is set to 1. You can also allow customer to select Datacenter/Location during order by ticking "Allow client to adjust during order" option.

Voice Hostname
The voice server's hostname. If the hostname is not specified it will be generated automatically. 

Voice RCon Password
The voice server's RCon password. If the RCon password is not specified it will be generated automatically. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.

Voice Private Password
The voice server's private password. If the private password is not specified it will be generated automatically. You can also use "Allow client to adjust during order" option to auto-add Component::Form that can be filled/selected by customer during Order + optionally add charge to certain values.


For more generic product configuration details including price, automation, emails settings refer to Product Configuration article.

Configuring Client Functions   


In Products & Services → Your Order Page → Your Product → Client Functions you can control what features customer will have access to in client portal, by clicking Enable/Disable next to the given option.
Use Edit button to adjust function appearance in the client portal.

For TCAdmin2 you can enable the following client functions dedicated to this module:

  1. Start/Stop server - allow customer to start/stop their TCAdmin Game server

As well as number of standard client functions, such as

  1. Change Billing Cycle
  2. Change Label
  3. Change Ownership
  4. Edit Forms
  5. Graphs
  6. Login Details
  7. Manual Service Renew
  8. New Direct Link
  9. Related Services
  10. Service Auto Renewal

 

 Custom Config File, custom API values


In some cases you might need to set different API values or execute custom code for a specific game. To use different config files for a game you can create a new text file with .php extension in the includes/modules/Hosting/tcadmin2/configs directory

<?php
  include('default.php');
  //Your code here
?>

For game servers:

$data["gamevar_VariableName"] = "value";


For voice servers:

$data["voicevar_VariableName"] = "value";


Minecraft example:

$data["gamevar_Xms"] = "2048";
$data["gamevar_Xmx"] = "2048";


The following example sends a different game ID depending on the location selected by the client

<?php
include('default.php');
switch ($data["game_datacenter"])
{
case "1":
  $data["game_id"] = 11;
  break;
case "2":
  $data["game_id"] = 12;
  break;
}
?>

 

Reseller Packages


 To create reseller packages leave all the game and voice information blank. Create new config file as described above with these lines:

<?php
  include('default.php');
 $data["role_id"]="3"; //The reseller role id to assign to the user.
 $data["package_id"]="1"; //The reseller package id to assign to the user.


Troubleshooting


  • The values sent to TCAdmin are saved in the log file /home/tcadmin/Logs/Web/BillingApi.LastCommand.log or C:\Program Files\TCAdmin2\Logs\Web\BillingApi.LastCommand.log Make sure TCAdmin is receiving the correct values. The values required to create a game server are: game_id, game_slots, game_datacenter.
  • If TCAdmin accepts the values a scheduled task is created. If the game server is never created go to System → General Settings → Scheduled Tasks. Select the Day view and click on the task that was created. You should see the error message preventing the game server from being created. Correct the problem and start the task again. You don't need to send the command  again.