7a04f298d2
- update to latest telegram layer - remove some references to fields in tg.Entities that don't exist in the schema - originally added here: https://github.com/beeper/td/commit/820929062a2ba0104397bc01235ab58a9cff780e - referenced here - https://github.com/mautrix/telegramgo/commit/124f0967ed195b5a380c9bd02e170ada9710dde3 - https://github.com/mautrix/telegramgo/commit/4205047aab2e0639217148b5d125bfaab668bd8e
2553 lines
68 KiB
Go
Generated
2553 lines
68 KiB
Go
Generated
// Code generated by gotdgen, DO NOT EDIT.
|
|
|
|
package tdapi
|
|
|
|
import (
|
|
"context"
|
|
"errors"
|
|
"fmt"
|
|
"sort"
|
|
"strings"
|
|
|
|
"go.uber.org/multierr"
|
|
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/bin"
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/tdjson"
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/tdp"
|
|
"go.mau.fi/mautrix-telegram/pkg/gotd/tgerr"
|
|
)
|
|
|
|
// No-op definition for keeping imports.
|
|
var (
|
|
_ = bin.Buffer{}
|
|
_ = context.Background()
|
|
_ = fmt.Stringer(nil)
|
|
_ = strings.Builder{}
|
|
_ = errors.Is
|
|
_ = multierr.AppendInto
|
|
_ = sort.Ints
|
|
_ = tdp.Format
|
|
_ = tgerr.Error{}
|
|
_ = tdjson.Encoder{}
|
|
)
|
|
|
|
// DeviceTokenFirebaseCloudMessaging represents TL type `deviceTokenFirebaseCloudMessaging#d0714a07`.
|
|
type DeviceTokenFirebaseCloudMessaging struct {
|
|
// Device registration token; may be empty to deregister a device
|
|
Token string
|
|
// True, if push notifications must be additionally encrypted
|
|
Encrypt bool
|
|
}
|
|
|
|
// DeviceTokenFirebaseCloudMessagingTypeID is TL type id of DeviceTokenFirebaseCloudMessaging.
|
|
const DeviceTokenFirebaseCloudMessagingTypeID = 0xd0714a07
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenFirebaseCloudMessaging) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenFirebaseCloudMessaging.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenFirebaseCloudMessaging{}
|
|
_ bin.Decoder = &DeviceTokenFirebaseCloudMessaging{}
|
|
_ bin.BareEncoder = &DeviceTokenFirebaseCloudMessaging{}
|
|
_ bin.BareDecoder = &DeviceTokenFirebaseCloudMessaging{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenFirebaseCloudMessaging{}
|
|
)
|
|
|
|
func (d *DeviceTokenFirebaseCloudMessaging) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.Token == "") {
|
|
return false
|
|
}
|
|
if !(d.Encrypt == false) {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenFirebaseCloudMessaging(nil)"
|
|
}
|
|
type Alias DeviceTokenFirebaseCloudMessaging
|
|
return fmt.Sprintf("DeviceTokenFirebaseCloudMessaging%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenFirebaseCloudMessaging) TypeID() uint32 {
|
|
return DeviceTokenFirebaseCloudMessagingTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenFirebaseCloudMessaging) TypeName() string {
|
|
return "deviceTokenFirebaseCloudMessaging"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenFirebaseCloudMessaging",
|
|
ID: DeviceTokenFirebaseCloudMessagingTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "Token",
|
|
SchemaName: "token",
|
|
},
|
|
{
|
|
Name: "Encrypt",
|
|
SchemaName: "encrypt",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenFirebaseCloudMessaging#d0714a07 as nil")
|
|
}
|
|
b.PutID(DeviceTokenFirebaseCloudMessagingTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenFirebaseCloudMessaging#d0714a07 as nil")
|
|
}
|
|
b.PutString(d.Token)
|
|
b.PutBool(d.Encrypt)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenFirebaseCloudMessaging#d0714a07 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenFirebaseCloudMessagingTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenFirebaseCloudMessaging#d0714a07: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenFirebaseCloudMessaging#d0714a07 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenFirebaseCloudMessaging#d0714a07: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenFirebaseCloudMessaging#d0714a07: field encrypt: %w", err)
|
|
}
|
|
d.Encrypt = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenFirebaseCloudMessaging#d0714a07 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenFirebaseCloudMessaging")
|
|
b.Comma()
|
|
b.FieldStart("token")
|
|
b.PutString(d.Token)
|
|
b.Comma()
|
|
b.FieldStart("encrypt")
|
|
b.PutBool(d.Encrypt)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenFirebaseCloudMessaging#d0714a07 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenFirebaseCloudMessaging"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenFirebaseCloudMessaging#d0714a07: %w", err)
|
|
}
|
|
case "token":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenFirebaseCloudMessaging#d0714a07: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
case "encrypt":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenFirebaseCloudMessaging#d0714a07: field encrypt: %w", err)
|
|
}
|
|
d.Encrypt = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetToken returns value of Token field.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) GetToken() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Token
|
|
}
|
|
|
|
// GetEncrypt returns value of Encrypt field.
|
|
func (d *DeviceTokenFirebaseCloudMessaging) GetEncrypt() (value bool) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Encrypt
|
|
}
|
|
|
|
// DeviceTokenApplePush represents TL type `deviceTokenApplePush#17196bc3`.
|
|
type DeviceTokenApplePush struct {
|
|
// Device token; may be empty to deregister a device
|
|
DeviceToken string
|
|
// True, if App Sandbox is enabled
|
|
IsAppSandbox bool
|
|
}
|
|
|
|
// DeviceTokenApplePushTypeID is TL type id of DeviceTokenApplePush.
|
|
const DeviceTokenApplePushTypeID = 0x17196bc3
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenApplePush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenApplePush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenApplePush{}
|
|
_ bin.Decoder = &DeviceTokenApplePush{}
|
|
_ bin.BareEncoder = &DeviceTokenApplePush{}
|
|
_ bin.BareDecoder = &DeviceTokenApplePush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenApplePush{}
|
|
)
|
|
|
|
func (d *DeviceTokenApplePush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.DeviceToken == "") {
|
|
return false
|
|
}
|
|
if !(d.IsAppSandbox == false) {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenApplePush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenApplePush(nil)"
|
|
}
|
|
type Alias DeviceTokenApplePush
|
|
return fmt.Sprintf("DeviceTokenApplePush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenApplePush) TypeID() uint32 {
|
|
return DeviceTokenApplePushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenApplePush) TypeName() string {
|
|
return "deviceTokenApplePush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenApplePush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenApplePush",
|
|
ID: DeviceTokenApplePushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "DeviceToken",
|
|
SchemaName: "device_token",
|
|
},
|
|
{
|
|
Name: "IsAppSandbox",
|
|
SchemaName: "is_app_sandbox",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenApplePush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenApplePush#17196bc3 as nil")
|
|
}
|
|
b.PutID(DeviceTokenApplePushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenApplePush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenApplePush#17196bc3 as nil")
|
|
}
|
|
b.PutString(d.DeviceToken)
|
|
b.PutBool(d.IsAppSandbox)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenApplePush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenApplePush#17196bc3 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenApplePushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePush#17196bc3: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenApplePush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenApplePush#17196bc3 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePush#17196bc3: field device_token: %w", err)
|
|
}
|
|
d.DeviceToken = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePush#17196bc3: field is_app_sandbox: %w", err)
|
|
}
|
|
d.IsAppSandbox = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenApplePush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenApplePush#17196bc3 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenApplePush")
|
|
b.Comma()
|
|
b.FieldStart("device_token")
|
|
b.PutString(d.DeviceToken)
|
|
b.Comma()
|
|
b.FieldStart("is_app_sandbox")
|
|
b.PutBool(d.IsAppSandbox)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenApplePush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenApplePush#17196bc3 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenApplePush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePush#17196bc3: %w", err)
|
|
}
|
|
case "device_token":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePush#17196bc3: field device_token: %w", err)
|
|
}
|
|
d.DeviceToken = value
|
|
case "is_app_sandbox":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePush#17196bc3: field is_app_sandbox: %w", err)
|
|
}
|
|
d.IsAppSandbox = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetDeviceToken returns value of DeviceToken field.
|
|
func (d *DeviceTokenApplePush) GetDeviceToken() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.DeviceToken
|
|
}
|
|
|
|
// GetIsAppSandbox returns value of IsAppSandbox field.
|
|
func (d *DeviceTokenApplePush) GetIsAppSandbox() (value bool) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.IsAppSandbox
|
|
}
|
|
|
|
// DeviceTokenApplePushVoIP represents TL type `deviceTokenApplePushVoIP#2ff045e9`.
|
|
type DeviceTokenApplePushVoIP struct {
|
|
// Device token; may be empty to deregister a device
|
|
DeviceToken string
|
|
// True, if App Sandbox is enabled
|
|
IsAppSandbox bool
|
|
// True, if push notifications must be additionally encrypted
|
|
Encrypt bool
|
|
}
|
|
|
|
// DeviceTokenApplePushVoIPTypeID is TL type id of DeviceTokenApplePushVoIP.
|
|
const DeviceTokenApplePushVoIPTypeID = 0x2ff045e9
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenApplePushVoIP) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenApplePushVoIP.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenApplePushVoIP{}
|
|
_ bin.Decoder = &DeviceTokenApplePushVoIP{}
|
|
_ bin.BareEncoder = &DeviceTokenApplePushVoIP{}
|
|
_ bin.BareDecoder = &DeviceTokenApplePushVoIP{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenApplePushVoIP{}
|
|
)
|
|
|
|
func (d *DeviceTokenApplePushVoIP) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.DeviceToken == "") {
|
|
return false
|
|
}
|
|
if !(d.IsAppSandbox == false) {
|
|
return false
|
|
}
|
|
if !(d.Encrypt == false) {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenApplePushVoIP) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenApplePushVoIP(nil)"
|
|
}
|
|
type Alias DeviceTokenApplePushVoIP
|
|
return fmt.Sprintf("DeviceTokenApplePushVoIP%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenApplePushVoIP) TypeID() uint32 {
|
|
return DeviceTokenApplePushVoIPTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenApplePushVoIP) TypeName() string {
|
|
return "deviceTokenApplePushVoIP"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenApplePushVoIP) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenApplePushVoIP",
|
|
ID: DeviceTokenApplePushVoIPTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "DeviceToken",
|
|
SchemaName: "device_token",
|
|
},
|
|
{
|
|
Name: "IsAppSandbox",
|
|
SchemaName: "is_app_sandbox",
|
|
},
|
|
{
|
|
Name: "Encrypt",
|
|
SchemaName: "encrypt",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenApplePushVoIP) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenApplePushVoIP#2ff045e9 as nil")
|
|
}
|
|
b.PutID(DeviceTokenApplePushVoIPTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenApplePushVoIP) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenApplePushVoIP#2ff045e9 as nil")
|
|
}
|
|
b.PutString(d.DeviceToken)
|
|
b.PutBool(d.IsAppSandbox)
|
|
b.PutBool(d.Encrypt)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenApplePushVoIP) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenApplePushVoIP#2ff045e9 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenApplePushVoIPTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenApplePushVoIP) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenApplePushVoIP#2ff045e9 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: field device_token: %w", err)
|
|
}
|
|
d.DeviceToken = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: field is_app_sandbox: %w", err)
|
|
}
|
|
d.IsAppSandbox = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: field encrypt: %w", err)
|
|
}
|
|
d.Encrypt = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenApplePushVoIP) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenApplePushVoIP#2ff045e9 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenApplePushVoIP")
|
|
b.Comma()
|
|
b.FieldStart("device_token")
|
|
b.PutString(d.DeviceToken)
|
|
b.Comma()
|
|
b.FieldStart("is_app_sandbox")
|
|
b.PutBool(d.IsAppSandbox)
|
|
b.Comma()
|
|
b.FieldStart("encrypt")
|
|
b.PutBool(d.Encrypt)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenApplePushVoIP) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenApplePushVoIP#2ff045e9 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenApplePushVoIP"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: %w", err)
|
|
}
|
|
case "device_token":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: field device_token: %w", err)
|
|
}
|
|
d.DeviceToken = value
|
|
case "is_app_sandbox":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: field is_app_sandbox: %w", err)
|
|
}
|
|
d.IsAppSandbox = value
|
|
case "encrypt":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenApplePushVoIP#2ff045e9: field encrypt: %w", err)
|
|
}
|
|
d.Encrypt = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetDeviceToken returns value of DeviceToken field.
|
|
func (d *DeviceTokenApplePushVoIP) GetDeviceToken() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.DeviceToken
|
|
}
|
|
|
|
// GetIsAppSandbox returns value of IsAppSandbox field.
|
|
func (d *DeviceTokenApplePushVoIP) GetIsAppSandbox() (value bool) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.IsAppSandbox
|
|
}
|
|
|
|
// GetEncrypt returns value of Encrypt field.
|
|
func (d *DeviceTokenApplePushVoIP) GetEncrypt() (value bool) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Encrypt
|
|
}
|
|
|
|
// DeviceTokenWindowsPush represents TL type `deviceTokenWindowsPush#abed428f`.
|
|
type DeviceTokenWindowsPush struct {
|
|
// The access token that will be used to send notifications; may be empty to deregister a
|
|
// device
|
|
AccessToken string
|
|
}
|
|
|
|
// DeviceTokenWindowsPushTypeID is TL type id of DeviceTokenWindowsPush.
|
|
const DeviceTokenWindowsPushTypeID = 0xabed428f
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenWindowsPush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenWindowsPush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenWindowsPush{}
|
|
_ bin.Decoder = &DeviceTokenWindowsPush{}
|
|
_ bin.BareEncoder = &DeviceTokenWindowsPush{}
|
|
_ bin.BareDecoder = &DeviceTokenWindowsPush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenWindowsPush{}
|
|
)
|
|
|
|
func (d *DeviceTokenWindowsPush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.AccessToken == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenWindowsPush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenWindowsPush(nil)"
|
|
}
|
|
type Alias DeviceTokenWindowsPush
|
|
return fmt.Sprintf("DeviceTokenWindowsPush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenWindowsPush) TypeID() uint32 {
|
|
return DeviceTokenWindowsPushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenWindowsPush) TypeName() string {
|
|
return "deviceTokenWindowsPush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenWindowsPush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenWindowsPush",
|
|
ID: DeviceTokenWindowsPushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "AccessToken",
|
|
SchemaName: "access_token",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenWindowsPush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenWindowsPush#abed428f as nil")
|
|
}
|
|
b.PutID(DeviceTokenWindowsPushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenWindowsPush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenWindowsPush#abed428f as nil")
|
|
}
|
|
b.PutString(d.AccessToken)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenWindowsPush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenWindowsPush#abed428f to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenWindowsPushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWindowsPush#abed428f: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenWindowsPush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenWindowsPush#abed428f to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWindowsPush#abed428f: field access_token: %w", err)
|
|
}
|
|
d.AccessToken = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenWindowsPush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenWindowsPush#abed428f as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenWindowsPush")
|
|
b.Comma()
|
|
b.FieldStart("access_token")
|
|
b.PutString(d.AccessToken)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenWindowsPush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenWindowsPush#abed428f to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenWindowsPush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWindowsPush#abed428f: %w", err)
|
|
}
|
|
case "access_token":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWindowsPush#abed428f: field access_token: %w", err)
|
|
}
|
|
d.AccessToken = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetAccessToken returns value of AccessToken field.
|
|
func (d *DeviceTokenWindowsPush) GetAccessToken() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.AccessToken
|
|
}
|
|
|
|
// DeviceTokenMicrosoftPush represents TL type `deviceTokenMicrosoftPush#48f8e04c`.
|
|
type DeviceTokenMicrosoftPush struct {
|
|
// Push notification channel URI; may be empty to deregister a device
|
|
ChannelURI string
|
|
}
|
|
|
|
// DeviceTokenMicrosoftPushTypeID is TL type id of DeviceTokenMicrosoftPush.
|
|
const DeviceTokenMicrosoftPushTypeID = 0x48f8e04c
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenMicrosoftPush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenMicrosoftPush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenMicrosoftPush{}
|
|
_ bin.Decoder = &DeviceTokenMicrosoftPush{}
|
|
_ bin.BareEncoder = &DeviceTokenMicrosoftPush{}
|
|
_ bin.BareDecoder = &DeviceTokenMicrosoftPush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenMicrosoftPush{}
|
|
)
|
|
|
|
func (d *DeviceTokenMicrosoftPush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.ChannelURI == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenMicrosoftPush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenMicrosoftPush(nil)"
|
|
}
|
|
type Alias DeviceTokenMicrosoftPush
|
|
return fmt.Sprintf("DeviceTokenMicrosoftPush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenMicrosoftPush) TypeID() uint32 {
|
|
return DeviceTokenMicrosoftPushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenMicrosoftPush) TypeName() string {
|
|
return "deviceTokenMicrosoftPush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenMicrosoftPush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenMicrosoftPush",
|
|
ID: DeviceTokenMicrosoftPushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "ChannelURI",
|
|
SchemaName: "channel_uri",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenMicrosoftPush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenMicrosoftPush#48f8e04c as nil")
|
|
}
|
|
b.PutID(DeviceTokenMicrosoftPushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenMicrosoftPush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenMicrosoftPush#48f8e04c as nil")
|
|
}
|
|
b.PutString(d.ChannelURI)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenMicrosoftPush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenMicrosoftPush#48f8e04c to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenMicrosoftPushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPush#48f8e04c: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenMicrosoftPush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenMicrosoftPush#48f8e04c to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPush#48f8e04c: field channel_uri: %w", err)
|
|
}
|
|
d.ChannelURI = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenMicrosoftPush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenMicrosoftPush#48f8e04c as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenMicrosoftPush")
|
|
b.Comma()
|
|
b.FieldStart("channel_uri")
|
|
b.PutString(d.ChannelURI)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenMicrosoftPush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenMicrosoftPush#48f8e04c to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenMicrosoftPush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPush#48f8e04c: %w", err)
|
|
}
|
|
case "channel_uri":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPush#48f8e04c: field channel_uri: %w", err)
|
|
}
|
|
d.ChannelURI = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetChannelURI returns value of ChannelURI field.
|
|
func (d *DeviceTokenMicrosoftPush) GetChannelURI() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.ChannelURI
|
|
}
|
|
|
|
// DeviceTokenMicrosoftPushVoIP represents TL type `deviceTokenMicrosoftPushVoIP#d12ca351`.
|
|
type DeviceTokenMicrosoftPushVoIP struct {
|
|
// Push notification channel URI; may be empty to deregister a device
|
|
ChannelURI string
|
|
}
|
|
|
|
// DeviceTokenMicrosoftPushVoIPTypeID is TL type id of DeviceTokenMicrosoftPushVoIP.
|
|
const DeviceTokenMicrosoftPushVoIPTypeID = 0xd12ca351
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenMicrosoftPushVoIP) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenMicrosoftPushVoIP.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenMicrosoftPushVoIP{}
|
|
_ bin.Decoder = &DeviceTokenMicrosoftPushVoIP{}
|
|
_ bin.BareEncoder = &DeviceTokenMicrosoftPushVoIP{}
|
|
_ bin.BareDecoder = &DeviceTokenMicrosoftPushVoIP{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenMicrosoftPushVoIP{}
|
|
)
|
|
|
|
func (d *DeviceTokenMicrosoftPushVoIP) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.ChannelURI == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenMicrosoftPushVoIP(nil)"
|
|
}
|
|
type Alias DeviceTokenMicrosoftPushVoIP
|
|
return fmt.Sprintf("DeviceTokenMicrosoftPushVoIP%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenMicrosoftPushVoIP) TypeID() uint32 {
|
|
return DeviceTokenMicrosoftPushVoIPTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenMicrosoftPushVoIP) TypeName() string {
|
|
return "deviceTokenMicrosoftPushVoIP"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenMicrosoftPushVoIP",
|
|
ID: DeviceTokenMicrosoftPushVoIPTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "ChannelURI",
|
|
SchemaName: "channel_uri",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenMicrosoftPushVoIP#d12ca351 as nil")
|
|
}
|
|
b.PutID(DeviceTokenMicrosoftPushVoIPTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenMicrosoftPushVoIP#d12ca351 as nil")
|
|
}
|
|
b.PutString(d.ChannelURI)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenMicrosoftPushVoIP#d12ca351 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenMicrosoftPushVoIPTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPushVoIP#d12ca351: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenMicrosoftPushVoIP#d12ca351 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPushVoIP#d12ca351: field channel_uri: %w", err)
|
|
}
|
|
d.ChannelURI = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenMicrosoftPushVoIP#d12ca351 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenMicrosoftPushVoIP")
|
|
b.Comma()
|
|
b.FieldStart("channel_uri")
|
|
b.PutString(d.ChannelURI)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenMicrosoftPushVoIP#d12ca351 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenMicrosoftPushVoIP"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPushVoIP#d12ca351: %w", err)
|
|
}
|
|
case "channel_uri":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenMicrosoftPushVoIP#d12ca351: field channel_uri: %w", err)
|
|
}
|
|
d.ChannelURI = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetChannelURI returns value of ChannelURI field.
|
|
func (d *DeviceTokenMicrosoftPushVoIP) GetChannelURI() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.ChannelURI
|
|
}
|
|
|
|
// DeviceTokenWebPush represents TL type `deviceTokenWebPush#9affdef7`.
|
|
type DeviceTokenWebPush struct {
|
|
// Absolute URL exposed by the push service where the application server can send push
|
|
// messages; may be empty to deregister a device
|
|
Endpoint string
|
|
// Base64url-encoded P-256 elliptic curve Diffie-Hellman public key
|
|
P256dhBase64url string
|
|
// Base64url-encoded authentication secret
|
|
AuthBase64url string
|
|
}
|
|
|
|
// DeviceTokenWebPushTypeID is TL type id of DeviceTokenWebPush.
|
|
const DeviceTokenWebPushTypeID = 0x9affdef7
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenWebPush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenWebPush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenWebPush{}
|
|
_ bin.Decoder = &DeviceTokenWebPush{}
|
|
_ bin.BareEncoder = &DeviceTokenWebPush{}
|
|
_ bin.BareDecoder = &DeviceTokenWebPush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenWebPush{}
|
|
)
|
|
|
|
func (d *DeviceTokenWebPush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.Endpoint == "") {
|
|
return false
|
|
}
|
|
if !(d.P256dhBase64url == "") {
|
|
return false
|
|
}
|
|
if !(d.AuthBase64url == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenWebPush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenWebPush(nil)"
|
|
}
|
|
type Alias DeviceTokenWebPush
|
|
return fmt.Sprintf("DeviceTokenWebPush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenWebPush) TypeID() uint32 {
|
|
return DeviceTokenWebPushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenWebPush) TypeName() string {
|
|
return "deviceTokenWebPush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenWebPush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenWebPush",
|
|
ID: DeviceTokenWebPushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "Endpoint",
|
|
SchemaName: "endpoint",
|
|
},
|
|
{
|
|
Name: "P256dhBase64url",
|
|
SchemaName: "p256dh_base64url",
|
|
},
|
|
{
|
|
Name: "AuthBase64url",
|
|
SchemaName: "auth_base64url",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenWebPush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenWebPush#9affdef7 as nil")
|
|
}
|
|
b.PutID(DeviceTokenWebPushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenWebPush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenWebPush#9affdef7 as nil")
|
|
}
|
|
b.PutString(d.Endpoint)
|
|
b.PutString(d.P256dhBase64url)
|
|
b.PutString(d.AuthBase64url)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenWebPush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenWebPush#9affdef7 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenWebPushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenWebPush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenWebPush#9affdef7 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: field endpoint: %w", err)
|
|
}
|
|
d.Endpoint = value
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: field p256dh_base64url: %w", err)
|
|
}
|
|
d.P256dhBase64url = value
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: field auth_base64url: %w", err)
|
|
}
|
|
d.AuthBase64url = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenWebPush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenWebPush#9affdef7 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenWebPush")
|
|
b.Comma()
|
|
b.FieldStart("endpoint")
|
|
b.PutString(d.Endpoint)
|
|
b.Comma()
|
|
b.FieldStart("p256dh_base64url")
|
|
b.PutString(d.P256dhBase64url)
|
|
b.Comma()
|
|
b.FieldStart("auth_base64url")
|
|
b.PutString(d.AuthBase64url)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenWebPush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenWebPush#9affdef7 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenWebPush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: %w", err)
|
|
}
|
|
case "endpoint":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: field endpoint: %w", err)
|
|
}
|
|
d.Endpoint = value
|
|
case "p256dh_base64url":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: field p256dh_base64url: %w", err)
|
|
}
|
|
d.P256dhBase64url = value
|
|
case "auth_base64url":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenWebPush#9affdef7: field auth_base64url: %w", err)
|
|
}
|
|
d.AuthBase64url = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetEndpoint returns value of Endpoint field.
|
|
func (d *DeviceTokenWebPush) GetEndpoint() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Endpoint
|
|
}
|
|
|
|
// GetP256dhBase64url returns value of P256dhBase64url field.
|
|
func (d *DeviceTokenWebPush) GetP256dhBase64url() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.P256dhBase64url
|
|
}
|
|
|
|
// GetAuthBase64url returns value of AuthBase64url field.
|
|
func (d *DeviceTokenWebPush) GetAuthBase64url() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.AuthBase64url
|
|
}
|
|
|
|
// DeviceTokenSimplePush represents TL type `deviceTokenSimplePush#2f49a60`.
|
|
type DeviceTokenSimplePush struct {
|
|
// Absolute URL exposed by the push service where the application server can send push
|
|
// messages; may be empty to deregister a device
|
|
Endpoint string
|
|
}
|
|
|
|
// DeviceTokenSimplePushTypeID is TL type id of DeviceTokenSimplePush.
|
|
const DeviceTokenSimplePushTypeID = 0x2f49a60
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenSimplePush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenSimplePush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenSimplePush{}
|
|
_ bin.Decoder = &DeviceTokenSimplePush{}
|
|
_ bin.BareEncoder = &DeviceTokenSimplePush{}
|
|
_ bin.BareDecoder = &DeviceTokenSimplePush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenSimplePush{}
|
|
)
|
|
|
|
func (d *DeviceTokenSimplePush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.Endpoint == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenSimplePush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenSimplePush(nil)"
|
|
}
|
|
type Alias DeviceTokenSimplePush
|
|
return fmt.Sprintf("DeviceTokenSimplePush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenSimplePush) TypeID() uint32 {
|
|
return DeviceTokenSimplePushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenSimplePush) TypeName() string {
|
|
return "deviceTokenSimplePush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenSimplePush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenSimplePush",
|
|
ID: DeviceTokenSimplePushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "Endpoint",
|
|
SchemaName: "endpoint",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenSimplePush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenSimplePush#2f49a60 as nil")
|
|
}
|
|
b.PutID(DeviceTokenSimplePushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenSimplePush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenSimplePush#2f49a60 as nil")
|
|
}
|
|
b.PutString(d.Endpoint)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenSimplePush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenSimplePush#2f49a60 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenSimplePushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenSimplePush#2f49a60: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenSimplePush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenSimplePush#2f49a60 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenSimplePush#2f49a60: field endpoint: %w", err)
|
|
}
|
|
d.Endpoint = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenSimplePush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenSimplePush#2f49a60 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenSimplePush")
|
|
b.Comma()
|
|
b.FieldStart("endpoint")
|
|
b.PutString(d.Endpoint)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenSimplePush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenSimplePush#2f49a60 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenSimplePush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenSimplePush#2f49a60: %w", err)
|
|
}
|
|
case "endpoint":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenSimplePush#2f49a60: field endpoint: %w", err)
|
|
}
|
|
d.Endpoint = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetEndpoint returns value of Endpoint field.
|
|
func (d *DeviceTokenSimplePush) GetEndpoint() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Endpoint
|
|
}
|
|
|
|
// DeviceTokenUbuntuPush represents TL type `deviceTokenUbuntuPush#6a3c0d26`.
|
|
type DeviceTokenUbuntuPush struct {
|
|
// Token; may be empty to deregister a device
|
|
Token string
|
|
}
|
|
|
|
// DeviceTokenUbuntuPushTypeID is TL type id of DeviceTokenUbuntuPush.
|
|
const DeviceTokenUbuntuPushTypeID = 0x6a3c0d26
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenUbuntuPush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenUbuntuPush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenUbuntuPush{}
|
|
_ bin.Decoder = &DeviceTokenUbuntuPush{}
|
|
_ bin.BareEncoder = &DeviceTokenUbuntuPush{}
|
|
_ bin.BareDecoder = &DeviceTokenUbuntuPush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenUbuntuPush{}
|
|
)
|
|
|
|
func (d *DeviceTokenUbuntuPush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.Token == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenUbuntuPush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenUbuntuPush(nil)"
|
|
}
|
|
type Alias DeviceTokenUbuntuPush
|
|
return fmt.Sprintf("DeviceTokenUbuntuPush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenUbuntuPush) TypeID() uint32 {
|
|
return DeviceTokenUbuntuPushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenUbuntuPush) TypeName() string {
|
|
return "deviceTokenUbuntuPush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenUbuntuPush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenUbuntuPush",
|
|
ID: DeviceTokenUbuntuPushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "Token",
|
|
SchemaName: "token",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenUbuntuPush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenUbuntuPush#6a3c0d26 as nil")
|
|
}
|
|
b.PutID(DeviceTokenUbuntuPushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenUbuntuPush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenUbuntuPush#6a3c0d26 as nil")
|
|
}
|
|
b.PutString(d.Token)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenUbuntuPush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenUbuntuPush#6a3c0d26 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenUbuntuPushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenUbuntuPush#6a3c0d26: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenUbuntuPush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenUbuntuPush#6a3c0d26 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenUbuntuPush#6a3c0d26: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenUbuntuPush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenUbuntuPush#6a3c0d26 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenUbuntuPush")
|
|
b.Comma()
|
|
b.FieldStart("token")
|
|
b.PutString(d.Token)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenUbuntuPush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenUbuntuPush#6a3c0d26 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenUbuntuPush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenUbuntuPush#6a3c0d26: %w", err)
|
|
}
|
|
case "token":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenUbuntuPush#6a3c0d26: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetToken returns value of Token field.
|
|
func (d *DeviceTokenUbuntuPush) GetToken() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Token
|
|
}
|
|
|
|
// DeviceTokenBlackBerryPush represents TL type `deviceTokenBlackBerryPush#5cef0102`.
|
|
type DeviceTokenBlackBerryPush struct {
|
|
// Token; may be empty to deregister a device
|
|
Token string
|
|
}
|
|
|
|
// DeviceTokenBlackBerryPushTypeID is TL type id of DeviceTokenBlackBerryPush.
|
|
const DeviceTokenBlackBerryPushTypeID = 0x5cef0102
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenBlackBerryPush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenBlackBerryPush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenBlackBerryPush{}
|
|
_ bin.Decoder = &DeviceTokenBlackBerryPush{}
|
|
_ bin.BareEncoder = &DeviceTokenBlackBerryPush{}
|
|
_ bin.BareDecoder = &DeviceTokenBlackBerryPush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenBlackBerryPush{}
|
|
)
|
|
|
|
func (d *DeviceTokenBlackBerryPush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.Token == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenBlackBerryPush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenBlackBerryPush(nil)"
|
|
}
|
|
type Alias DeviceTokenBlackBerryPush
|
|
return fmt.Sprintf("DeviceTokenBlackBerryPush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenBlackBerryPush) TypeID() uint32 {
|
|
return DeviceTokenBlackBerryPushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenBlackBerryPush) TypeName() string {
|
|
return "deviceTokenBlackBerryPush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenBlackBerryPush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenBlackBerryPush",
|
|
ID: DeviceTokenBlackBerryPushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "Token",
|
|
SchemaName: "token",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenBlackBerryPush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenBlackBerryPush#5cef0102 as nil")
|
|
}
|
|
b.PutID(DeviceTokenBlackBerryPushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenBlackBerryPush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenBlackBerryPush#5cef0102 as nil")
|
|
}
|
|
b.PutString(d.Token)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenBlackBerryPush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenBlackBerryPush#5cef0102 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenBlackBerryPushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenBlackBerryPush#5cef0102: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenBlackBerryPush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenBlackBerryPush#5cef0102 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenBlackBerryPush#5cef0102: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenBlackBerryPush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenBlackBerryPush#5cef0102 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenBlackBerryPush")
|
|
b.Comma()
|
|
b.FieldStart("token")
|
|
b.PutString(d.Token)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenBlackBerryPush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenBlackBerryPush#5cef0102 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenBlackBerryPush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenBlackBerryPush#5cef0102: %w", err)
|
|
}
|
|
case "token":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenBlackBerryPush#5cef0102: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetToken returns value of Token field.
|
|
func (d *DeviceTokenBlackBerryPush) GetToken() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Token
|
|
}
|
|
|
|
// DeviceTokenTizenPush represents TL type `deviceTokenTizenPush#aef0da33`.
|
|
type DeviceTokenTizenPush struct {
|
|
// Push service registration identifier; may be empty to deregister a device
|
|
RegID string
|
|
}
|
|
|
|
// DeviceTokenTizenPushTypeID is TL type id of DeviceTokenTizenPush.
|
|
const DeviceTokenTizenPushTypeID = 0xaef0da33
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenTizenPush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenTizenPush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenTizenPush{}
|
|
_ bin.Decoder = &DeviceTokenTizenPush{}
|
|
_ bin.BareEncoder = &DeviceTokenTizenPush{}
|
|
_ bin.BareDecoder = &DeviceTokenTizenPush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenTizenPush{}
|
|
)
|
|
|
|
func (d *DeviceTokenTizenPush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.RegID == "") {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenTizenPush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenTizenPush(nil)"
|
|
}
|
|
type Alias DeviceTokenTizenPush
|
|
return fmt.Sprintf("DeviceTokenTizenPush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenTizenPush) TypeID() uint32 {
|
|
return DeviceTokenTizenPushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenTizenPush) TypeName() string {
|
|
return "deviceTokenTizenPush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenTizenPush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenTizenPush",
|
|
ID: DeviceTokenTizenPushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "RegID",
|
|
SchemaName: "reg_id",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenTizenPush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenTizenPush#aef0da33 as nil")
|
|
}
|
|
b.PutID(DeviceTokenTizenPushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenTizenPush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenTizenPush#aef0da33 as nil")
|
|
}
|
|
b.PutString(d.RegID)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenTizenPush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenTizenPush#aef0da33 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenTizenPushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenTizenPush#aef0da33: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenTizenPush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenTizenPush#aef0da33 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenTizenPush#aef0da33: field reg_id: %w", err)
|
|
}
|
|
d.RegID = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenTizenPush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenTizenPush#aef0da33 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenTizenPush")
|
|
b.Comma()
|
|
b.FieldStart("reg_id")
|
|
b.PutString(d.RegID)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenTizenPush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenTizenPush#aef0da33 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenTizenPush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenTizenPush#aef0da33: %w", err)
|
|
}
|
|
case "reg_id":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenTizenPush#aef0da33: field reg_id: %w", err)
|
|
}
|
|
d.RegID = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetRegID returns value of RegID field.
|
|
func (d *DeviceTokenTizenPush) GetRegID() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.RegID
|
|
}
|
|
|
|
// DeviceTokenHuaweiPush represents TL type `deviceTokenHuaweiPush#768f4e26`.
|
|
type DeviceTokenHuaweiPush struct {
|
|
// Device registration token; may be empty to deregister a device
|
|
Token string
|
|
// True, if push notifications must be additionally encrypted
|
|
Encrypt bool
|
|
}
|
|
|
|
// DeviceTokenHuaweiPushTypeID is TL type id of DeviceTokenHuaweiPush.
|
|
const DeviceTokenHuaweiPushTypeID = 0x768f4e26
|
|
|
|
// construct implements constructor of DeviceTokenClass.
|
|
func (d DeviceTokenHuaweiPush) construct() DeviceTokenClass { return &d }
|
|
|
|
// Ensuring interfaces in compile-time for DeviceTokenHuaweiPush.
|
|
var (
|
|
_ bin.Encoder = &DeviceTokenHuaweiPush{}
|
|
_ bin.Decoder = &DeviceTokenHuaweiPush{}
|
|
_ bin.BareEncoder = &DeviceTokenHuaweiPush{}
|
|
_ bin.BareDecoder = &DeviceTokenHuaweiPush{}
|
|
|
|
_ DeviceTokenClass = &DeviceTokenHuaweiPush{}
|
|
)
|
|
|
|
func (d *DeviceTokenHuaweiPush) Zero() bool {
|
|
if d == nil {
|
|
return true
|
|
}
|
|
if !(d.Token == "") {
|
|
return false
|
|
}
|
|
if !(d.Encrypt == false) {
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|
|
|
|
// String implements fmt.Stringer.
|
|
func (d *DeviceTokenHuaweiPush) String() string {
|
|
if d == nil {
|
|
return "DeviceTokenHuaweiPush(nil)"
|
|
}
|
|
type Alias DeviceTokenHuaweiPush
|
|
return fmt.Sprintf("DeviceTokenHuaweiPush%+v", Alias(*d))
|
|
}
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
func (*DeviceTokenHuaweiPush) TypeID() uint32 {
|
|
return DeviceTokenHuaweiPushTypeID
|
|
}
|
|
|
|
// TypeName returns name of type in TL schema.
|
|
func (*DeviceTokenHuaweiPush) TypeName() string {
|
|
return "deviceTokenHuaweiPush"
|
|
}
|
|
|
|
// TypeInfo returns info about TL type.
|
|
func (d *DeviceTokenHuaweiPush) TypeInfo() tdp.Type {
|
|
typ := tdp.Type{
|
|
Name: "deviceTokenHuaweiPush",
|
|
ID: DeviceTokenHuaweiPushTypeID,
|
|
}
|
|
if d == nil {
|
|
typ.Null = true
|
|
return typ
|
|
}
|
|
typ.Fields = []tdp.Field{
|
|
{
|
|
Name: "Token",
|
|
SchemaName: "token",
|
|
},
|
|
{
|
|
Name: "Encrypt",
|
|
SchemaName: "encrypt",
|
|
},
|
|
}
|
|
return typ
|
|
}
|
|
|
|
// Encode implements bin.Encoder.
|
|
func (d *DeviceTokenHuaweiPush) Encode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenHuaweiPush#768f4e26 as nil")
|
|
}
|
|
b.PutID(DeviceTokenHuaweiPushTypeID)
|
|
return d.EncodeBare(b)
|
|
}
|
|
|
|
// EncodeBare implements bin.BareEncoder.
|
|
func (d *DeviceTokenHuaweiPush) EncodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenHuaweiPush#768f4e26 as nil")
|
|
}
|
|
b.PutString(d.Token)
|
|
b.PutBool(d.Encrypt)
|
|
return nil
|
|
}
|
|
|
|
// Decode implements bin.Decoder.
|
|
func (d *DeviceTokenHuaweiPush) Decode(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenHuaweiPush#768f4e26 to nil")
|
|
}
|
|
if err := b.ConsumeID(DeviceTokenHuaweiPushTypeID); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenHuaweiPush#768f4e26: %w", err)
|
|
}
|
|
return d.DecodeBare(b)
|
|
}
|
|
|
|
// DecodeBare implements bin.BareDecoder.
|
|
func (d *DeviceTokenHuaweiPush) DecodeBare(b *bin.Buffer) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenHuaweiPush#768f4e26 to nil")
|
|
}
|
|
{
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenHuaweiPush#768f4e26: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
}
|
|
{
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenHuaweiPush#768f4e26: field encrypt: %w", err)
|
|
}
|
|
d.Encrypt = value
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
|
|
func (d *DeviceTokenHuaweiPush) EncodeTDLibJSON(b tdjson.Encoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't encode deviceTokenHuaweiPush#768f4e26 as nil")
|
|
}
|
|
b.ObjStart()
|
|
b.PutID("deviceTokenHuaweiPush")
|
|
b.Comma()
|
|
b.FieldStart("token")
|
|
b.PutString(d.Token)
|
|
b.Comma()
|
|
b.FieldStart("encrypt")
|
|
b.PutBool(d.Encrypt)
|
|
b.Comma()
|
|
b.StripComma()
|
|
b.ObjEnd()
|
|
return nil
|
|
}
|
|
|
|
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
|
|
func (d *DeviceTokenHuaweiPush) DecodeTDLibJSON(b tdjson.Decoder) error {
|
|
if d == nil {
|
|
return fmt.Errorf("can't decode deviceTokenHuaweiPush#768f4e26 to nil")
|
|
}
|
|
|
|
return b.Obj(func(b tdjson.Decoder, key []byte) error {
|
|
switch string(key) {
|
|
case tdjson.TypeField:
|
|
if err := b.ConsumeID("deviceTokenHuaweiPush"); err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenHuaweiPush#768f4e26: %w", err)
|
|
}
|
|
case "token":
|
|
value, err := b.String()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenHuaweiPush#768f4e26: field token: %w", err)
|
|
}
|
|
d.Token = value
|
|
case "encrypt":
|
|
value, err := b.Bool()
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode deviceTokenHuaweiPush#768f4e26: field encrypt: %w", err)
|
|
}
|
|
d.Encrypt = value
|
|
default:
|
|
return b.Skip()
|
|
}
|
|
return nil
|
|
})
|
|
}
|
|
|
|
// GetToken returns value of Token field.
|
|
func (d *DeviceTokenHuaweiPush) GetToken() (value string) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Token
|
|
}
|
|
|
|
// GetEncrypt returns value of Encrypt field.
|
|
func (d *DeviceTokenHuaweiPush) GetEncrypt() (value bool) {
|
|
if d == nil {
|
|
return
|
|
}
|
|
return d.Encrypt
|
|
}
|
|
|
|
// DeviceTokenClassName is schema name of DeviceTokenClass.
|
|
const DeviceTokenClassName = "DeviceToken"
|
|
|
|
// DeviceTokenClass represents DeviceToken generic type.
|
|
//
|
|
// Example:
|
|
//
|
|
// g, err := tdapi.DecodeDeviceToken(buf)
|
|
// if err != nil {
|
|
// panic(err)
|
|
// }
|
|
// switch v := g.(type) {
|
|
// case *tdapi.DeviceTokenFirebaseCloudMessaging: // deviceTokenFirebaseCloudMessaging#d0714a07
|
|
// case *tdapi.DeviceTokenApplePush: // deviceTokenApplePush#17196bc3
|
|
// case *tdapi.DeviceTokenApplePushVoIP: // deviceTokenApplePushVoIP#2ff045e9
|
|
// case *tdapi.DeviceTokenWindowsPush: // deviceTokenWindowsPush#abed428f
|
|
// case *tdapi.DeviceTokenMicrosoftPush: // deviceTokenMicrosoftPush#48f8e04c
|
|
// case *tdapi.DeviceTokenMicrosoftPushVoIP: // deviceTokenMicrosoftPushVoIP#d12ca351
|
|
// case *tdapi.DeviceTokenWebPush: // deviceTokenWebPush#9affdef7
|
|
// case *tdapi.DeviceTokenSimplePush: // deviceTokenSimplePush#2f49a60
|
|
// case *tdapi.DeviceTokenUbuntuPush: // deviceTokenUbuntuPush#6a3c0d26
|
|
// case *tdapi.DeviceTokenBlackBerryPush: // deviceTokenBlackBerryPush#5cef0102
|
|
// case *tdapi.DeviceTokenTizenPush: // deviceTokenTizenPush#aef0da33
|
|
// case *tdapi.DeviceTokenHuaweiPush: // deviceTokenHuaweiPush#768f4e26
|
|
// default: panic(v)
|
|
// }
|
|
type DeviceTokenClass interface {
|
|
bin.Encoder
|
|
bin.Decoder
|
|
bin.BareEncoder
|
|
bin.BareDecoder
|
|
construct() DeviceTokenClass
|
|
|
|
// TypeID returns type id in TL schema.
|
|
//
|
|
// See https://core.telegram.org/mtproto/TL-tl#remarks.
|
|
TypeID() uint32
|
|
// TypeName returns name of type in TL schema.
|
|
TypeName() string
|
|
// String implements fmt.Stringer.
|
|
String() string
|
|
// Zero returns true if current object has a zero value.
|
|
Zero() bool
|
|
|
|
EncodeTDLibJSON(b tdjson.Encoder) error
|
|
DecodeTDLibJSON(b tdjson.Decoder) error
|
|
}
|
|
|
|
// DecodeDeviceToken implements binary de-serialization for DeviceTokenClass.
|
|
func DecodeDeviceToken(buf *bin.Buffer) (DeviceTokenClass, error) {
|
|
id, err := buf.PeekID()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
switch id {
|
|
case DeviceTokenFirebaseCloudMessagingTypeID:
|
|
// Decoding deviceTokenFirebaseCloudMessaging#d0714a07.
|
|
v := DeviceTokenFirebaseCloudMessaging{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenApplePushTypeID:
|
|
// Decoding deviceTokenApplePush#17196bc3.
|
|
v := DeviceTokenApplePush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenApplePushVoIPTypeID:
|
|
// Decoding deviceTokenApplePushVoIP#2ff045e9.
|
|
v := DeviceTokenApplePushVoIP{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenWindowsPushTypeID:
|
|
// Decoding deviceTokenWindowsPush#abed428f.
|
|
v := DeviceTokenWindowsPush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenMicrosoftPushTypeID:
|
|
// Decoding deviceTokenMicrosoftPush#48f8e04c.
|
|
v := DeviceTokenMicrosoftPush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenMicrosoftPushVoIPTypeID:
|
|
// Decoding deviceTokenMicrosoftPushVoIP#d12ca351.
|
|
v := DeviceTokenMicrosoftPushVoIP{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenWebPushTypeID:
|
|
// Decoding deviceTokenWebPush#9affdef7.
|
|
v := DeviceTokenWebPush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenSimplePushTypeID:
|
|
// Decoding deviceTokenSimplePush#2f49a60.
|
|
v := DeviceTokenSimplePush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenUbuntuPushTypeID:
|
|
// Decoding deviceTokenUbuntuPush#6a3c0d26.
|
|
v := DeviceTokenUbuntuPush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenBlackBerryPushTypeID:
|
|
// Decoding deviceTokenBlackBerryPush#5cef0102.
|
|
v := DeviceTokenBlackBerryPush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenTizenPushTypeID:
|
|
// Decoding deviceTokenTizenPush#aef0da33.
|
|
v := DeviceTokenTizenPush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case DeviceTokenHuaweiPushTypeID:
|
|
// Decoding deviceTokenHuaweiPush#768f4e26.
|
|
v := DeviceTokenHuaweiPush{}
|
|
if err := v.Decode(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
default:
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", bin.NewUnexpectedID(id))
|
|
}
|
|
}
|
|
|
|
// DecodeTDLibJSONDeviceToken implements binary de-serialization for DeviceTokenClass.
|
|
func DecodeTDLibJSONDeviceToken(buf tdjson.Decoder) (DeviceTokenClass, error) {
|
|
id, err := buf.FindTypeID()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
switch id {
|
|
case "deviceTokenFirebaseCloudMessaging":
|
|
// Decoding deviceTokenFirebaseCloudMessaging#d0714a07.
|
|
v := DeviceTokenFirebaseCloudMessaging{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenApplePush":
|
|
// Decoding deviceTokenApplePush#17196bc3.
|
|
v := DeviceTokenApplePush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenApplePushVoIP":
|
|
// Decoding deviceTokenApplePushVoIP#2ff045e9.
|
|
v := DeviceTokenApplePushVoIP{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenWindowsPush":
|
|
// Decoding deviceTokenWindowsPush#abed428f.
|
|
v := DeviceTokenWindowsPush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenMicrosoftPush":
|
|
// Decoding deviceTokenMicrosoftPush#48f8e04c.
|
|
v := DeviceTokenMicrosoftPush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenMicrosoftPushVoIP":
|
|
// Decoding deviceTokenMicrosoftPushVoIP#d12ca351.
|
|
v := DeviceTokenMicrosoftPushVoIP{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenWebPush":
|
|
// Decoding deviceTokenWebPush#9affdef7.
|
|
v := DeviceTokenWebPush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenSimplePush":
|
|
// Decoding deviceTokenSimplePush#2f49a60.
|
|
v := DeviceTokenSimplePush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenUbuntuPush":
|
|
// Decoding deviceTokenUbuntuPush#6a3c0d26.
|
|
v := DeviceTokenUbuntuPush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenBlackBerryPush":
|
|
// Decoding deviceTokenBlackBerryPush#5cef0102.
|
|
v := DeviceTokenBlackBerryPush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenTizenPush":
|
|
// Decoding deviceTokenTizenPush#aef0da33.
|
|
v := DeviceTokenTizenPush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
case "deviceTokenHuaweiPush":
|
|
// Decoding deviceTokenHuaweiPush#768f4e26.
|
|
v := DeviceTokenHuaweiPush{}
|
|
if err := v.DecodeTDLibJSON(buf); err != nil {
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", err)
|
|
}
|
|
return &v, nil
|
|
default:
|
|
return nil, fmt.Errorf("unable to decode DeviceTokenClass: %w", tdjson.NewUnexpectedID(id))
|
|
}
|
|
}
|
|
|
|
// DeviceToken boxes the DeviceTokenClass providing a helper.
|
|
type DeviceTokenBox struct {
|
|
DeviceToken DeviceTokenClass
|
|
}
|
|
|
|
// Decode implements bin.Decoder for DeviceTokenBox.
|
|
func (b *DeviceTokenBox) Decode(buf *bin.Buffer) error {
|
|
if b == nil {
|
|
return fmt.Errorf("unable to decode DeviceTokenBox to nil")
|
|
}
|
|
v, err := DecodeDeviceToken(buf)
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode boxed value: %w", err)
|
|
}
|
|
b.DeviceToken = v
|
|
return nil
|
|
}
|
|
|
|
// Encode implements bin.Encode for DeviceTokenBox.
|
|
func (b *DeviceTokenBox) Encode(buf *bin.Buffer) error {
|
|
if b == nil || b.DeviceToken == nil {
|
|
return fmt.Errorf("unable to encode DeviceTokenClass as nil")
|
|
}
|
|
return b.DeviceToken.Encode(buf)
|
|
}
|
|
|
|
// DecodeTDLibJSON implements bin.Decoder for DeviceTokenBox.
|
|
func (b *DeviceTokenBox) DecodeTDLibJSON(buf tdjson.Decoder) error {
|
|
if b == nil {
|
|
return fmt.Errorf("unable to decode DeviceTokenBox to nil")
|
|
}
|
|
v, err := DecodeTDLibJSONDeviceToken(buf)
|
|
if err != nil {
|
|
return fmt.Errorf("unable to decode boxed value: %w", err)
|
|
}
|
|
b.DeviceToken = v
|
|
return nil
|
|
}
|
|
|
|
// EncodeTDLibJSON implements bin.Encode for DeviceTokenBox.
|
|
func (b *DeviceTokenBox) EncodeTDLibJSON(buf tdjson.Encoder) error {
|
|
if b == nil || b.DeviceToken == nil {
|
|
return fmt.Errorf("unable to encode DeviceTokenClass as nil")
|
|
}
|
|
return b.DeviceToken.EncodeTDLibJSON(buf)
|
|
}
|