コード例 #1
0
        //
        //  Send a message using Ice AMI.
        //
        public async void sendMessage(string message)
        {
            if (_chat != null)
            {
                if (message.Length > _maxMessageSize)
                {
                    appendMessage("<system-message> - Message length exceeded, maximum length is " + _maxMessageSize +
                                  " characters." + Environment.NewLine);
                }
                else
                {
                    try
                    {
                        long timestamp = await _chat.sendAsync(message);

                        userSayEvent(timestamp, _username, message);
                    }
                    catch (AggregateException ae)
                    {
                        if (ae.InnerException is Chat.InvalidMessageException)
                        {
                            Chat.InvalidMessageException e = (Chat.InvalidMessageException)ae.InnerException;
                            appendMessage("<system-message> - " + e.reason + Environment.NewLine);
                        }
                        else
                        {
                            destroySession();
                        }
                    }
                }
            }
        }
コード例 #2
0
 public void exception(Ice.Exception ex)
 {
     if (ex is Chat.InvalidMessageException)
     {
         Chat.InvalidMessageException e = (Chat.InvalidMessageException)ex;
         _coordinator.appendMessage("<system-message> - " + e.reason + Environment.NewLine);
     }
     else
     {
         _coordinator.destroySession();
     }
 }