karlmacz/chikka

Chikka API for Laravel 5

1.0.0 2017-04-10 01:52 UTC

This package is not auto-updated.

Last update: 2024-09-20 20:31:29 UTC


README

Chikka SMS API package for Laravel 5.

安装

在项目的 composer.json 文件中需要此包。

composer require karlmacz/chikka

配置

将服务提供者添加到项目 config/app.php 文件中的 providers 数组中。

KarlMacz\Chikka\ChikkaServiceProvider::class,

在项目的 .env 文件中添加 CHIKKA_ACCESS_CODECHIKKA_CLIENT_IDCHIKKA_SECRET_KEYCHIKKA_REQUEST_COST

CHIKKA_ACCESS_CODE=your_short_code
CHIKKA_CLIENT_ID=your_client_id
CHIKKA_SECRET_KEY=your_secret_key
CHIKKA_REQUEST_COST=FREE

CHIKKA_REQUEST_COST 的默认值是 FREE,因此如果想让 chikka 决定从用户的实际余额中扣除多少积分,则无需将其添加到项目的 .env 文件中。

此外,CHIKKA_STORE_TRANSACTIONS 也有默认值 false。当设置为 true 时,所有传入和传出的短信都将存储在数据库中。将其设置为 true 后,发布此包的迁移。

php artisan vendor:publish

这将添加 2017_04_08_000000_create_chikka_incoming_sms_table.php2017_04_08_000001_create_chikka_outgoing_sms_table.php 到项目的 database/migrations 目录。之后,运行迁移。

php artisan migrate

使用方法

向用户发送短信

要发送短信,请向 /chikka/send 路径发送 HTTP POST 请求。

<form action="/chikka/send" method="POST">
    <input type="hidden" name="message_type" value="SEND">
    <input type="text" name="mobile_number" required autofocus>
    <textarea name="message" required></textarea>
    <input type="submit" value="Send Message">
</form>

message_type 参数的值必须设置为 SEND

回复用户发送的短信

要回复用户发送给您的短信,请向 /chikka/send 路径发送带有附加参数 request_id 的 HTTP POST 请求。

<form action="/chikka/send" method="POST">
    <input type="hidden" name="message_type" value="REPLY">
    <input type="hidden" name="request_id" value="5048303030534D415254303030303032393230303032303030303030303133323030303036333933393932333934303030303030313331313035303735383137">
    <input type="text" name="mobile_number" required autofocus>
    <textarea name="message" required></textarea>
    <input type="submit" value="Send Message">
</form>

message_type 参数的值必须设置为 REPLY。此外,request_id 参数的值必须是您收到的消息中指示的交易 ID。

还可以使用 /chikka/send 的命名路由 chikka.send

接收用户发送的短信

当在项目的 .env 文件中将 CHIKKA_STORE_TRANSACTIONS 设置为 true 时,所有传入的短信将自动保存到数据库中。

现在,您只需要将 /chikka/receive 路径添加到 Chikka API 设置页面 中的 消息接收器 URL

Sample Image

注意

当使用标准 HTTP 请求向 /chikka/send 路径发送 HTTP POST 请求时,响应将被转换为 flash 会话,您可以使用 session()->get() 显示它。

session()->get('flash_status')
session()->get('flash_message')

但是,当使用 AJAX 向 /chikka/send 路径发送 HTTP POST 请求时,响应将被编码为 JSON。

{ 'status': 'Success', 'message': 'Message sent.' }

许可证

此软件包采用 MIT 许可证 许可。