public void Send()
        {
            if (CurrentItem == null)
            {
                return;
            }

            var userPhone = Items.OfType <TLUserPhone>().FirstOrDefault(x => x.IsSelected);

            if (userPhone == null)
            {
                return;
            }

            var media = new TLMessageMediaContact82
            {
                UserId      = CurrentItem.Id,
                FirstName   = CurrentItem.FirstName,
                LastName    = CurrentItem.LastName,
                PhoneNumber = userPhone.Number,
                VCard       = ToVCard(CurrentItem)
            };

            Callback.SafeInvoke(media);
        }
示例#2
0
        private void SendContact(TLUserBase contact)
        {
            if (TLString.IsNullOrEmpty(contact.Phone))
            {
                var username = contact as IUserName;
                if (username != null && !TLString.IsNullOrEmpty(username.UserName))
                {
                    string accessToken = null;
                    var    bot         = contact as TLUser;
                    if (bot != null && bot.IsBot && !string.IsNullOrEmpty(bot.AccessToken))
                    {
                        accessToken     = bot.AccessToken;
                        bot.AccessToken = null;
                    }

                    _text = string.Format(Constants.UsernameLinkPlaceholder, username.UserName);
                    if (!string.IsNullOrEmpty(accessToken))
                    {
                        _text += "?start=" + accessToken;
                    }
                    Send();

                    return;
                }

                return;
            }

            var media = new TLMessageMediaContact82
            {
                UserId      = contact.Id,
                FirstName   = contact.FirstName,
                LastName    = contact.LastName,
                PhoneNumber = contact.Phone,
                VCard       = TLString.Empty
            };

            ContinueSendContact(media);
        }