Проблемы с TeamSpeak 3 SDK

Я пытаюсь использовать TeamSpeak SDK для личного проекта, но код, который я написал, выдает мне странные ошибки.
Я много раз читал документацию, чтобы найти ошибку, но не понимаю, почему моя программа не может подключиться к серверу TeamSpeak.

Вот вывод из программы:

Client library version: 3.0.3.2 [Build: 1433933257] SDK
Connection Status changed to: 1, errorNumber: 0
Connection Status changed to: 0, errorNumber: 1797
failed connection initialization

Вот код программы

#include <iostream>
#include <fstream>
#include <cstring>
#include <teamspeak/clientlib.h>
#include <teamspeak/public_errors.h>

uint64 connectionHandler;

void destroy();

void event_connectStatusChanged(uint64 serverConnectionIDHandler, int newStatus, unsigned int errorNumber);
void event_serverError(uint64 serverConnectionHandlerID, const char* errorMessage, unsigned int error, const char* returnCode, const char* extraMessage);

int main()
{
ClientUIFunctions uiFunctions;
memset(&uiFunctions, 0, sizeof(struct ClientUIFunctions));

uiFunctions.onConnectStatusChangeEvent = event_connectStatusChanged;
uiFunctions.onServerErrorEvent = event_serverError;

unsigned int error = ts3client_initClientLib(&uiFunctions, NULL, LogType_FILE, NULL, "./");

if (error != ERROR_ok)
printf("Error initializing clientlib: %i\n", error);

char* version;
error = ts3client_getClientLibVersion(&version);
if (error != ERROR_ok) {
printf("Error querying clientlib version: %d\n", error);
return 0;
}

printf("Client library version: %s\n", version);  /* Print version */
ts3client_freeMemory(version);  /* Release string */

if (ts3client_spawnNewServerConnectionHandler(0, &connectionHandler) != ERROR_ok)
{
destroy();
return 0;
}

char* identity;
ts3client_createIdentity(&identity);
error = ts3client_startConnection(connectionHandler, identity, "127.0.0.1", 9987, "test", NULL, "", "");
ts3client_freeMemory(identity);

if (error != ERROR_ok)
std::cout << "Connection failed!" << std::endl;

getchar();

ts3client_stopConnection(connectionHandler, "...");

destroy();
return 0;
}

void event_connectStatusChanged(uint64 serverConnectionIDHandler, int newStatus, unsigned int errorNumber)
{
printf("Connection Status changed to: %i, errorNumber: %i\n", newStatus, errorNumber);
if (errorNumber != ERROR_ok)
{
char* error;
ts3client_getErrorMessage(errorNumber, &error);
std::cout << error << std::endl;
ts3client_freeMemory(error);
}
}

void event_serverError(uint64 serverConnectionHandlerID, const char* errorMessage, unsigned int error, const char* returnCode, const char* extraMessage)
{
std::cout << "ERROR: " << errorMessage << std::endl << "Extra Message: " << extraMessage << std::endl;
}

void destroy()
{
ts3client_destroyServerConnectionHandler(connectionHandler);
ts3client_destroyClientLib();
}

4

Решение

Похоже, ваш клиент падает сразу при подключении.

Вот несколько общих причин для проверки:

  • Сервер не существует по этому адресу.
  • Неверный пароль сервера
  • Канал по умолчанию не существует.
  • Клиент был забанен.
  • Сервер является незаконной установкой.
  • Уровень безопасности вашей личности слишком низкий.

Кроме того, эта ошибка может быть вызвана, когда такой компонент, как клиент, сервер и т. Д. Необходимо обновить:

Я обновился до последней версии, потому что бот не запускается и
решил, что я бы попробовал установить инсталляцию на другом сервере. Это
сейчас работает без нареканий.

Ref: https://forum.sinusbot.com/threads/new-connection-status-0-error-1797.2508/

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]