承接 boneq/laravel-onenet 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

boneq/laravel-onenet

Composer 安装命令:

composer require boneq/laravel-onenet

包简介

laravel onenet extension

README 文档

README

注意:会使用到laravel中的CaChe缓存还判断重复数据,请尽量将缓存配置成nosql方式(redis等)

onenet for Laravel是用于OneNet平台数据接收的一个laravel库

交流QQ群:320523384

安装

  1. 安装包

使用前请先阅读OneNet开发文档

composer require "boneq/laravel-onenet:1.1.0"

配置

  1. 手动注册 ServiceProvider(laravel5.5+ 版本不需要手动注册):
Boneq\OneNet\OneNetServiceProvider::class,
  1. 创建配置文件:
php artisan vendor:publish --provider="Boneq\OneNet\OneNetServiceProvider"

3.1 (可选3.2)请修改应用根目录下的 config/onenet.php 中对应的项;

'token'=>env('OneNet_Token','令牌'),
'encodekey'=>env('OneNet_EncodingAESKey', '消息加解密秘钥'),
'apikey'=>env('OneNet_APIKey','设备操作中的密钥')

3.2 (可选3.1)或者在.env文件中写入下面内容

OneNet_Token=令牌
OneNet_EncodingAESKey=消息加解密秘钥
OneNet_APIKey=设备操作中的密钥
  1. 添加外观到 config/app.php 中的 aliases 部分(laravel5.5+不用手动添加)
'OneNet'=>Boneq\OneNet\Facades\OneNet::class,

从接收平台数据

Laravel csrf问题

  1. 在 CSRF 中间件里排除api的路由
  2. 关掉 CSRF 中间件(不推荐)

下面以接收OneNet平台推送数据例子:

假如您的域名为 app.dev 那么请登录OneNet平台 “第三方开放平台” 修改 “URL(请填写服务器配置)” 为: http://app.dev/onenet

路由:

Route::any('/onenet', 'OneNetController@onenet');

注意:一定是 Route::any, 因为OneNet平台认证的时候是 GET, 推送平台消息时是 POST

然后创建控制器 OneNetController

<?php

namespace App\Http\Controllers;

use OneNet;

class OneNetController extends Controller
{
    public function serve()
    {
        $app = app('onenet');
        $server=$app->server(function($message){
            //收到服务器推送的信息数据存为日志 info为laravel日志函数
            info($message);
        });
        //必须return $server 基本平台验证就要返回数据
        return $server;
    }
}

发送数据到平台

添加终端

use OneNet;

public function addTerminal()
{
    // name 是设备名称,MQTT是设备协议
    return OneNet::add('name','MQTT');
}

返回数据

{
    "state":true,
    "device_id":"1000000"
}

注释:添加成功返回true和设备id,失败反回false

编辑终端

use OneNet;

public function editTerminal()
{
    // ter_id是设备id,name 是设备名称,MQTT是设备协议
    return OneNet::edit('ter_id','name','MQTT');
}

返回数据

{
    "state":true
}

注释:编辑成功返回true,失败反回false

删除终端

use OneNet;

public function deleteTerminal()
{
    // ter_id是设备id
    return OneNet::delect('ter_id');
}

返回数据

{
    "state":true
}

注释:删除成功返回true,失败反回false

向终端发送命令

use OneNet;

public function sendMessage()
{
    // ter_id是设备id,$data是json数据
    $data=['msgtype'=>'text','text'=>'4444'];
    return OneNet::send('ter_id',$data);
}

返回数据

{
    "state":true,
    "cmd_uuid":"111111111"
}

注释:发送成功返回true,和数据的cmd_uuid,失败返回false

升级规划

会逐步优化请求操作相关的方法

License

MIT

boneq/laravel-onenet 适用场景与选型建议

boneq/laravel-onenet 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 104 次下载、GitHub Stars 达 6, 最近一次更新时间为 2017 年 10 月 20 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「sdk」 「laravel」 「iot」 「onenet」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 boneq/laravel-onenet 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 boneq/laravel-onenet 我们能提供哪些服务?
定制开发 / 二次开发

基于 boneq/laravel-onenet 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 104
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 6
  • 点击次数: 12
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 6
  • Watchers: 2
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2017-10-20