afilnet/afilnet-api

用于使用Afilet API的PHP库

v1.0.0 2016-06-09 10:38 UTC

This package is not auto-updated.

Last update: 2024-09-25 20:00:50 UTC


README

易于使用

这个库旨在提供一个简单的方式来使用Afilnet API服务。您可以使用Afilnet账户发送短信、邮件和语音通知。此包可以使用composer安装,命令为 "composer require afilnet/afilnet-api"。

您只需要一个有足够积分的Afilnet账户。如果您没有账户,可以在我们的网站上几分钟内创建一个。

索引

Afilnet

Afilnet Cloud Marketing Logo

Afilnet是一家致力于云营销的公司。

通过这个模块,我们旨在通过我们的API简化我们提供的服务。

如果客户在使用账户或我们的服务时遇到问题,我们将提供支持。

如果您发现任何错误或虫子,请随时联系我们。

网站

我们提供3种不同的语言

回到顶部

设置

注意:您需要有一个带有积分的Afilnet账户才能使用此模块

如果您没有账户,请访问我们的网页并创建一个。

之后,您将需要购买一些积分才能发送通知

我们有一个测试服务的优惠活动,免费提供10积分

一旦您有了账户,我们就可以在您的应用程序中设置此模块

第一步是安装模块,您可以使用composer或手动安装 Composer: "composer require afilnet/afilnet-api"。然后创建对象

<?php
$afilnet = new \Afilnet\Afilnet();
?>

然后使用您的账户登录(如果您登录不成功,所有服务将返回错误:错误的用户名或密码)。

<?php
if ($afilnet->login("username","password")){
    //You have logged in successfully
} else {
    //Bad credentials, you must login to use the services
}
?>

现在我们已经准备好使用服务了 :)

回到顶部

Afilnet API服务

有3个可用通道

此库使用以下结构

<?php
$afilnet->channel->service($params);
?>

这三个通道具有相同的服务

  • send(发送给单个用户)
  • sendFromTemplate(使用模板发送给单个用户)
  • sendToGroup(发送到指定的组)
  • sendToGroupFromTemplate(使用模板发送到指定的组)
  • getDeliveryStatus(获取消息的投递状态)

短信

如果您想使用短信,只需调用sms对象和所需的服务即可。

服务

<?php
//SEND
$array = $afilnet->sms->send(
    'from',
    'to', 
    'msg',
    'scheduledatetime', // (optional) 
    'output' // (optional)
);

//SEND FROM TEMPLATE
$array = $afilnet->sms->sendFromTemplate(
    'to', 
    'idTemplate', 
    'params', // (optional) 
    'scheduledatetime', // (optional) 
    'output' // (optional) 
);

//SEND TO GROUP
$array = $afilnet->sms->sendToGroup(
   'from', 
   'countryCode', 
   'idGroup', 
   'msg', 
   'scheduledatetime', // (optional) 
   'output' // (optional) 
);

//SEND TO GROUP FROM TEMPLATE
$array = $afilnet->sms->sendToGroupFromTemplate(
    'countryCode', 
    'idGroup', 
    'idTemplate', 
    'scheduledatetime', // (optional) 
    'output' // (optional) 
);

// GET DELIVERY STATUS
$array = $afilnet->sms->getDeliveryStatus('idMessage');
?>

示例

<?php
$to = "34600000000";
$message = "Hey Luke, I want to tell you something... I am your father.";
$from = "Darth Vader";

$result = $afilnet->sms->send(
    to,
    message,
    from
);

if (result['status']=="SUCCESS"){
    echo("Nooooo!!!!!11");
} else { // == "ERROR"
    echo("I have not received any sms :(");
}
?>

回到顶部

邮件

如果您想使用邮件,只需调用sms对象和所需的服务即可。

服务

<?php
//SEND
$array = $afilnet->email->send(
    'subject',
    'to', 
    'msg',
    'scheduledatetime', // (optional) 
    'output' // (optional)
);

//SEND FROM TEMPLATE
$array = $afilnet->email->sendFromTemplate(
    'to', 
    'idTemplate', 
    'params', // (optional) 
    'scheduledatetime', // (optional) 
    'output' // (optional) 
);

//SEND TO GROUP
$array = $afilnet->email->sendToGroup(
   'subject', 
   'idGroup', 
   'msg', 
   'scheduledatetime', // (optional) 
   'output' // (optional) 
);

//SEND TO GROUP FROM TEMPLATE
$array = $afilnet->email->sendToGroupFromTemplate(
    'idGroup', 
    'idTemplate', 
    'scheduledatetime', // (optional) 
    'output' // (optional) 
);

// GET DELIVERY STATUS
$array = $afilnet->email->getDeliveryStatus('idMessage');
?>

示例

<?php
$subject = "I have a surprise for you - Darth Vader";
$to = "luke_skywalker@newjediorder.com";
$message = "<h2>I am your father.</h2><hr><p>Hehehe surprise.</p><p>Best wishes, Darth Vader.</p>";

$result = $afilnet->email->send(
    subject,
    to,
    message
);

if (result['status']=="SUCCESS"){
    echo("Nooooo!!!!!11");
} else { // == "ERROR"
    echo("I have not received any email :(");
}
?>

回到顶部

语音

如果您想使用语音,只需调用sms对象和所需的服务即可。

服务

<?php
//SEND
$array = $afilnet->voice->send(
    'to', 
    'msg',
    'lang', // (optional) 
    'scheduledatetime', // (optional) 
    'output' // (optional)
);

//SEND FROM TEMPLATE
$array = $afilnet->voice->sendFromTemplate(
    'to', 
    'idTemplate', 
    'params', // (optional) 
    'scheduledatetime', // (optional) 
    'output' // (optional) 
);

//SEND TO GROUP
$array = $afilnet->voice->sendToGroup(
   'countryCode', 
   'idGroup', 
   'msg', 
   'scheduledatetime', // (optional) 
   'output' // (optional) 
);

//SEND TO GROUP FROM TEMPLATE
$array = $afilnet->voice->sendToGroupFromTemplate(
    'countryCode', 
    'idGroup', 
    'idTemplate', 
    'scheduledatetime', // (optional) 
    'output' // (optional) 
);

// GET DELIVERY STATUS
$array = $afilnet->voice->getDeliveryStatus('idMessage');
?>

示例

<?php
$to = "346000000";
$message = "Hey Luke, I want to tell you something... I... am... your father.";
$lang = "EN";

$result = $afilnet->voice->send(
    to,
    message,
    lang
);

if (result['status']=="SUCCESS"){
    echo("Wait, what?!... Nooooo!");
} else { // == "ERROR"
    echo("I have not received any phone call");
}


afilnet.sendEmail(
    to,
    message,
    function(result){
        if (result.status=="SUCCESS"){
            echo("Wait, what?!... Nooooo!");
        } else { // == "ERROR"
            echo("I have not received any phone call");
        }
    },
    lang
);
?>

回到顶部

响应

所有服务接收类似的参数,但都返回相同的数组(JSON解码)。

服务将返回具有以下结构的数组

  • 状态
  • 错误(如果状态=ERROR),在这里您将收到错误代码
  • 结果(如果状态=SUCCESS),在这里您将收到以下值
    • 消息ID
    • 积分

错误代码

代码 | 描述 --- | --- | --- MISSING_USER | 用户或邮箱未包含 MISSING_PASSWORD | 密码未包含 MISSING_CLASS | 类未包含 MISSING_METHOD | 方法未包含 MISSING_COMPULSORY_PARAM | 必需参数未包含 INCORRECT_USER_PASSWORD | 用户名或密码错误 INCORRECT_CLASS | 类错误 INCORRECT_METHOD | 方法错误 NO_ROUTE_AVAILABLE | 指定目的地无可用路径 NO_CREDITS | 余额不足

示例

*$afilnet->sms->send 的示例

  • 如果一切正常
<?php
$result = [
    "status" => "SUCCESS",
    "result" => [
        "messageid" => "id_from_message",
        "credits" => "credits_spent"
    ]    
]
?>
  • 如果出现问题
<?php
$result = [
    "status" => "ERROR",
    "error" => "error_message"  
]
?>

回到顶部