Example #1
0
        protected void OnEventFired(IChatChannelSender sender, [NotNull] ChatTextMessageEnteredEventArgs args)
        {
            if (args == null)
            {
                throw new ArgumentNullException(nameof(args));
            }

            //Post it so we can get exception information.
            UnityAsyncHelper.UnityMainThreadContext.PostAsync(async() =>
            {
                try
                {
                    await sender.SendAsync(args.Content);
                }
                catch (Exception e)
                {
                    if (Logger.IsErrorEnabled)
                    {
                        Logger.Error($"Failed to send message. Reason: {e.Message}");
                    }

                    throw;
                }
            });
        }
Example #2
0
        public ChatChannelJoinedEventArgs(ChatChannelType channelType, [NotNull] IVivoxTextChannelMessageSubscribable channel, [NotNull] IChatChannelSender messageSender)
        {
            if (!Enum.IsDefined(typeof(ChatChannelType), channelType))
            {
                throw new InvalidEnumArgumentException(nameof(channelType), (int)channelType, typeof(ChatChannelType));
            }

            ChannelType   = channelType;
            Channel       = channel ?? throw new ArgumentNullException(nameof(channel));
            MessageSender = messageSender ?? throw new ArgumentNullException(nameof(messageSender));
        }