Невозможно подключить удаленный сервер к Smartfox с unity3d

Я пытаюсь подключить smartfoxserver к unity3d. местная машина работает нормально. Но когда я попробовал на своем сервере ip как xx.xx.xx.xx, выдавалась ошибка вроде:

Что я должен делать?

Http error creating http connection: System.Net.Sockets.SocketException: Connection refused
  at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP, Boolean requireSocketPolicy) [0x00000] in <filename unknown>:0 
  at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x00000] in <filename unknown>:0 
  at System.Net.Sockets.TcpClient.Connect (System.Net.IPEndPoint remote_end_point) [0x00000] in <filename unknown>:0 
  at System.Net.Sockets.TcpClient.Connect (System.Net.IPAddress[] ipAddresses, Int32 port) [0x00000] in <filename unknown>:0 
UnityEngine.Debug:Log(Object)
SFS2X_Connect:OnConnection(BaseEvent) (at Assets/SFS2X_Connect.cs:31)
Sfs2X.Core.EventDispatcher:DispatchEvent(BaseEvent)
Sfs2X.SmartFox:ProcessEvents()
SFS2X_Connect:Update() (at Assets/SFS2X_Connect.cs:37)

код подключения показан ниже

public class SFS2X_Connect : MonoBehaviour {

    public string ServerIP = "xxx.xxx.xxx.xxx";
    public int ServerPort = 9933;

    SmartFox sfs;

    void Start () {
        sfs = new SmartFox ();

        sfs.ThreadSafeMode = true;

        sfs.AddEventListener (SFSEvent.CONNECTION, OnConnection);

        sfs.Connect (ServerIP, ServerPort);

    }

    void OnConnection(BaseEvent evt)
    {
        if ((bool)evt.Params ["success"]) {
            Debug.Log ("Successfully Connected");
        } 
        else {
            Debug.Log ((string)evt.Params["errorMessage"]);
        }
    }

    void Update () {
        sfs.ProcessEvents();

    }

}

1 ответ

Решение

Создайте ConfigData и передайте его sfs для подключения:

    ConfigData cfg = new ConfigData();
    cfg.Host = "x.x.x.x";
    cfg.Port = 9932;
    cfg.Zone = loginZone;
    cfg.Debug = true;
    smartFox.Connect(cfg);
Другие вопросы по тегам