zoukankan      html  css  js  c++  java
  • Bluemix中国版体验(二)

    上一篇到现在大概有一个多月了。时隔一个月再登录中国版Bluemix,发现界面竟然更新了,现在的风格和国际版已经基本保持一致!这次我们来体验一下Mobile Service。不过mobile service目前还没有正式发布,入口隐藏的有点深...另外,由于合规原因,中国版Bluemix也使用了不受待见的WoSign数字证书,因此在继续后续步骤之前,请确保所使用的浏览器和操作系统没有拉黑WoSign的根证书(我用的是Mac OS + Firefox)。

    首先介绍正确的打开姿势:

    登录web控制台后,点击“Create App”

    点击左上角的“All Categories”

    滚动到页面的最底端

    点击“Bluemix Experimental Services”,终于找到了——其实这个服务的全名是:Mobile Messaging Connect.

    官方的介绍是这样的:

    Mobile Messaging Connect service is a cloud integration service that provides common connectors with leading social messaging tools (e.g. WeChat, etc.) and a messaging based application development framework, and accelerates mobile messaging based app development on Bluemix with toolkits and analytics.

    简单来说,这是一个处理社交即时消息的服务,例如:微信!看起来这是一个非常“接地气”的有中国特色的服务!

    接下来,我们开始创建一个新的移动消息连接服务:填写服务名称和凭证名称即可创建一个新的服务实例。

    创建完成后的服务实例是这样的:

    点击服务实例的名字进入详情页面,再点击“New Account”创建一个新的账户。这里只填写名字即可

    点击创建完成的账号,进入详情页面。这里的界面好像有bug,若账号没有显示出来,或者名称显示不对的话,刷新一下页面即可。

    在详情页面中点击“Social Account”,添加一个“connnected social channel”,是不是看到了熟悉的微信图标?

    到这里,相信大家都明白了,去注册一个微信公众平台的测试账号吧!否则后续就没法进行了。

    接下来要做的步骤,对于做过微信订阅号/服务号后台的开发的朋友来说是轻车熟路

    “App ID”和"App Secret"从微信公众平台开发中心可以找到。“Server Endpoint”和"Server Token",是要填写到微信公众平台开发中心里面去的信息。注意“Type”字段,根据实际情况选择"订阅号",“服务号”还是“开发号”,如果正在使用微信公众平台测试账号的话,就选择“开发号”。生产环境中再选择使用“订阅号”或者“服务号”。

    配置完成后,在微信测试账号中发一条消息试试看

    一个微信后台就这样轻松搞定了!是不是很简单?一行代码都没有写!不过貌似还缺点什么吧?没错,我们还需要自定义(开发)一个响应消息的endpoint(否则默认响应只能返回“SUCCESS”)。这个endpoint可以用任何语言开发,可以接收http post请求。每当有消息收到时,Bluemix的移动消息连接服务会发出一个http post请求到用户自定义的endpoint上面。

    HTTP POST请求的request body示例:

    {
                "message" : {
                    "message_key" : "fe043d36-eef1-4806-ae1d-fc0a977afea",
                    "message_source" : "wechat",
                    "sender" : "some_user",
                    "receiver" : "me",
                    "thread_id" : "thread_random_001",
                    "message_type" : "text",
                    "text" : "hi",
                    "create_time" : 1470240553520
                }
    }

    这是标准的微信公众平台API消息格式,比较容易理解。post过来的消息有了,然后就可以根据业务需要把消息提取出来,保存到数据库或者进行下一步处理了;如果要回复一个消息,直接向当前请求的response body返回以下格式的内容即可:

    {
                "message_key" : "fe043d36-eef1-4806-ae1d-fc0a977afea",
                "sender" : "some_user",
                "receiver" : "me",
                "thread_id" : "thread_random_001",
                "response_time" : 1470240553620,
                "responseMessages": [{
                    "type" : "text",
                    "value" : "hi, there!"
                }]
    }

    当然,把自定义的endpoint部署在Bluemix的CloudFoundry应用中是一个非常值得推荐的选择。但不管怎么说,这个自定义的endpoint必须是可以通过公网地址或者域名访问到的。最后,把endpoint地址添加到账户(account)配置属性中(还记得在前文在创建account的时候没有填写endpoint字段吧)。

    按理说,这个服务应该是腾讯云的标配,现在却被Bluemix抢了风头,哈~~~。顺便展望一下:如果以后将更多的社交消息(QQ,微博,LinkedIn...)甚至是短信服务都集成到Mobile Messaging Connect服务中,再配合中文认知服务,或者把微软的小冰接入进来...

    由此可见,Bluemix在落地中国的过程中,的确在本地化方面做得做够用心。期待早日体验到中文版的认知计算服务。

    BTW:由于Mobile Messaging Connect服务还没有正式release,在试用过程中会有一些UI界面相关的小bug出现,但总体来说不影响正常使用。

  • 相关阅读:
    【WPF】给下拉列表ComboBox绑定数据
    【C#】POST请求参数含中文,服务器解析得到乱码
    CentOS下搭建SVN服务器
    MySQL之ALTER
    深入PHP内核之ZVAL
    关于zend_parse_parameters函数
    PHP数组
    shell中比较字符串大小,>和<前需要加上进行转义,否则会输出到文件了
    awk编程基础
    【读书笔记】《Python_Cookbook3》第一章:数据结构和算法
  • 原文地址:https://www.cnblogs.com/hunterxue/p/6242105.html
Copyright © 2011-2022 走看看