Rename carrierpidgeon
parent
65c7c0a00c
commit
bd8158b1d9
|
@ -1,6 +1,6 @@
|
|||
import Config
|
||||
|
||||
config :discordirc,
|
||||
config :carrierpidgeon,
|
||||
channels: [
|
||||
],
|
||||
networks: [
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
defmodule Discordirc do
|
||||
defmodule CarrierPidgeon do
|
||||
@moduledoc """
|
||||
Entrypoint
|
||||
"""
|
||||
use Application
|
||||
|
||||
alias Discordirc.IrcNetworkSupervisor
|
||||
alias Discordirc.DiscordHandler
|
||||
alias Discordirc.WebhookService
|
||||
alias CarrierPidgeon.IrcNetworkSupervisor
|
||||
alias CarrierPidgeon.DiscordHandler
|
||||
alias CarrierPidgeon.WebhookService
|
||||
|
||||
def start(_type, _args) do
|
||||
children = [
|
|
@ -1,10 +1,10 @@
|
|||
defmodule Discordirc.ChannelMap do
|
||||
defmodule CarrierPidgeon.ChannelMap do
|
||||
@moduledoc """
|
||||
maps discord channels to irc channels
|
||||
"""
|
||||
def discord(network, channel) do
|
||||
id =
|
||||
Application.fetch_env!(:discordirc, :channels)
|
||||
Application.fetch_env!(:carrierpidgeon, :channels)
|
||||
|> Enum.filter(&(&1.ircnetwork == network and &1.ircchannel == channel))
|
||||
|> List.first()
|
||||
|
||||
|
@ -19,7 +19,7 @@ defmodule Discordirc.ChannelMap do
|
|||
|
||||
def irc(id) do
|
||||
channel =
|
||||
Application.fetch_env!(:discordirc, :channels)
|
||||
Application.fetch_env!(:carrierpidgeon, :channels)
|
||||
|> Enum.filter(&(&1.discordid == id))
|
||||
|> List.first()
|
||||
|
||||
|
@ -33,7 +33,7 @@ defmodule Discordirc.ChannelMap do
|
|||
end
|
||||
|
||||
def getircchannels(network) do
|
||||
Application.fetch_env!(:discordirc, :channels)
|
||||
Application.fetch_env!(:carrierpidgeon, :channels)
|
||||
|> Enum.filter(&(&1.ircnetwork == network))
|
||||
|> Enum.map(& &1.ircchannel)
|
||||
end
|
|
@ -1,8 +1,8 @@
|
|||
defmodule Discordirc.Formatter do
|
||||
defmodule CarrierPidgeon.Formatter do
|
||||
@moduledoc """
|
||||
Transforms messages to/from discord from/to irc
|
||||
"""
|
||||
alias Discordirc.DiscordInfo
|
||||
alias CarrierPidgeon.DiscordInfo
|
||||
|
||||
@discordcdn "https://cdn.discordapp.com/"
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
defmodule Discordirc.DiscordHandler do
|
||||
defmodule CarrierPidgeon.DiscordHandler do
|
||||
@moduledoc """
|
||||
discord bot
|
||||
"""
|
||||
use Nostrum.Consumer
|
||||
alias Nostrum.Api
|
||||
alias Discordirc.ChannelMap
|
||||
alias CarrierPidgeon.ChannelMap
|
||||
|
||||
def start_link do
|
||||
Consumer.start_link(__MODULE__)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule Discordirc.DiscordInfo do
|
||||
defmodule CarrierPidgeon.DiscordInfo do
|
||||
@moduledoc """
|
||||
helper functions for discord text things
|
||||
"""
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule Discordirc.WebhookService do
|
||||
defmodule CarrierPidgeon.WebhookService do
|
||||
@moduledoc """
|
||||
This module manages the webhooks that we output
|
||||
to discord channels with
|
||||
|
@ -25,7 +25,7 @@ defmodule Discordirc.WebhookService do
|
|||
end
|
||||
|
||||
def create_hook(state, channel_id, retry \\ 0) do
|
||||
avatar = Base.encode64(File.read!("defaultavatar.jpg"))
|
||||
avatar = Base.encode64(File.read!("priv/defaultavatar.jpg"))
|
||||
|
||||
case DiscordAPI.create_webhook(
|
||||
channel_id,
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
defmodule Discordirc.IRC do
|
||||
defmodule CarrierPidgeon.IRC do
|
||||
@moduledoc """
|
||||
IRC bot portion
|
||||
"""
|
||||
use GenServer
|
||||
require Logger
|
||||
import Discordirc.ByteSplit
|
||||
import CarrierPidgeon.ByteSplit
|
||||
|
||||
defmodule State do
|
||||
defstruct server: nil,
|
||||
|
@ -32,8 +32,8 @@ defmodule Discordirc.IRC do
|
|||
alias ExIRC.Client
|
||||
alias ExIRC.SenderInfo
|
||||
alias ExIRC.Whois
|
||||
alias Discordirc.ChannelMap
|
||||
alias Discordirc.Formatter
|
||||
alias CarrierPidgeon.ChannelMap
|
||||
alias CarrierPidgeon.Formatter
|
||||
|
||||
def start_link(%{:network => network} = params) when is_map(params) do
|
||||
state = %State{State.from_params(params) | :channels => ChannelMap.getircchannels(network)}
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
defmodule Discordirc.IrcNetworkSupervisor do
|
||||
defmodule CarrierPidgeon.IrcNetworkSupervisor do
|
||||
@moduledoc """
|
||||
Supervises all of the IRC networks.
|
||||
"""
|
||||
|
||||
use Supervisor
|
||||
|
||||
alias Discordirc.IRC
|
||||
alias CarrierPidgeon.IRC
|
||||
|
||||
def start_link(init_arg) do
|
||||
Supervisor.start_link(__MODULE__, init_arg, name: __MODULE__)
|
||||
|
@ -14,7 +14,7 @@ defmodule Discordirc.IrcNetworkSupervisor do
|
|||
@impl true
|
||||
def init(_init_arg) do
|
||||
networks =
|
||||
Application.get_env(:discordirc, :networks)
|
||||
Application.get_env(:carrierpidgeon, :networks)
|
||||
|> Enum.map(&%{start: {IRC, :start_link, [&1]}, id: &1.network})
|
||||
|
||||
Supervisor.init(networks, strategy: :one_for_one)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
defmodule Discordirc.ByteSplit do
|
||||
defmodule CarrierPidgeon.ByteSplit do
|
||||
@moduledoc """
|
||||
Module that splits text by bytes, Unicode Aware.
|
||||
"""
|
||||
|
|
6
mix.exs
6
mix.exs
|
@ -1,9 +1,9 @@
|
|||
defmodule Discordirc.MixProject do
|
||||
defmodule CarrierPidgeon.MixProject do
|
||||
use Mix.Project
|
||||
|
||||
def project do
|
||||
[
|
||||
app: :discordirc,
|
||||
app: :carrierpidgeon,
|
||||
version: "0.1.0",
|
||||
elixir: "~> 1.10",
|
||||
start_permanent: Mix.env() == :prod,
|
||||
|
@ -15,7 +15,7 @@ defmodule Discordirc.MixProject do
|
|||
# Run "mix help compile.app" to learn about applications.
|
||||
def application do
|
||||
[
|
||||
mod: {Discordirc, []},
|
||||
mod: {CarrierPidgeon, []},
|
||||
extra_applications: [:logger]
|
||||
]
|
||||
end
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
defmodule DiscordircTest do
|
||||
use ExUnit.Case
|
||||
doctest Discordirc
|
||||
end
|
|
@ -1,7 +1,7 @@
|
|||
defmodule Discordirc.SplitterTest do
|
||||
defmodule CarrierPidgeon.SplitterTest do
|
||||
use ExUnit.Case
|
||||
import Discordirc.ByteSplit
|
||||
doctest Discordirc.ByteSplit
|
||||
import CarrierPidgeon.ByteSplit
|
||||
doctest CarrierPidgeon.ByteSplit
|
||||
|
||||
test "split by bytes" do
|
||||
assert byte_split("test", 2) == ["te", "st"]
|
||||
|
|
Loading…
Reference in New Issue