Ejemplo n.º 1
0
        public async Task <TLAbsUpdates> addUserIntoChannel(string userID, TLChannel channel)
        {
            if (string.IsNullOrEmpty(userID))
            {
                return(null);
            }

            switch (_isbot)
            {
            case BotTypeApi.REAL_BOT:
                break;

            case BotTypeApi.USER_BOT:
            {
                try
                {
                    var users = new TLVector <TLAbsInputUser>();
                    if (userID.StartsWith("@"))
                    {
                        var u = await UserbotPeer.GetPeerUserWithAccessHash(userID.Substring(1), _userbotClient);

                        TLAbsInputUser input2 = new TLInputUser {
                            AccessHash = u.AccessHash, UserId = u.UserId
                        };
                        users.Add(input2);
                    }
                    else
                    {
                        users.Add(UserbotPeer.GetPeerUserFromdId(Convert.ToInt32(userID)));
                    }

                    var tLInputChannel = new TLInputChannel {
                        ChannelId = channel.Id
                    };
                    if (channel.AccessHash != null)
                    {
                        tLInputChannel.AccessHash = channel.AccessHash.Value;
                    }

                    var r = await _userbotClient.ChannelsInviteToChannel(tLInputChannel, users);

                    return(r);
                }
                catch (Exception e)
                {
                    ;
                }
            }
            break;

            case BotTypeApi.DISGUISED_BOT:
                break;
            }

            return(null);
        }