Example #1
0
 public EnvironmentEventArgs(CallerInformation caller, EventMessageType message_type, string message_format, object[] m)
 {
     this.CurrentThread = Thread.CurrentThread;
     this.Caller        = caller;
     this.MessageType   = message_type;
     this.Message       = string.Format(message_format, m);
 }
        public static MenuMessage Parse(XElement xml, EventMessageType @event)
        {
            switch (@event)
            {
            case EventMessageType.click:
                return(new ClickMenuMessage(xml));

            case EventMessageType.view:
                return(new ViewMenuMessage(xml));

            case EventMessageType.scancode_push:
                return(new ScanCodePushMenuMessage(xml));

            case EventMessageType.scancode_waitmsg:
                return(new ScanCodeWaitMsgMenuMessage(xml));

            case EventMessageType.pic_sysphoto:
                return(new PicSysPhotoMenuMessage(xml));

            case EventMessageType.pic_photo_or_album:
                return(new PicPhotoOrAlbumMenuMessage(xml));

            case EventMessageType.pic_weixin:
                return(new PicWeixinMenuMessage(xml));

            case EventMessageType.location_select:
                return(new LocationSelectMenuMessage(xml));

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Example #3
0
        /// <summary>
        /// Upload the received data to blob and returns the address
        /// </summary>
        private async Task HandleMediaAsync(EventMessageType type, string replyToken, string messageId, string blobDirectoryName, string blobName)
        {
            var stream = await messagingClient.GetContentStreamAsync(messageId);

            var ext = GetFileExtension(stream.ContentHeaders.ContentType.MediaType);
            var uri = await blobStorage.UploadFromStreamAsync(stream, blobDirectoryName, blobName + ext);

            ISendMessage reply = null;

            switch (type)
            {
            case EventMessageType.Audio:
                reply = new AudioMessage(uri.ToString(), 100);
                break;

            case EventMessageType.Image:
                reply = new ImageMessage(uri.ToString(), uri.ToString());
                break;

            case EventMessageType.Video:
                reply = new VideoMessage(uri.ToString(), "https://linetestbot123.blob.core.windows.net/linebotcontainer/User_U21d2cd1795be4caa1a32d069fe7b323f/7015056697532.jpeg");
                break;

            case EventMessageType.File:
                reply = new TextMessage(uri.ToString());
                break;
            }
            await messagingClient.ReplyMessageAsync(replyToken, new List <ISendMessage> {
                reply
            });

            //await messagingClient.ReplyMessageAsync(replyToken, uri.ToString());
        }
Example #4
0
 public AudioEventMessage(
     EventMessageType type,
     string id,
     ContentProvider contentProvider = null,
     int?duration = null
     ) : base(type, id, contentProvider, duration)
 {
 }
Example #5
0
 private HttpResponseMessage GetSuccessResponse(int optimized, int total, EventMessageType type)
 {
     return(Request.CreateResponse(HttpStatusCode.OK,
                                   new TNotification(PackageConstants.TinifyingFinished,
                                                     $"{optimized}/{total} images were optimized. Enjoy the package? Click the message and rate us!", type)
     {
         url = "https://our.umbraco.org/projects/backoffice-extensions/tinifier/"
     }));
 }
Example #6
0
        public async Task <List <EventMessageObject> > GetMessageAsync(
            DbContext db, IDiscordGuild guild, EventMessageType type, IDiscordUser user)
        {
            var channels   = (await guild.GetChannelsAsync()).ToList();
            var channelIds = channels.Select(x => (long)x.Id);

            IDiscordGuildUser owner = await guild.GetOwnerAsync();

            var ownerMention = owner.Mention;
            var ownerName    = owner.Username;

            List <EventMessageObject> output = new List <EventMessageObject>();
            short t = (short)type;

            var messageObjects = await db.Set <EventMessage>()
                                 .Where(x => channelIds.Contains(x.ChannelId) && t == x.EventType)
                                 .ToListAsync();

            foreach (var c in messageObjects)
            {
                if (c == null)
                {
                    continue;
                }

                if (string.IsNullOrEmpty(c.Message))
                {
                    continue;
                }

                string modifiedMessage = c.Message;

                modifiedMessage = modifiedMessage.Replace("-um", user.Mention);
                modifiedMessage = modifiedMessage.Replace("-uc", guild.MemberCount.ToString());
                modifiedMessage = modifiedMessage.Replace("-u", user.Username);

                modifiedMessage = modifiedMessage.Replace("-now", DateTime.Now.ToShortDateString());
                modifiedMessage = modifiedMessage.Replace("-s", guild.Name);

                modifiedMessage = modifiedMessage.Replace("-om", ownerMention);
                modifiedMessage = modifiedMessage.Replace("-o", ownerName);

                modifiedMessage = modifiedMessage.Replace("-cc", channels.Count().ToString());
                modifiedMessage = modifiedMessage.Replace("-vc", channels.Count().ToString());

                output.Add(new EventMessageObject
                {
                    Message            = modifiedMessage,
                    DestinationChannel = channels.FirstOrDefault(
                        x => (long)x.Id == c.ChannelId) as IDiscordTextChannel
                });
            }

            return(output);
        }
Example #7
0
    // Token: 0x06001A17 RID: 6679 RVA: 0x000D50E4 File Offset: 0x000D32E4
    public override bool HandleMessage(Message _msg)
    {
        bool             result = base.HandleMessage(_msg);
        EventMessageType type   = _msg.m_Type;

        if (type == EventMessageType.KNOCKEDBACK || type == EventMessageType.STUNNED || type == EventMessageType.KILLED)
        {
            this.Cancel();
            result = true;
        }
        return(result);
    }
Example #8
0
        private async Task SetMessageAsync(DbContext db, string message, EventMessageType v, ulong channelid)
        {
            EventMessage messageInstance = await db.Set <EventMessage>().FindAsync(channelid.ToDbLong(), (short)v);

            if (messageInstance == null)
            {
                db.Set <EventMessage>().Add(new EventMessage()
                {
                    ChannelId = channelid.ToDbLong(),
                    Message   = message,
                    EventType = (short)v
                });
            }
            else
            {
                messageInstance.Message = message;
            }
        }
Example #9
0
        private async Task SetMessageAsync(string message, EventMessageType v, ulong channelid)
        {
            using (var context = new MikiContext())
            {
                EventMessage messageInstance = await context.EventMessages.FindAsync(channelid.ToDbLong(), (short)v);

                if (messageInstance == null)
                {
                    context.EventMessages.Add(new EventMessage()
                    {
                        ChannelId = channelid.ToDbLong(),
                        Message   = message,
                        EventType = (short)v
                    });
                }
                else
                {
                    messageInstance.Message = message;
                }

                await context.SaveChangesAsync();
            }
        }
 public TNotification(string header, string text, EventMessageType type)
     : this(header, text)
 {
     this.type = Enum.GetName(typeof(EventMessageType), type).ToLowerInvariant();
 }
Example #11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EventMessage"/> class.
 /// </summary>
 public EventMessage(string category, string message, EventMessageType messageType = EventMessageType.Default)
 {
     Category    = category;
     Message     = message;
     MessageType = messageType;
 }
Example #12
0
 private HttpResponseMessage GetErrorNotification(string message, HttpStatusCode httpStatusCode, EventMessageType eventMessageType)
 {
     return(Request.CreateResponse(httpStatusCode,
                                   new TNotification("Tinifier Oops", message, eventMessageType)
     {
         sticky = true
     }));
 }
Example #13
0
 public EnvironmentEventArgs(EventMessageType message_type, string message)
 {
     this.CurrentThread = Thread.CurrentThread;
     this.MessageType   = message_type;
     this.Message       = message;
 }
Example #14
0
 /// <summary>
 /// Sets null to EventType property.
 /// </summary>
 public void NullifyEventType()
 {
     this._eventType = ((EventMessageType)(TypeConstants.EnumNull));
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="type">Event Message Type</param>
 /// <param name="id">Message ID</param>
 /// <param name="contentProvider">ContentProvider Object</param>
 /// <param name="imageSet">ImageSet</param>
 public ImageEventMessage(EventMessageType type, string id, ContentProvider contentProvider = null, ImageSet imageSet = null) : base(type, id)
 {
     ContentProvider = contentProvider;
     ImageSet        = imageSet;
 }
Example #16
0
        public async Task <List <Tuple <string, IDiscordMessageChannel> > > GetMessage(IDiscordGuild guild, EventMessageType type, IDiscordUser user)
        {
            long guildId = guild.Id.ToDbLong();
            List <IDiscordMessageChannel> channels = await guild.GetChannels();

            List <Tuple <string, IDiscordMessageChannel> > output = new List <Tuple <string, IDiscordMessageChannel> >();

            using (var context = new MikiContext())
            {
                foreach (IDiscordMessageChannel c in channels)
                {
                    EventMessage messageObject = await context.EventMessages.FindAsync(c.Id.ToDbLong(), (int)type);

                    if (messageObject == null)
                    {
                        continue;
                    }

                    if (string.IsNullOrEmpty(messageObject.Message))
                    {
                        continue;
                    }

                    string modifiedMessage       = messageObject.Message;
                    List <IDiscordUser> allUsers = await c.GetUsersAsync();

                    modifiedMessage = modifiedMessage.Replace("-um", user.Mention);
                    modifiedMessage = modifiedMessage.Replace("-uc", user.Guild.UserCount.ToString());
                    modifiedMessage = modifiedMessage.Replace("-u", string.IsNullOrEmpty(user.Nickname) ? user.Username : user.Nickname);

                    modifiedMessage = modifiedMessage.Replace("-ru", allUsers[MikiRandom.Next(0, allUsers.Count)].Nickname);

                    modifiedMessage = modifiedMessage.Replace("-now", DateTime.Now.ToShortDateString());
                    modifiedMessage = modifiedMessage.Replace("-s", user.Guild.Name);

                    modifiedMessage = modifiedMessage.Replace("-om", user.Guild.Owner.Mention);
                    modifiedMessage = modifiedMessage.Replace("-o", string.IsNullOrEmpty(user.Guild.Owner.Nickname) ? user.Guild.Owner.Username : user.Guild.Owner.Nickname);

                    modifiedMessage = modifiedMessage.Replace("-cc", user.Guild.ChannelCount.ToString());
                    modifiedMessage = modifiedMessage.Replace("-vc", user.Guild.VoiceChannelCount.ToString());

                    output.Add(new Tuple <string, IDiscordMessageChannel>(modifiedMessage, c));
                }
                return(output);
            }
        }
Example #17
0
 public static string RelayEvent(EventMessageType messageType, MonoBehaviour sender)
 {
     return(OnEventAction(messageType, sender));
 }
Example #18
0
 public EventMessage(EventMessageType type, string id)
 {
     Type = type;
     Id   = id;
 }
Example #19
0
        public static void  AddEvent(EventType eventType, EventConfigType configType, EntityType objectType, Guid objectId, Guid arrayId, EventMessageType messageType)
        {
            using (var context = new DataService())
            {
                var newEvent = new StorageEvent
                {
                    Id             = Guid.NewGuid(),
                    ConfigType     = configType,
                    StorageArrayId = arrayId,
                    EventTimeStamp = DateTime.UtcNow,
                    EventType      = eventType,
                    MessageType    = messageType,
                    ObjectId       = objectId,
                    ObjectType     = objectType
                };

                context.StorageEvents.Add(newEvent);

                context.Save();
            }
        }
 internal void Message(EventMessageType message_type, string message_format, params object[] message)
 {
     OnMessage(new EnvironmentEventArgs(message_type, message_format, message));
 }
Example #21
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="type">Event Message Type</param>
 /// <param name="id">Message ID</param>
 /// <param name="contentProvider">ContentProvider Object</param>
 /// <param name="duration">Duration</param>
 public MediaEventMessage(EventMessageType type, string id, ContentProvider contentProvider = null, int?duration = null) : base(type, id)
 {
     ContentProvider = contentProvider;
     Duration        = duration;
 }
Example #22
0
        public async Task <List <EventMessageObject> > GetMessage(IGuild guild, EventMessageType type, IUser user)
        {
            long guildId = guild.Id.ToDbLong();

            var channels = await guild.GetTextChannelsAsync();

            var channelIds = channels.Select(x => x.Id.ToDbLong());

            var guildCount = (await guild.GetUsersAsync()).Count;

            IGuildUser owner = await guild.GetOwnerAsync();

            var ownerMention = owner.Mention;
            var ownerName    = owner.Username;

            List <EventMessageObject> output = new List <EventMessageObject>();

            using (var context = new MikiContext())
            {
                var messageObjects = await context.EventMessages.Where(x => channelIds.Contains(x.ChannelId) && (short)type == x.EventType).ToListAsync();

                var allUsers = await guild.GetUsersAsync();

                foreach (var c in messageObjects)
                {
                    if (c == null)
                    {
                        continue;
                    }

                    if (string.IsNullOrEmpty(c.Message))
                    {
                        continue;
                    }

                    string modifiedMessage = c.Message;

                    modifiedMessage = modifiedMessage.Replace("-um", user.Mention);
                    modifiedMessage = modifiedMessage.Replace("-uc", (await(user as IGuildUser).Guild.GetUsersAsync()).Count.ToString());
                    modifiedMessage = modifiedMessage.Replace("-u", user.Username);

                    modifiedMessage = modifiedMessage.Replace("-ru", allUsers.ElementAt(MikiRandom.Next(0, allUsers.Count)).Username);

                    modifiedMessage = modifiedMessage.Replace("-now", DateTime.Now.ToShortDateString());
                    modifiedMessage = modifiedMessage.Replace("-sc", guildCount.ToString());
                    modifiedMessage = modifiedMessage.Replace("-s", (user as IGuildUser).Guild.Name);


                    modifiedMessage = modifiedMessage.Replace("-om", ownerMention);
                    modifiedMessage = modifiedMessage.Replace("-o", ownerName);

                    modifiedMessage = modifiedMessage.Replace("-cc", (await(user as IGuildUser).Guild.GetChannelsAsync()).Count.ToString());
                    modifiedMessage = modifiedMessage.Replace("-vc", (await(user as IGuildUser).Guild.GetVoiceChannelsAsync()).Count.ToString());

                    output.Add(new EventMessageObject()
                    {
                        message            = modifiedMessage,
                        destinationChannel = channels.FirstOrDefault(x => x.Id.ToDbLong() == c.ChannelId)
                    });
                }
                return(output);
            }
        }
Example #23
0
 public static String GetMessageId(this EventMessageType eventMessageType)
 {
     return(eventMessageType.GetStringValue());
 }