Layer 220
method Users
phone.joinGroupCall#8fb53057 flags:# muted:flags.0?true video_stopped:flags.2?true call:InputGroupCall join_as:InputPeer invite_hash:flags.1?string public_key:flags.3?int256 block:flags.3?bytes params:DataJSON = Updates;

Parameters

Name Type Description
Flags # Flags, see TL conditional fields
Muted flags.0?true If set, the user will be muted by default upon joining.
VideoStopped flags.2?true If set, the user's video will be disabled by default upon joining.
Call InputGroupCall The group call
JoinAs InputPeer Join the group call, presenting yourself as the specified user/channel
InviteHash flags.1?string The invitation hash from the invite link, if provided allows speaking in a livestream or muted group chat.
PublicKey flags.3?int256 For conference calls, your public key.
Block flags.3?bytes The block containing an appropriate e 2 e. chain. change Set Group State event.
Params DataJSON Web RTC parameters

Returns

Updates

Possible Errors

Code Type Description
400 DATA_JSON_INVALID The provided JSON data is invalid.
403 GROUPCALL_FORBIDDEN The group call has already ended.
400 GROUPCALL_INVALID The specified group call is invalid.
400 GROUPCALL_SSRC_DUPLICATE_MUCH The app needs to retry joining the group call with a new SSRC value.
400 JOIN_AS_PEER_INVALID The specified peer cannot be used to join a group call.

Gogram Example

// PhoneJoinGroupCall - using Params struct
result, err := client.PhoneJoinGroupCall(&tg.PhoneJoinGroupCallParams{
    Call: &tg.InputGroupCall{},
    JoinAs: &tg.InputPeerUser{UserID: int64(123456789)},
    Params: &tg.DataJson{},

    // Optional fields:
    // Muted: true,
    // VideoStopped: true,
    // InviteHash: "...",
    // PublicKey: nil,
    // ...
})
if err != nil {
    // handle error
}
// result is *tg.Updates