README.md

# Wechatex

![version](https://img.shields.io/hexpm/v/wechatex.svg)
![license](https://img.shields.io/hexpm/l/wechatex.svg)
![downloads](https://img.shields.io/hexpm/dt/wechatex.svg)

Wechat plugs for Elixir.

## Installation

Add wechatex to your list of dependencies in `mix.exs`:

    def deps do
      [{:wechatex, "~> 0.0.1"}]
    end

## Usage

1. router.ex

        defmodule WechatexDemo.Router do
          use WechatexDemo.Web, :router

          pipeline :verify_signature do
            plug Wechatex.Plugs.SignatureVerifier,
            token: "_token_"
          end

          pipeline :verify_msg_signature do
            plug Wechatex.Plugs.MsgSignatureVerifier,
            token: "_token_",
            appid: "_appid_",
            encoding_aes_key: "_encoding_aes_key_"
          end

          scope "/", WechatexDemo do
            pipe_through :verify_signature
            get "/wechat", WechatController, :index
          end

          scope "/", WechatexDemo do
            pipe_through :verify_msg_signature
            post "/wechat", WechatController, :create
          end
        end

2. wechat_controller.ex

        defmodule WechatexDemo.WechatController do
          use WechatexDemo.Web, :controller

          def index(conn, params) do
            text conn, params["echostr"]
          end

          def create(conn, _params) do
            IO.inspect conn.assigns[:msg]
            text conn, ""
          end
        end