Packages
ex_gram
0.52.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/mix/tasks/bot.new.ex
defmodule Mix.Tasks.Bot.New do
@moduledoc """
Mix task to create a basic bot module
"""
use Mix.Task
import Mix.Generator
def run(_args) do
app = Mix.Project.config()[:app]
app_module = app |> Atom.to_string() |> Macro.camelize()
target = "lib/#{app}/bot.ex"
template_path = Path.expand("../../../templates/bot.ex", __DIR__)
contents = EEx.eval_file(template_path, app_module: app_module, app: app)
create_file(target, contents)
IO.puts("""
You should also add ExGram and #{app_module}.Bot as children of the application Supervisor,
here is an example using polling:
children = [
ExGram,
{#{app_module}.Bot, [method: :polling, token: token]}
]
""")
end
end