Class: MTProto::RPC::GetUpdatesDifference

Inherits:
Object
  • Object
show all
Defined in:
lib/mtproto/rpc/get_updates_difference.rb

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ GetUpdatesDifference

Returns a new instance of GetUpdatesDifference.



9
10
11
# File 'lib/mtproto/rpc/get_updates_difference.rb', line 9

def initialize(client)
  @client = client
end

Instance Method Details

#call(pts:, date:, qts:, pts_limit: 100, qts_limit: 100, pts_total_limit: nil) ⇒ Object

Raises:

  • (ArgumentError)


13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/mtproto/rpc/get_updates_difference.rb', line 13

def call(pts:, date:, qts:, pts_limit: 100, qts_limit: 100, pts_total_limit: nil)
  raise 'Auth key not generated' unless @client.auth_key
  raise ArgumentError, 'pts is required' if pts.nil?
  raise ArgumentError, 'date is required' if date.nil?
  raise ArgumentError, 'qts is required' if qts.nil?

  query = Type::RPC::Updates::GetDifference.build(
    pts: pts,
    pts_limit: pts_limit,
    pts_total_limit: pts_total_limit,
    date: date,
    qts: qts,
    qts_limit: qts_limit
  )

  @client.rpc.call(query)
end

#call_sync(pts:, date:, qts:, pts_limit: 100, qts_limit: 100, pts_total_limit: nil) ⇒ Object

Raises:

  • (ArgumentError)


31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/mtproto/rpc/get_updates_difference.rb', line 31

def call_sync(pts:, date:, qts:, pts_limit: 100, qts_limit: 100, pts_total_limit: nil)
  raise 'Auth key not generated' unless @client.auth_key
  raise ArgumentError, 'pts is required' if pts.nil?
  raise ArgumentError, 'date is required' if date.nil?
  raise ArgumentError, 'qts is required' if qts.nil?

  query = Type::RPC::Updates::GetDifference.build(
    pts: pts,
    pts_limit: pts_limit,
    pts_total_limit: pts_total_limit,
    date: date,
    qts: qts,
    qts_limit: qts_limit
  )

  response = @client.rpc.call_sync(query)
  Type::RPC::Updates::Difference.parse(response)
end