Exemple #1
0
    void HandleDisconnectV2(OSCMessage message)
    {
        //Answer disconnect
        string disconnectIP   = message.Data[0].ToString();
        int    disconnectPort = (int)message.Data[1];

        if (message.Data.Count > 2)
        {
            string protocolType = message.Data[2].ToString();
            int    version      = (int)message.Data[3];
        }

        string disconnectID = GetIDFromIPAndPort(disconnectIP, disconnectPort);

        if (OSCMaster.Clients.ContainsKey(disconnectID))
        {
            OSCMaster.RemoveClient(disconnectID);

            if (debug)
            {
                Debug.Log("Removed output " + disconnectID);
            }

            _augmentaOutputs.Remove(disconnectID);
        }
    }
Exemple #2
0
 public void InitConnection()
 {
     if (OSCMaster.Clients.ContainsKey("AugmentaSimulatorOutput"))
     {
         OSCMaster.RemoveClient("AugmentaSimulatorOutput");
     }
     OSCMaster.CreateClient("AugmentaSimulatorOutput", IPAddress.Parse(OutputIP), OutputPort);
 }
Exemple #3
0
 /// <summary>
 /// Create client to send Augmenta message
 /// </summary>
 void CreateAugmentaClient()
 {
     //Create output client
     if (OSCMaster.Clients.ContainsKey("AugmentaSimulatorOutput"))
     {
         OSCMaster.RemoveClient("AugmentaSimulatorOutput");
     }
     OSCMaster.CreateClient("AugmentaSimulatorOutput", IPAddress.Parse(outputIP), outputPort);
 }
Exemple #4
0
    void HandleDisconnectV1(OSCMessage message)
    {
        //Answer disconnect
        string disconnectIP   = message.Data[0].ToString();
        int    disconnectPort = (int)message.Data[1];

        string disconnectID = GetIDFromIPAndPort(disconnectIP, disconnectPort);

        if (OSCMaster.Clients.ContainsKey(disconnectID))
        {
            OSCMaster.RemoveClient(disconnectID);

            if (debug)
            {
                Debug.Log("Removed output " + disconnectID);
            }

            _augmentaOutputs.Remove(disconnectID);
        }
    }
Exemple #5
0
    /// <summary>
    /// Increase output timers and delete timed out outputs
    /// </summary>
    void UpdateOutputsTimers()
    {
        _outputsToDelete.Clear();

        for (int i = 0; i < _augmentaOutputs.Count; i++)
        {
            _tmpOutput = _augmentaOutputs.ElementAt(i);

            //Increase output timers
            _augmentaOutputs[_tmpOutput.Key] = _tmpOutput.Value + Time.deltaTime;

            //Check for deletion only if connection timeout is strictly positive
            if (connectionTimeout <= 0)
            {
                continue;
            }

            //Mark for deletion
            if (_augmentaOutputs[_tmpOutput.Key] > connectionTimeout)
            {
                _outputsToDelete.Add(_tmpOutput.Key);
            }
        }

        //Delete timed out outputs
        foreach (var output in _outputsToDelete)
        {
            if (OSCMaster.Clients.ContainsKey(output))
            {
                OSCMaster.RemoveClient(output);
            }

            _augmentaOutputs.Remove(output);

            if (debug)
            {
                Debug.Log("Output " + output + " timed out.");
            }
        }
    }
    public void Connect()
    {
        if (OSCMaster.Clients.ContainsKey(OSCClientName))
        {
            OSCMaster.RemoveClient(OSCClientName);
        }
        OSCMaster.CreateClient(OSCClientName, IPAddress.Parse(TargetIp), TargetPort);
        Debug.Log("Connected on " + TargetIp + ":" + TargetPort);

        try
        {
            var message = new OSCMessage("/device/screen");
            message.Append(Screen.width);
            message.Append(Screen.height);

            OSCMaster.SendMessageUsingClient(OSCClientName, message);

            Debug.Log("Screen : " + Screen.width + "*" + Screen.height);
        }
        catch (Exception e)
        {
            Debug.Log(e.Message);
        }
    }