转载

构建一个 Fitbit 歩程竞赛应用程序

可穿戴健身设备现在风靡一时,成为朋友间的一种社交媒体协作工具。我们已经通过使用 IBM Bluemix ™ 为 Fitbit 佩戴者构建一个社交应用程序。您可以使用该应用程序在热衷于健康竞赛的朋友之间举办一场每日歩程竞赛。可以对所有参赛者使用一个实时排行榜和图形分析,还可以通过 Twitter 和 Twilio SMS 消息传递来实现排行榜变化的自动更新。当您对自己的竞赛复制和重用此应用程序时,使用 Fitbit API 进行导航和身份验证是一项简单的任务。举办歩程竞赛很容易实现并且充满乐趣。

阅读: 针对您的健康的 (Blue)mixing IoT 和 GPS 服务

阅读: ClearDB Platform 简介

阅读: Cloud Foundry 命令行接口

您的使用 Fitbit 的朋友现在可以享受一个用于追踪健康歩程竞赛的专门的网站。您只需花几分钟就可以举办歩程竞赛,如果使用传统方法,这需要花费几天的时间。

构建您的应用程序需要做的准备工作

  • 一个 Bluemix 帐户和一个 DevOps Services 帐户,两个帐户都被链接到您的 IBM ID。
  • 一个 Twilio 帐户 SID 和身份验证令牌。(请按照步骤 4中的说明进行操作。)
  • 建立 Fitbit 和 Twitter 帐户是为了实现读/写 API 访问。(请按照步骤 5和步骤 6中的说明进行操作。)
  • Cloud Foundry 命令行接口 。
  • 基本熟悉 PHP、JSON 和 MySQL(如果您需要扩展/调试应用程序)。

运行应用程序

获取代码

步骤 1. 复制公共项目并让它成为您自己的项目

  1. 单击这一步右上方的 获取代码 按钮。
  2. 在 DevOps Services 上的 mborowsk | FitbitContestApp 项目的概述页面中,单击 EDIT CODE 按钮(如果尚未登录,请输入您的 DevOps Services 凭证)。单击 FORK 按钮,为您的项目提供一个有用的名称,并采用所有默认值在您的帐户下创建一个 DevOps Service 项目。
  3. 在代码树的顶级打开 manifest.yml 文件: 构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

  4. namehost 字段更改为新应用程序的名称(让它们目前保持一致)。保存该文件。

步骤 2. 测试-部署您的应用程序

  1. 在适用于您的 DevOps Services 项目的代码编辑器中,单击位于页面顶部的 DEPLOY 按钮。
  2. 采用 Configure Application Deployment 对话框中的默认设置并单击 DEPLOY
  3. 登录到 Bluemix 。在仪表板中,确认您有一个正在运行的应用程序,它具有指定的名称和一个 https:// 名称 .mybluemix.net/ 形式的 URL,其中的 名称 是您的应用程序的名称: 构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

如果看到了这个正在运行的应用程序,那么您已经成功部署了您的应用程序和一个 PHP 运行时 buildpack。

步骤 3. 向您的应用程序添加一个 SQL 数据库服务

  1. 在 Bluemix 目录中,找到 Services 部分中的 Data Management 类别,并选择 ClearDB MySQL Database 服务: 构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

  2. 您将对应用程序使用 ClearDB 的免费 SparkDB 版本。

    在右边的对话框中,从 App: 列表中选择您的应用程序,并保留其余部分的默认设置。单击 CREATE构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

  3. 在提示重启应用程序时单击 Ok

回到 Bluemix 仪表板,现在您可以看到应用程序旁边的 ClearDB Service 图标。如果单击 Show Credentials ,就可以看到使用 DB 查看器(比如 Sequel Pro)连接到数据库所需的一切:

构建一个 Fitbit 歩程竞赛应用程序

点击查看大图

关闭 [x]

构建一个 Fitbit 歩程竞赛应用程序

步骤 4. 通过 SMS 为排行榜更新添加 Twilio SMS 服务

  1. 通过仪表板选择 Twilio 服务(在目录中的 Mobile 下): 构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

  2. 注册 获得一个 Twilio 帐户,以便获得帐户 SID 和帐号令牌,将它们添加到 Add Service 对话框,并单击 CREATE
  3. 如果使用一个试用的 Twilio 帐号,将一条 SMS 消息发送给 Twilio 试验号码的每个电话号码,都必须在 Twilio 帐号设置中注册为一个经过验证的主叫号码。

    在 Twilio 帐号中,注册 https:// yourappurl /php/smsldb.php 作为 Twilio 的回调 URL,在有人测试您的 Twilio 电话号码时进行调用。该代码将用户添加到一个数据库表中,或者从数据库表中删除用户,以便根据他们的选择来选择性地接收更新。

步骤 5. 设置 Fitbit 用户和注册应用程序

  1. 使用 Fitbit 注册为一个新用户,采用一个每个人都希望与之交朋友的朗朗上口的名称。想要参加竞赛的人必须有自己的 Fitbit 帐户(和设备),并与该用户成为朋友。
  2. 在 Fitbit 开发人员站点 上将您的应用程序注册为一个 Web 应用程序,并获得读/写访问权限。当 Fitbit 要求提供一个 Web 应用程序名称和回调时,输入您的 Bluemix 应用程序的 URL 作为 Web 应用程序的名称;输入 yourappurl/php/fbit.php 作为回调。(如果必要的话,您可以在以后更改这些设置。)
  3. 复制或写下您自己的客户端(消费者)密钥和您的客户端(消费者)密钥,您需要使用它们来实现 OAuth 流程。

步骤 6. 设置您的 Twitter 帐户

  1. 使用您的 Fitbit 邮件帐户创建一个 Twitter 帐户。
  2. 使用您的新帐户登录到 Twitter Application Management 。单击 Create New App
  3. 输入应用程序名称和猫叔。对于网站和回调 URL,可以使用您的 Bluemix 应用程序 URL。接受条件并单击 Create your Twitter application
  4. 在 Application Settings 中,在 Access 级别的下面,单击 modify app permissions ,然后选择 Read and Write 。(如果尚未用自己的帐户注册一个手机,那么系统会询问您是否这样做。)
  5. 浏览到 Keys and Access Tokens ,然后生成您的访问令牌。

现在,您有了自己的 Twitter ID、消费者密钥、消费者令牌和访问令牌密钥。

步骤 7. 为 Fitbit 和 Twitter 添加用户定义的服务

  1. 从操作系统命令行运行这些命令,以便连接到 Cloud Foundry 的 Bluemix 实例:
    cf api https://api.ng.bluemix.net cf login
  2. 运行以下 4 个命令将 Fitbit 和 Twitter 用户定义的服务添加和绑定到您的 Bluemix 应用程序,使用您的凭证替换占位符(比如 <your_consumer_key_here> ),并使用应用程序的名称替换 FitbitApp
    $ cf cups Fitbit -p '{"FITBIT_CONSUMER_KEY":"<your_consumer_key_here>", "FITBIT_CONSUMER_SECRET":"<your_consumer_secret_here>"}' Creating user provided service Fitbit in org  mborowsk@us.ibm.com / space dev as mborowsk@us.ibm.com... OK  $ cf bs FitbitApp Fitbit Binding service Fitbit to app FitbitApp in org  mborowsk@us.ibm.com / space dev as mborowsk@us.ibm.com... OK TIP: Use 'cf push' to ensure your env variable changes take effect  $ cf cups Twitter -p '{"token":"<your_token_key_here>","tokensecret": "<your_tokensecret_key_here>", "key":"<your_key_here>","secret":"<your_secret_here>"}' Creating user provided service Twitter in org  mborowsk@us.ibm.com / space dev as mborowsk@us.ibm.com.. OK  $ cf bs FitbitApp Twitter Binding service Twitter to app FitbitApp in  org mborowsk@us.ibm.com / space dev as mborowsk@us.ibm.com... OK TIP: Use 'cf push' to ensure your env variable changes take effect
    (您的输出将会参考您的 ID,而不是 mborowsk@us.ibm.com 。)
  3. 在创建并绑定这些用户定义的服务之后,您的仪表板看起来与此类似: 构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

步骤 8. 初始化您的数据库

  1. 现在,您已经将数据库添加到您的应用程序中,该应用程序知道用来访问数据库的凭证。浏览到 http:// yourappname /php/sqlinit.php 来初始化数据库。您会看到显示成功创建表格的输出: 构建一个 Fitbit 歩程竞赛应用程序
  2. 如果使用一个查看器连接到数据库(可选),那么将会看到数据库表:
构建一个 Fitbit 歩程竞赛应用程序

点击查看大图

关闭 [x]

构建一个 Fitbit 歩程竞赛应用程序

步骤 9. 使用 Fitbit 对您的应用程序进行验证

  1. 浏览到 http:// yourappurl /php/fbit.php。这将启动 OAuth 流程,然后会提示您登录 Fitbit: 构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

  2. 输入您的步骤 5 中设置的 Fitbit 用户帐户的凭证。

此时会出现一则消息,声明已经成功交互 OAuth 令牌。一个成功的结果意味着您的应用程序现在可以访问 Fitbit API,而且这些访问凭证现在存储在数据库中。

步骤 10. 查看您的排行榜(并让游戏开始)

  1. 在您的浏览器中,打开主要应用程序页面,并单击 Leaderboard 选项卡。如果一切正常,那么您可以看到竞赛人员名单。当然,您会看到,只有那些是您朋友的人才会获得主要 Fitbit 帐号: 构建一个 Fitbit 歩程竞赛应用程序

    点击查看大图

    关闭 [x]

    构建一个 Fitbit 歩程竞赛应用程序

  2. 通过浏览到 https:// yourappurl /php/tweetsend.php 来测试 Twitter 功能。
  3. 通过浏览到 https:// yourappurl /php/smssend.php?pn= 10-digit_number 来测试 Twilio 功能。

只需使用几个简单的步骤,您就可以使用数据库、Fitbit API 访问以及 SMS 和 Twitter 功能快速创建一个运行在云中的 PHP 应用程序。您在几分钟内就能完成使用传统方法需要几天才能完成的操作。您的使用 Fitbit 的朋友现在可以享受一个用来追踪健康歩程竞赛的专门的网站。来自不同厂家的可穿戴健身设备变得越来越流行,您可以轻松地扩展这个应用程序,让穿戴任何设备的竞赛者都能参与比赛。您已经准备好通过利用 Bluemix 迅速发展的生产力来 “步” 入未来。

正文到此结束
Loading...