protected virtual void InitClient(string tcp_host, int tcp_port, string web_socket_url = "")
        {
            if (LoggedIn)
            {
                Debug.LogWarning("[SnipeCommunicator] InitClient - already logged in");
                return;
            }

            if (Client == null)
            {
                Client         = SnipeClient.CreateInstance(SnipeConfig.Instance.snipe_client_key, this.gameObject);
                Client.AppInfo = SnipeConfig.Instance.snipe_app_info;
                Client.Init(tcp_host, tcp_port, web_socket_url);
                Client.ConnectionSucceeded += OnConnectionSucceeded;
                Client.ConnectionFailed    += OnConnectionFailed;
                Client.ConnectionLost      += OnConnectionFailed;
                Client.DebugEnabled         = this.DebugEnabled;
            }
            if (Client.Connected)
            {
                RequestLogin();
            }
            else
            {
                Client.Connect();
            }
        }
 public void Dispose()
 {
     if (mClient != null)
     {
         mClient.ConnectionLost  -= OnConnectionLost;
         mClient.MessageReceived -= OnMessageReceived;
         mClient = null;
     }
 }
        private void InitClient(SnipeClient client, SnipeServerConfig config, ExpandoObject request, Action <ExpandoObject> callback)
        {
            mRequestData = request;
            mCallback    = callback;

            mClient = client;
            mClient.Init(config.host, config.port, config.websocket);
            mClient.ConnectionSucceeded += OnConnectionSucceeded;
            mClient.ConnectionFailed    += OnConnectionFailed;
            mClient.ConnectionLost      += OnConnectionFailed;
            mClient.Connect();
        }
        public static void Request(SnipeServerConfig config, ExpandoObject request, Action <ExpandoObject> callback)
        {
            // ????
            //if (mClient != null)
            //	DisposeClient();

            SnipeClient client = SnipeClient.CreateInstance(SnipeConfig.Instance.snipe_client_key, "SnipeSingleRequestClient", false);

            client.AppInfo = SnipeConfig.Instance.snipe_app_info;
            SingleRequestClient instance = client.gameObject.AddComponent <SingleRequestClient>();

            instance.InitClient(client, config, request, callback);
        }
        private void DisposeClient()
        {
            Debug.Log($"[SingleRequestClient] ({mRequestData?.SafeGetString("messageType")}) DisposeClient");

            mCallback    = null;
            mRequestData = null;

            if (mClient == null)
            {
                return;
            }

            mClient.MessageReceived     -= OnResponse;
            mClient.ConnectionSucceeded -= OnConnectionSucceeded;
            mClient.ConnectionFailed    -= OnConnectionFailed;
            mClient.ConnectionLost      -= OnConnectionFailed;
            mClient.Dispose();
            mClient = null;
        }
Exemplo n.º 6
0
    void Start()
    {
        Log("Start");

        // Creating client
        mClient = SnipeClient.Instance; //new SnipeClient();

        // Adding events listeners
        mClient.ConnectionSucceeded += OnConnected;
        mClient.ConnectionFailed += OnConnectionFailed;
        mClient.ConnectionLost += OnConnectionLost;
        mClient.DataReceived += OnServerResponse;

        // Trying to connect
        Log("Trying to connect");

        //mClient.Connect(SERVER_HOST, SERVER_PORT);  // connect using TCP Client
        mClient.ConnectWebSocket(SERVER_HOST, SERVER_PORT);    // connect using WebSocket
        //mClient.ConnectWebSocket("ws://192.168.0.100:2501/");  // connect using WebSocket
    }
 public SnipeRequest(SnipeClient client, string message_type = null)
 {
     mClient      = client;
     mMessageType = message_type;
 }