Packages
ex_gram
0.8.1
0.67.0
0.66.0
0.65.0
0.64.0
0.63.0
0.62.0
0.61.0
0.60.0
0.58.0
0.57.0
0.56.1
0.56.0
0.55.1
0.55.0
0.54.0
0.53.0
0.52.2
0.52.1
0.52.0
0.51.1
0.51.0
0.50.2
0.50.1
0.50.0
0.41.0
0.40.0
0.34.0
0.33.0
0.32.0
0.31.0
0.30.0
0.29.0
0.28.0
0.27.0
0.26.0
0.25.0
0.24.1
0.24.0
0.23.0
0.22.0
0.21.0
0.20.0
0.15.0
0.14.0
0.13.0
0.12.0
0.11.0
0.10.0
0.9.0
0.8.1
0.8.0
0.7.1
0.7.0
0.6.2
0.6.1
0.6.0
0.5.0
0.5.0-rc6
0.5.0-rc5
0.5.0-rc4
0.5.0-rc3
0.5.0-rc2
Telegram Bot API low level and framework
Current section
Files
Jump to
Current section
Files
lib/ex_gram/file.ex
defmodule ExGram.File do
@moduledoc """
Helpers when dealing with telegram files
"""
@base_url "https://api.telegram.org/file"
@doc """
Generate the full file URL ready to be downloaded, usage:
First, you need to extract the File with ExGram.get_file(file_id)
Then:
ExGram.File.file_url(file)
You can pass the usual `:bot` and `:token` params:
ExGram.File.file_url(file, bot: :my_bot)
ExGram.File.file_url(file, token: "MyBotToken")
"""
@spec file_url(ExGram.Model.File.t(), keyword) :: String.t()
def file_url(%ExGram.Model.File{file_path: path}, ops \\ []) do
token = ExGram.Token.fetch(ops)
create_url(token, path)
end
defp create_url(token, path) when is_binary(token) and is_binary(path),
do: @base_url <> "/bot" <> token <> "/" <> path
end