PR TIMESデザイナー&エンジニアブログ BREAK TIMES

PR TIMES Developer Blog(デザイナー&エンジニアによる開発者ブログ)

PR TIMES Developer Blog

当ブログは下記URLに移転しました。
https://developers.prtimes.jp/

WeChatについて

f:id:breaktimes:20140618160702p:plain
WeChatは無料のメッセージと通話のアプリで


今回ご紹介させて頂くのは「WeChat」というソーシャル系の無料通信サービスです。機能としては日本ですでに爆発的に流行している「LINE」と似ていますが、「LINE」にない機能もいくつか実装されており、海外を含め現在登録者数がどんどん増えています。

中国発の「WeChat」は中国のインターネット通信大手Tencentが提供するサービスで、中国語では「微信」と呼ばれています、このサービスは多数の国で展開されており、昨秋には登録者数がすでに6億人を超えており。今「LINE」の最大ライバルも言われています。

これから何回かに渡って、WeChatの機能からAPIを利用した開発までを詳しくご紹介をしていきます。さっそくですが、自分のiphone5からWeChatアプリをインストールしました。「LINE」と使い方とはほとんど変わりませんが、一番使いやすいと思うのはボイスチャットという機能で、長い文字を入力しなくても簡単にチャットできる素晴らしい機能でした。これは次バージョンのimessageも実装されようです。他にも、ショットメッセージ、グループチャット、モーメント、Free Call、動画呼び出し、エモティコン、Broadcast Message、Friend Radar、Favorite Message、グループチャットQRコード、チャット履歴のバックアップ、Web WeChat、シェイク、People Nearby、ライブチャット等多数の機能があります。

今回公式アカウントを使って、いろいろサービスを提供することができる。その仕組みを説明します。クライアントからメッセージを送ると公式アカウントがレスポンスを返す、ということをやってみたいと思います。例として、”?”を送ったとき、サーバー側から今日の日付や時間が返ってくる。
f:id:breaktimes:20140618153628p:plain

ここからクライアントから送られる各コンテンツのXML形式を説明します。

1:テキストコンテンツ

<xml>
 <ToUserName><![CDATA[toUser]]></ToUserName>
 <FromUserName><![CDATA[fromUser]]></FromUserName> 
 <CreateTime>1348831860</CreateTime>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[this is a test]]></Content>
 <MsgId>1234567890123456</MsgId>
 </xml>

2:画像コンテンツ

<xml>
 <ToUserName><![CDATA[toUser]]></ToUserName>
 <FromUserName><![CDATA[fromUser]]></FromUserName>
 <CreateTime>1348831860</CreateTime>
 <MsgType><![CDATA[image]]></MsgType>
 <PicUrl><![CDATA[this is a url]]></PicUrl>
 <MediaId><![CDATA[media_id]]></MediaId>
 <MsgId>1234567890123456</MsgId>
 </xml>

3:ボイスコンテンツ

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1357290913</CreateTime>
<MsgType><![CDATA[voice]]></MsgType>
<MediaId><![CDATA[media_id]]></MediaId>
<Format><![CDATA[Format]]></Format>
<MsgId>1234567890123456</MsgId>
</xml>

4:映像コンテンツ

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1357290913</CreateTime>
<MsgType><![CDATA[video]]></MsgType>
<MediaId><![CDATA[media_id]]></MediaId>
<ThumbMediaId><![CDATA[thumb_media_id]]></ThumbMediaId>
<MsgId>1234567890123456</MsgId>
</xml>

5:ロケーションコンテンツ

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1351776360</CreateTime>
<MsgType><![CDATA[location]]></MsgType>
<Location_X>23.134521</Location_X>
<Location_Y>113.358803</Location_Y>
<Scale>20</Scale>
<Label><![CDATA[位置信息]]></Label>
<MsgId>1234567890123456</MsgId>
</xml> 

6:LINKコンテンツ

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1351776360</CreateTime>
<MsgType><![CDATA[link]]></MsgType>
<Title><![CDATA[公众平台官网链接]]></Title>
<Description><![CDATA[公众平台官网链接]]></Description>
<Url><![CDATA[url]]></Url>
<MsgId>1234567890123456</MsgId>
</xml>

今回はここまでとさせていただきます、次回から実際の開発方法を紹介します。