精华内容
下载资源
问答
  • FaceChek:轻互联人脸识别接口源代码(API由百度提供)
  • 说明 今天给大家分享的是类似于淘宝商城系统详细搭建教程 ...2.上传源码,解压源码 3.绑定域名,解析域名 4.访问域名,进行安装,按照提示输入数据库账号和密码 5.安装完成后默认账号admin 密码是你自己填写的
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是
  • 贴吧签系统源码

    2016-05-08 12:33:40
    此套系统需要支持文件写入。 但在V1.1版本中未限制Cron任务运行最高频率及刷新频率,导致某些人利用此漏洞不断提交Cron请求造成数据库满载被迫离线。 在V1.2中作了如下优化: 1.简化安装步骤,不再需要手动升级...
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是一个能在线快速搭建企业网站,为...
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是一个能在线快速搭建企业网站,为...
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是一个能在线快速搭建企业网站,为...
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。 亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是一个能在线快速搭建企业网站,为...
  • PHP即“超文本预处理器”...利于学习,使用广泛,主要适用于Web开发领域。环境要求服务器要求本文以KC1实例测试,配置如表 服务器配置所示。表1服务器配置项目说明规格kc1.large.2 | 2vCPUs | 4GB磁盘系统盘:...

    PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

    环境要求

    云服务器要求

    本文以KC1实例测试,配置如表 云服务器配置所示。

    表1云服务器配置

    项目

    说明

    规格

    kc1.large.2 | 2vCPUs | 4GB

    磁盘

    系统盘:高IO(40GB)

    操作系统要求

    操作系统要求如表 操作系统要求所示。

    表1操作系统要求

    项目

    说明

    下载地址

    CentOS

    7.6

    在公共镜像中已提供。

    Kernel

    4.14.0-115

    在公共镜像中已提供。

    配置编译环境

    安装相关依赖

    yum installlibxml2-devel openssl openssl-devel curl curl-devel libjpeg libjpeg-devel freetype freetype-devel libpng libpng-devel libxslt libxslt-devel pcre pcre-devel bzip2 bzip2-devel  httpd-devel libzip libzip-devel -y

    获取源码

    获取“php7.2.13”源码包。

    cd /usr/local/src

    wget https://www.php.net/distributions/php-7.2.13.tar.gz

    编译和安装

    解压软件包

    tar -zxvf php-7.2.13.tar.gz && cd php-7.2.13

    生成Makefile文件

    ./configure --prefix=/usr/local/php--exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --mandir=/usr/local/php/php/man --with-config-file-path=/usr/local/php/etc --with-mysql-sock=/var/lib/mysql/mysql.sock --with-mhash--with-openssl --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --with-gd --with-jpeg-dir --with-png-dir --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-freetype-dir --enable-opcache --enable-fpm --with-fpm-user=www --with-fpm-group=www --without-gdbm --enable-fileinfo --with-apxs2=/usr/bin/apxs --disable-fileinfo

    编译php

    make -j4  && make install

    建立软连接

    ln -s /usr/local/php/sbin/php-fpm /usr/local/bin

    ln -s /usr/local/php/bin/php /usr/bin/php

    运行和验证

    查看php版本信息

    php -v

    回显类似如下信息说明php编译成功

    PHP 7.3.15 (cli) (built: Mar  7 2020 19:47:46) ( NTS )Copyright (c) 1997-2018 The PHP GroupZend Engine v3.3.15, Copyright (c) 1998-2018 Zend Technologies

    展开全文
  • 与经典网络书籍《TCP/IP详解》相媲美的用TCP_IP进行网际互联(全三卷PDF并包含所有源码).zip,物超所值!
  • 亿联网建站平台代理系统源码是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是一个能在线快速搭建企业网站,为企业用户提供快捷、易用、适合SEO优化的互联网建站工具。 平台开设了两种运营服务体系:一种...
  • 亿联网建站平台代理系统源码是以asp+access进行开发的asp建站平台源码,内含PC+手机版,自动设别终端切换显示。亿联网是昆山亿思互联信息科技有限公司旗下的服务产品。该平台是一个能在线快速搭建企业网站,为企业...
  • 是用于构建IOE(万物互联)边缘计算网关的开源框架。 如何使用 应用程式开发 文件资料 例子 Modbus应用程序(主/从) OpcUA应用程序(服务器/客户端) 通过ubus代理收集Fanuc Focas CNC设备数据 DLT645设备数据...
  • 摘要: 阿里发布首款全球智能互联的网络产品——骨干网,阿里安全技术平台资深专家玄泰解密:“如何防止信息泄露” ,深度学习的核心:掌握训练数据的方法,【逐云】阿里资深专家何万青:做技术的一定要多...

    摘要: 阿里云发布首款全球智能互联的网络产品——云骨干网,阿里安全技术平台资深专家玄泰解密:“如何防止信息泄露” ,深度学习的核心:掌握训练数据的方法,【逐云】阿里云资深专家何万青:做技术的一定要多跨界,一张地铁票、一杯星巴克,AI技术如何改变我们的生活?...更多精彩内容,尽在云周刊!

    本期头条

    阿里云发布首款全球智能互联的网络产品——云骨干网 

    d42b0af52bd3b159e41f17313db2cbfa1b632776

    12月13日,阿里云发布全球首款智能互联的网络产品——云骨干网(Cloud Backbone Network)。这款产品能够分钟级构建多地域全球网络,并和混合云连成一体,打造具有企业级规模和通信能力的智能云上骨干网络。和以往的网络产品相比,云骨干网的第一大特色是操作简单。阿里云网络产品负责人祝顺民介绍,云骨干网的操作和开通ECS虚拟机一样便捷。用户不需要深入了解网络基础知识,即可轻松完成配置。分钟级的构建能力大大提高了企业效率。过去,构建跨国专线,少则一个月,多的甚至半年。有了云骨干网,几分钟就可以把北京,上海,美东,日本,法兰克福的VPC连起来,构建一个云骨干网络,点击查看。


    技术干货

    深度学习的核心:掌握训练数据的方法 

    629f3de41c2c77752e9fc491342c463360b51776

    今天我们将讨论深度学习中最核心的问题之一:训练数据。深度学习已经在现实世界得到了广泛运用,例如:无人驾驶汽车,收据识别,道路缺陷自动检测,以及交互式电影推荐等等。我们大部分的时间并不是花在构建神经网络上,而是处理训练数据。深度学习需要大量的数据,然而有时候仅仅标注一张图像就需要花费一个小时的时间!所以我们一直在考虑:能否找到一个方法来提升我们的工作效率?是的,我们找到了。在本文中,我们将重点介绍计算机视觉,但是,类似的思路也可用在大量不同类型的数据上,例如文本数据、音频数据、传感器数据、医疗数据等等, 点击查看。

    社区活动

    【报名倒计时】云栖大会北京峰会 
    cd11bbca11cb555d669ea8017a7a029e5556da86
    2017云栖大会北京峰会将于12月19日至12月20日于北京国家会议中心举办,届时,胡晓明、邵晓锋、闵万里等诸多阿里巴巴专家将齐聚会议中心,精彩值得期待, 点击报名。

    独家视频

    【逐云】阿里云资深专家何万青:做技术的一定要多跨界 


    《逐云》第四期,我们拍了阿里云高性能计算负责人何万青,讲述了他惊心动魄的个人经历、研发高性能计算HPC,以及他对超算云化意义等的看法,点击查看。


    精彩直播

    【云栖TechDay直播】飞天技术汇:ECS实例解析与大数据投融资 

    aae8ae59a7d1135f2b09d0dc10c1c3651a0f8a9e

    本次直播中,阿里云产品专家胡晓博、阿里云高级产品专家王志坤以及普华资本TMT主管合伙人蒋纯将带来精彩分享。企业如何应用云计算才能最大的发挥业务搭建在云端的优势?如何选择产品来帮助业务构建高性能低成本的最优环境,本场嘉宾将以性价比这一核心主题贯穿整个讲解内容,帮助企业客户理解云计算的弹性及用法;同时将针对当前最热门的业务场景,针对性的讲解最优产品组合方案,帮助企业跨过摸索的过程,直接获得最高性能及性价比的云端体验,点击报名。


    聚能聊

    一张地铁票、一杯星巴克,AI技术如何改变我们的生活?

    8b6e54de0cb733a339ad62d6a3e8f50d4f3724d0

    2017年12月3-5日,第四届世界互联网大会在乌镇召开。12月4日的人工智能分论坛主题为“人工智能:让生活更美好Smarter World, Better Life”。而就在互联网大会召开期间,我们身边又发生了哪些事情呢?没参加饭局的马云用iDST的语音技术买了张地铁票,竟然没说唤醒词,阿里巴巴与星巴克合作 AR场景识别首次大规模商用,新登月计划:阿里云ET大脑获颁世界互联网领先科技成果奖...一张地铁票、一杯星巴克,AI技术已经融入到我们的生活中。那么 AI技术是如何改变我们的生活?点击查看。


    论坛精选

    【漏洞公告】Jenkins发布多个漏洞安全公告

    6e847fd72838dfafc84bebd95df8cdb02bff33f6

    美国时间2017年12月08日,Jenkins官方安全公告披露两个安全漏洞,CVE漏洞编号为:CVE-2017-1000391、CVE-2017-1000392,两个漏洞官方评级为低危,用户可以根据业务情况选择修复漏洞,点击查看。


    全球安全资讯精选

    【政府安全资讯精选】 全国各地开展打击整治网络侵犯公民个人信息犯罪专项行动;中共中央办公厅、国务院办公厅印发计划 IPv6规模部署提上日程 

    75470b47874813e2bd3938eb4329a5e2a2fb1101

    去年以来,公安部在全国开展打击整治网络侵犯公民个人信息犯罪专项行动,在各省破获多起案件。其中,福州公安机关近日破获一起特大侵犯公民个人信息案,查获个人信息超过千万条,抓获的 19 名犯罪嫌疑人绝大多数是房产开发、销售、中介等内部人员。他们利用职务便利,非法收集、交换、出售公民个人信息,从中牟利。从公安机关破获和法院判决的案例看,车辆、征信报告、银行账户、房产、教育、医疗等信息是最热门的信息类型,点击查看。


    读书推荐

    《网络空间欺骗:构筑欺骗防御的科学基石》一导读

    72e40b962fb6116d8c3370fe4972a6dbbcee89df

    本文讲的是网络空间欺骗:构筑欺骗防御的科学基石一导读,本书旨在为构建网络空间欺骗防御的科学基础迈出探索性的一步。在本书中,我们提出了一个最新的基础研究结果,收集了来自世界各地的顶尖研究团队关于网络空间欺骗防御的最新研究进展。本书对网络空间抵赖与欺骗防御工作、网络空间欺骗工具和技术、攻击者身份识别与检测、网络空间欺骗操作量化、无线网络欺骗策略、蜜罐部署、人为因素、匿名和溯源问题进行了严谨的分析。此外,我们不仅对网络空间欺骗的不同方面进行抽样检测,同时更突出了可用于研究此类问题的科学技术,点击查看。


    产品特惠 

    展开全文
  • 在Heroku上构建AriaNG,并在文件下载完成后上传到驱动器。在Heroku上建造AriaNG,并在文件下载完成后上传至网盘。 可以将Rclone与21vianet mod和Aria2一起使用,甚至可以灵活地在线使用UNRAR?试试这个想更灵活的...
  • IM即时通讯源码分析-哇谷IM团队

    千次阅读 2020-02-29 22:22:54
    哇谷科技即时通讯系统支持领域,医疗,教育,商城,通信,金融,娱乐,社区,直播,传统行业专业定制,企业办公,军用加密通信,企业加密通信,企业红包工资系统,企业研究所专项检测系统,AI智能化系统,等系统...

    1、XMPP
    1.1 XMPP 简介
    1、XMPP 起源
    最初 XMPP 作为一个框架开发,目标是支持企业环境内的即时消息传递和联机状态应用程序。
    XMPP 的前身是 Jabber(1998 年),是一个开源组织定义的网络即时通信协议。
    XMPP 是一个分散型通信网络,这意味着,只要网络基础设施允许,任何 XMPP 用户都可以向其他任何 XMPP 用户传递消息。
    多个 XMPP 服务器也可以通过一个专门的 “服务器-服务器” 协议相互通信,提供了创建分散型社交网络和协作框架的可能性。

    XMPP 协议曾经是 Google 力推的即时通信协议,其代表作品是 GTalk。

    2、XMPP 诞生的由来
    设计一款全世界都使用的即时通讯协议,无论使用什么即时通讯软件,都可以互联互通。

    3、XMPP 概述

    XMPP:The Extensible Messaging and Presence Protocol,可扩展通讯和表示协议,是一种基于 XML 的即时通讯协议,用于即时消息以及在线现场探测。

    它继承了在 XML(可扩展标记语言)环境中灵活的发展性,这表明 XMPP 是可扩展的。

    XMPP 规范了用于即时通信在网络上的数据传输格式,它的核心是 XML 流传输协议的定义,可用于服务类实时通讯、表示和需求,响应服务中的 XML 数据元流式传输。

    使得 XMPP 能够在一个比以往网络通信协议更规范的平台上。借助于 XML 易于解析和阅读的特性,使得 XMPP 的协议能够非常漂亮。

    XMPP 包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配置好的系统添加功能。

    促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。

    XMPP 是一个典型的 C/S 架构,基本的网络形式是客户端通过 TCP/IP 连接到服务器,通过 Socket 建立连接(目的是为了保持长连接),然后在之上传输 XML 流。

    XMPP 以 Jabber 协议为基础,而 Jabber 是即时通讯中常用的开放式协议。

    XMPP 的技术规格已被定义在 RFC 3920 及 RFC 3921,文档定义了登录,退出,获取好友,发送消息等等的 XML 数据传输协议。

    XMPP 的扩展协议 Jingle 使得其支持语音和视频,目前 iOS 尚不支持。

    2、即时通讯技术分析
    即时通讯(IM:Instant Messaging):又称实时通讯,支持用户在线实时交谈,允许两人或多人使用网络实时的传递文字消息、文件、语音与视频交流。
    即时通讯在开发中使用的场景有许多,如 AOL、Yahoo IM、MSN、QQ 以及微信等聊天软件,在电商 APP 集成买家与卖家的实时沟通等。它们最大的区别在于各自通讯协议的实现,所以即时通讯技术的核心在于它的传输协议,协议是用来说明信息在网络上如何传输。
    如果有了统一的传输协议,那么应当可以实现各个 IM 之间的直接通讯,为了创建即时通讯的统一标准,人们多次努力,试图统一各大主要 IM 供应商的标准(AOL、Yahoo 及 Microsoft),但无一成功,且每一种 IM 仍然继续使用自己所拥有的协议。目前已经出现过的 IM 协议包括:
    SIP :IETF 的对话初始协议,是建立 VOIP 连接的 IETF 标准,而 VOIP 就是网络电话。
    SIMPLE:即时通讯对话初始协议和表示扩展协议。
    APEX :应用交换协议。
    PRIM :显示和即时通讯协议。
    XMPP :基于 XML 且开放的可扩展通讯和表示协议,常称为 Jabber 协议。
    当前实现即时通讯的方案:
    XMPP :可扩展通讯和表示协议。
    EaseMob:环信,提供即时通信的一个第三平台,是在 XMPP 的基础上进行的二次开发。
    在这里插入图片描述

    在这里插入图片描述

    哇谷im_im即时通讯_私有云_公有云-哇谷云科技官网-JM沟通

    IM下载体验 - 哇谷IM-企业云办公IM即时聊天社交系统-JM 沟通下载

    IM功能与价格 - 哇谷IM-提供即时通讯IM开发-APP搭建私有化-公有云-私有化云-海外云搭建

    新闻动态 - 哇谷IM-即时通讯热门动态博客聊天JM沟通APP

    哇谷IM-JM沟通热门动态博客短视频娱乐生活

    关于哇谷-哇谷IM-提供企业即时通讯IM开发-语音通话-APP搭建私有化-公有云-私有化云-海外云搭建

    联系我们 - 哇谷IM-即时通讯IM私有化搭建提供接口与SDK及哇谷云服务

    im即时通讯社交软件APP红包技术分析(五):微信红包、聊呗红包、诚信红包、高并发技术

    新的市场叫板环信、融云、腾讯云!开源版IM即使聊天工具

    哇谷云-怎么样正确认识海外云服务器

    公有云和私有云之间有什么区别?类似融云、环信云、网易云、哇谷云?

    展开全文
  • 源码阿里轻量服务器通过MQTT互联 并通过Python订阅主题实现数据互传

    1. 硬件配置 - 可根据自身需要跳过

    如果是直接使用ESP8266芯片的话建议直接跳到后面前面的配置就不用看了.

    1.1 硬件选择 - WeMos D1 WiFI UNO R3 开发板

    硬件购买传送门
    在这里插入图片描述
    这款的好处是集成了ESP8266模块这就意味着你不需要在单独的去购买并配置ESP8266 WIFI 模块了, 这款板子基于ESP-12E,而且兼容Arduino,有了这款 物联网开发板,我们可以愉快的使用Arduino 方式开发ESP8266,玩转物联网项目.

    1.2 开发板参数

    • 处理器ESP-8266EX
    • 工作电压3.3V 输入电压6-24V
    • I/O 数量11
    • AD 输入电压0-3.3V
    • Flash 4MB SRAM 32KB DRAM 80KB
    • 时钟频率80MHz/160Mhz 网络802.11 b/g/n
    • 尺寸规格:长68.6mm x 宽53.4mm
    • 重量21g

    在这里插入图片描述

    1.3 开发板实物

    在这里插入图片描述

    2. 开发环境配置 - 从arduino的下载开始

    2.1 下载Arduino

    下载传送门 解压密码: C6FX

    在这里插入图片描述

    2.2 安装驱动

    在这里插入图片描述

    drivers/ dpinst-amd64.exe 点击安装就好
    

    2.3 配置IDE

    2.3.1 打开文件首选项去配置开发板管理器

    在这里插入图片描述
    在下面的附加开发板管理器网址中加入:

    http://arduino.esp8266.com/stable/package_esp8266com_index.json
    

    2.3.2 下载库文件 并 添加到指定位置

    库文件下载地址 密码: RBXX
    解压到或者手动添加到:

    C:\Users\你电脑的用户名\AppData\Local\Arduino15\staging\packages
    

    在这里插入图片描述

    2.3.3 工具->开发管理器 安装我们的ESP8266相关板子

    知道为什么刚刚要添加开发管理器网址了吧
    在这里插入图片描述
    在里面查找8266添加2.4.0版本
    在这里插入图片描述

    2.3.4 工具->开发板->WeMos D1 R1

    在这里插入图片描述

    2.3.5 其它配置选项如下

    在这里插入图片描述

    2.3.6 测试一下哈

    在这里插入图片描述
    如果你的板子上开始一闪一闪的就成了

    3. ESP8266连接WIFI - 硬货来了

    3.1 动态IP方式连接WIFI热点

    #include <ESP8266WiFi.h>
    #define WIFI_SSID "zxy0016zxy"                       //这里是你自己的wifi名称
    #define WIFI_PASSWD "lyf!@#815168"                   //你自己的wifi密码
    void setup() {
    Serial.begin(115200);                                //波特率设置你要在你的串口中设置同样的波特率不然就是乱码
    WiFi.mode(WIFI_STA);
    WiFi.begin(WIFI_SSID, WIFI_PASSWD);                  //这个就是TCP连接一样的通过wifi名字和密码绑定wifi
    WiFi.setAutoConnect (true);
    WiFi.setAutoReconnect (true);
    while (WiFi.status() != WL_CONNECTED)
    {
    delay(1000);
    Serial.println("connecting......");
    }
    Serial.println("Connected to AP");
    delay(3000);
    }
    void loop() {
    if (WiFi.status() == WL_CONNECTED)
    {
    Serial.println("Zibo Zhao's FYP:");
    Serial.println("---------------------------------------------------------");
    Serial.println("Connect to router success");
    Serial.println(String("local IP is ")+WiFi.localIP().toString()); 
    Serial.println(String("Subnet mask is ")+WiFi.subnetMask().toString());
    Serial.println(String("gatewayIP address is ")+WiFi.gatewayIP().toString());
    Serial.println(String("dnsIP address is ")+WiFi.dnsIP().toString());
    Serial.println(String("SSID is ") + WiFi.SSID());
    Serial.println(String("PSK is ") + WiFi.psk());
    Serial.println(String("BSSID is ") + WiFi.BSSIDstr());
    Serial.println(String("RSSI is ") + WiFi.RSSI());
    Serial.println("---------------------------------------------------------");
    delay(10000);
    }else
    {
    Serial.println("Connect to router failed");
    }
    // Wait a bit before scanning again
    delay(1000);
    }
    

    里面的打印内容基本是IP地址 子网掩码 WIFI入口号等等 就不详细解释了 来看下运行效果
    在这里插入图片描述
    在这里插入图片描述
    大家不要来蹭我wifi哈
    在这里插入图片描述

    3.2 静态IP连接WIFI热点

    #include <ESP8266WiFi.h>
    #define WIFI_SSID "你的wifi名称"
    #define WIFI_PASSWD "你的wifi热点"
    IPAddress local_static_ip(192, 168, 43, 10); //设置静态连接的IP
    IPAddress local_gateway(192, 168, 43, 1);    //设置局域网登录地址
    IPAddress local_subnet(255, 255, 255, 0);    //设置子网IP
    IPAddress local_dns_ip(192, 168, 43, 1);     //设置DNS IP
    void setup() {
    Serial.begin(115200);
    WiFi.mode(WIFI_STA);
    WiFi.begin(WIFI_SSID, WIFI_PASSWD);
    WiFi.config(local_static_ip, local_gateway, local_subnet, local_dns_ip);
    WiFi.setAutoConnect (true);
    WiFi.setAutoReconnect (true);
    while (WiFi.status() != WL_CONNECTED)        //如果没连上每隔一秒重复尝试一次
    {
    delay(1000);
    Serial.println("connecting......");         
    }
    Serial.println("Connected to AP");
    Serial.println(String("mac address is ")+WiFi.macAddress());
    delay(3000);
    }
    void loop() {
    if (WiFi.status() == WL_CONNECTED)           //如果连上了每隔1秒打印一下以下相关信息
    {
    Serial.println("Connect to router success");
    Serial.println(String("Subnet mask is ")+WiFi.subnetMask().toString());
    Serial.println(String("gatewayIP address is ")+WiFi.gatewayIP().toString());
    Serial.println(String("dnsIP address is ")+WiFi.dnsIP().toString());
    Serial.println(String("SSID is ") + WiFi.SSID());
    Serial.println(String("PSK is ") + WiFi.psk());
    Serial.println(String("BSSID is ") + WiFi.BSSIDstr());
    Serial.println(String("RSSI is ") + WiFi.RSSI());
    }else
    {
    Serial.println("Connect to router failed");
    }
    // Wait a bit before scanning again
    delay(1000);
    }
    

    4. 云服务器MQTT服务器搭建

    4.1 创建MQTT文件夹用于下载MQTT安装包

    在这里插入图片描述

    4.2 下载MQTT安装包 并解压

    wget http://emqtt.com/static/brokers/emqttd-centos7-v2.3.1.zip
    

    在这里插入图片描述
    在这里插入图片描述

    yum install unzip -y
    
    unzip emqttd-centos7-v2.3.1.zip
    

    这里报了错误 不要急很有可能是没下载完全所以导致不能解压, 解决措施很简单多下几遍就行了
    在这里插入图片描述
    在这里插入图片描述

    4.3 安装主文件并运行mqtt

    cd emqttd 进入文件
    
    ./bin/emqttd console 安装主文件
    

    在这里插入图片描述
    这样就算成功了

    4.4 Screen 创建新进程并运行MQTT

    screen -ls 查看所有进程
    
    screen -r -d name 进入name进程
    
    ctrl+a d 从进程中脱离
    
    screen -S name 创建名为name的进程
    

    在这里插入图片描述

    4.5 查看MQTT状态

    ./bin/emqttd_ctl status 注意要在MQTT的安装目录下才能运行
    

    在这里插入图片描述

    4.6 进入MQTT后台

    在这里插入图片描述
    这个18083是用来进入后台的 我们进入screen MQTT进程查看MQTT监控的端口:
    在这里插入图片描述
    访问自己的公网IP:18083进入MQTT后台 账号 admin 密码 public
    在这里插入图片描述

    5. Arduino 连接MQTT服务器

    5.1 加载库文件 PubSubClient一定要有的用于MQTT连接

    在这里插入图片描述

    5.2 Arduino 分别连接WIFI和MQTT服务器

    连接wifi 相关代码

    #define WIFI_SSID "zxy0016zxy"
    #define WIFI_PASSWD "lyf!@#815168"
    
    void wifiInit()
    {
    WiFi.mode(WIFI_STA);
    WiFi.begin(WIFI_SSID, WIFI_PASSWD);
    
    while (WiFi.status() != WL_CONNECTED)
    {
    delay(1000);
    Serial.println("WiFi not Connect");
    }
    Serial.println("Connected to Zibo's wifi");
    Serial.println("----------------------------");
    Serial.println("Connected to AP");
    Serial.println("IP address: ");
    Serial.println(WiFi.localIP());
    Serial.print("espClient [");
    Serial.println("----------------------------");
    client.setCallback(callback);
    }
    
    

    连接MQTT服务器(在云服务器上的一个进程中运行)

    #define MQTT_SERVER "公网ip"
    #define MQTT_PORT 1883  /* 默认连接1883端口 TCP通讯*/
    #define MQTT_USRNAME "public" /* 用户名*/
    /* MQTT 设置*/
    #define CLIENT_ID "Zibo Zhao" /* 你的id*/
    #define MQTT_PASSWD "public"  
    #define ALINK_BODY_FORMAT "{\"id\":\"123\",\"version\":\"1.0\",\"method\":\"thing.event.property.post\",\"params\":%s}"
    #define ALINK_TOPIC_PROP_POST "/World" /* 发送数据到哪个主题*/
    
    
    client.setServer(MQTT_SERVER, MQTT_PORT); /* 连接WiFi 之后,连接MQTT 服务器*/
    
    
    

    5.3 完整版代码

    #include <ESP8266WiFi.h>
    /* 依赖PubSubClient 2.4.0 */
    #include <PubSubClient.h>
    /* 依赖ArduinoJson 5.13.4 */
    #include <ArduinoJson.h>
    #include <DHT.h> //DHT 温湿度传感器库
    #define SENSOR_PIN 13
    DHT dht13(13, 11);
    int TEMP;
    
    
    
    /* 连接您的WIFI SSID 和密码*/
    #define WIFI_SSID "zxy0016zxy"
    #define WIFI_PASSWD "lyf!@#815168"
    /* 设备的三元组信息*/
    
    /* 线上环境域名和端口号,不需要改*/
    #define MQTT_SERVER "公网ip"
    #define MQTT_PORT 1883
    #define MQTT_USRNAME "public"
    /* MQTT 设置*/
    #define CLIENT_ID "Zibo Zhao"
    #define MQTT_PASSWD "public"
    #define ALINK_BODY_FORMAT "{\"id\":\"123\",\"version\":\"1.0\",\"method\":\"thing.event.property.post\",\"params\":%s}"
    #define ALINK_TOPIC_PROP_POST "/World"
    unsigned long lastMs = 0;
    WiFiClient espClient;
    PubSubClient client(espClient);
    
    
    void callback(char *topic, byte *payload, unsigned int length)
    {
    Serial.print("Message arrived [");
    Serial.print(topic);
    Serial.print("] ");
    payload[length] = '\0';
    Serial.println((char *)payload);
    }
    
    
    void wifiInit()
    {
    WiFi.mode(WIFI_STA);
    WiFi.begin(WIFI_SSID, WIFI_PASSWD);
    while (WiFi.status() != WL_CONNECTED)
    {
    delay(1000);
    Serial.println("WiFi not Connect");
    }
    Serial.println("Connected to Zibo's wifi");
    Serial.println("----------------------------");
    Serial.println("Connected to AP");
    Serial.println("IP address: ");
    Serial.println(WiFi.localIP());
    Serial.print("espClient [");
    Serial.println("----------------------------");
    client.setServer(MQTT_SERVER, MQTT_PORT); /* 连接WiFi 之后,连接MQTT 服务器*/
    client.setCallback(callback);
    }
    
    
    void mqttCheckConnect()
    {
    while (!client.connected())
    {
    Serial.println("Connecting to MQTT Server ...");
    if (client.connect(CLIENT_ID, MQTT_USRNAME, MQTT_PASSWD))
    {
    Serial.println("MQTT Connected!");
    }
    else
    {
    Serial.print("MQTT Connect err:");
    Serial.println(client.state());
    delay(5000);
    }
    }
    }
    
    
    
    /* 绑定设备,标识符“RoomTemp” */
    void mqttIntervalPost()
    {
    char param[500];
    char jsonBuf[1023];
    boolean d = client.publish(ALINK_TOPIC_PROP_POST, "hahhahahahha"); 
    Serial.println(d);
    }
    
    
    void setup()
    {
    pinMode(SENSOR_PIN, INPUT);
    /* initialize serial for debugging */
    Serial.begin(115200);
    Serial.println("Demo Start");
    wifiInit();
    }
    
    
    // the loop function runs over and over again forever
    void loop()
    {
    mqttCheckConnect();
    /* 上报*/
    mqttIntervalPost();
    client.loop();
    delay(5000);
    }
    

    5.4 Python 监控主题

    这里Python的作用就是把主题上更新的内容给获取回来

    #!/usr/bin/python
    # -*- coding: utf-8 -*
    
    import paho.mqtt.client as mqtt
    import json
    
    # 服务器地址
    host = '你的公网ip'
    # 通信端口 默认端口1883
    port = 1883
    
    
    username = 'admin'
    password = 'public'
    
    # 订阅主题名
    topic = '/World'
    
    
    # 连接后事件
    def on_connect(client, userdata, flags, respons_code):
        if respons_code == 0:
            # 连接成功
            print('Connection Succeed!')
        else:
            # 连接失败并显示错误代码
            print('Connect Error status {0}'.format(respons_code))
    
        # 订阅信息
        client.subscribe(topic)
    
    
    # 接收到数据后事件
    def on_message(client, userdata, msg):
        # 打印订阅消息主题
        print("topic", msg.topic)
        # 打印消息数据
        print(msg.payload.decode())
    
    
    def main_demo():
        client = mqtt.Client()
        print('i am here')
    
        # 注册事件
        client.on_connect = on_connect
        print('i am here 1')
        client.on_message = on_message
        print('i am here 2')
    
        # 设置账号密码(如果需要的话)
        client.username_pw_set(username, password=password)
        print('dawdadwad')
        # 连接到服务器
        client.connect(host, port=port, keepalive=2)
        print('dawdawdawdawdawdad')
        # 守护连接状态
        client.loop_forever()
        print('dawdaw222222')
    
    
    if __name__ == '__main__':
        main_demo()
    
    
    
    

    5.5 整体效果

    可以看到全部连到了MQTT服务器上
    在这里插入图片描述
    在这里插入图片描述
    这里是被Python监控程序订阅的主题
    在这里插入图片描述
    这是Arduino程序发到订阅主题ALINL_TOPIC_PROP_POST的消息 (主题设定为 /World)

    在这里插入图片描述
    这是Python监控程序的打印可以看到已经完全可以互相通信成功了.

    展开全文
  • 随着工业4.0的到来,工业的开始进入了下一个阶段,“万物互联”的时代,利用工业平台+智能网关+传感器的管理模式实现了设备之间的相互连接。该方案也使得旧的工业设备也可以焕发新生,只要设备还可以继续使用就...
  • 上个月的云栖大会上,阿里与阿里通信宣布联合打造阿里通信PaaS平台(C-PaaS)。 消息一出,国内通信行业充斥着一片“狼来了”的呼喊声,网易、腾讯和阿里等互联网巨头的相继入局,的确给云通信服务这一中小...
  • :cloud:支持本机,从机,七牛,阿里OSS,腾讯COS,又拍,OneDrive(包括世纪互联版)作为存储端 :outbox_tray:发布/下载支持客户端直传,支持下载限速 :floppy_disk:可对接Aria2离线下载 :books:在线压缩/...
  • 只要是使用机智协议的产品,开发者开发配套的app时都可以直接使用该框架的源码实现快速开发,从而缩短app的开发周期短、降低开发成本。 请注意: 使用机智物联网开源APP之前,需要先在机智开发平台创建您自己...
  • 帮助 失联小助手app原始码(品胜杯全国移动互联创新设计大赛)
  • NB-IOT实现万物互联设计思路分享(固定上报类) NB-IOT窄带物联网(Narrow Band Internet of Things, NB-IoT),是一种专为万物互联打造的蜂窝网络连接技术。NB-IOT作为近年大火的一项物联网技术,因为其特性受到了...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,886
精华内容 1,154
关键字:

云互联源码