An Elixir client for the LINE platform.
ExLine wraps the LINE Messaging API (with LIFF / LINE Login planned). It is
built around a few small ideas:
- Credentials are values. Build an
ExLine.Clientand pass it per call; there is no global state, so multi-channel / multi-tenant apps are first-class. - HTTP is swappable. Calls go through
ExLine.Client.Adapter, so tests can mock the network. - Webhooks verify and route.
ExLine.Webhook.Signature/ExLine.Webhook.Plugverify thex-line-signature;ExLine.EventRouterdispatches events.
Quick start
client = ExLine.Client.new(access_token: "CHANNEL_ACCESS_TOKEN")
ExLine.Api.Messaging.push(client, "U123...", ExLine.Message.text("hello"))See ExLine.Api.Messaging, ExLine.Message, ExLine.Webhook.Signature, and
ExLine.EventRouter.