Esempio n. 1
0
    void OnInviteReceived(object sender, InviteReceivedEventArgs e)
    {
        if (e.InvitationId != "")
        {
            Analytics.LogEvent("Invite received", "Invitation ID: " + e.InvitationId);
            FirebaseInvites.ConvertInvitationAsync(e.InvitationId).ContinueWith(task => {
                if (task.IsCanceled)
                {
                    Analytics.LogError("Firebase Convert Invite", "Convert Invitation canceled!");
                    return;
                }

                if (task.IsFaulted)
                {
                    Analytics.LogError("Firebase Convert Invite", "Error: " + task.Exception);
                    return;
                }
            });
        }

        if (e.DeepLink.ToString() != "")
        {
            Analytics.LogEvent("Invite received", "Deep link: " + e.DeepLink);
        }
    }
        private void Channel_InviteReceived(IrcChannel channel, InviteReceivedEventArgs args)
        {
            string text    = Locator.Get <ITranslationService>().Translate("Conversation", "InviteReceived", args.Sender.Nickname, channel.FullName);
            var    message = new IrcMessage(channel.Network, MessageDirection.FromServer, args.Sender, IrcMessageType.Invite, text);
            var    msg     = new GlobalMessageReceivedMessage(message);

            Messenger.Send(msg);
        }
Esempio n. 3
0
        private void SyncChecks(JObject syncJObject)
        {
            JToken roomJToken = syncJObject["rooms"]["join"];

            if (roomJToken.HasValues) //Process new messages
            {
                foreach (JToken room in roomJToken.Children())
                {
                    var    roomJProperty = (JProperty)room;
                    string roomId        = roomJProperty.Name;

                    if (!_client.Rooms.ContainsKey(roomId))
                    {
                        continue;
                    }

                    foreach (JToken message in room.First["timeline"]["events"].Children())
                    {
                        if (!message["content"].HasValues)
                        {
                            continue;
                        }

                        var sender = (string)message["sender"];
                        var body   = (string)message["content"]["body"];

                        var messageArgs = new MessageReceivedEventArgs(roomId, body, sender);
                        _client.OnMessageReceived(messageArgs);
                    }
                }
            }

            JToken inviteJToken = syncJObject["rooms"]["invite"];

            if (inviteJToken.HasValues) //UNTESTED
            {
                foreach (JToken room in inviteJToken.Children())
                {
                    var    roomIdJProperty = (JProperty)room;
                    string roomId          = roomIdJProperty.Name;

                    var inviteArgs = new InviteReceivedEventArgs(roomId);
                    _client.OnInviteReceived(inviteArgs);
                }
            }
        }
Esempio n. 4
0
 internal void OnInviteReceived(InviteReceivedEventArgs args) => InviteReceived?.Invoke(args);