代表 斎藤 栄
IPメッセージングは
こうやって実装するのだ!
~ ITでみんなに“WAKU WAKU”を ~
TwilioJP-UG 札幌 第3回
Twilioを知ろう、触れよう、小技(Tips)を聞こう。
2016/5/13
自己紹介
2
• NTTデータ ➡ データクラフト ➡ ラジカルブリッジ
• サイボウズ公認kintoneエバンジェリスト
• kintone Café 創始者、運営事務局/札幌支部メンバー
• TwilioJP-UG 札幌コアメンバー
代表/ IT 活用アドバイザー
“クラウドおじさん” 斎藤 栄
~ ITでみんなに“WAKU WAKU”を ~
属性
3
80’s昭和歌謡を楽しむ会 主催
おやじバンド活動
おやじ活動
宇宙関係
・毎月第一火曜日(=歌謡日)
・累計44回開催 ※2016/5/13現在
次回は
6月7日(火)
やってること
4
つくってます
アプリ
サイボウズ社が提供するクラウド業務アプリ開発プラット
フォーム『kintone』を使い、お客様の業務上の課題解決
やチームワーク強化といったレイヤーにフォーカスした価
値の提供を行っています。
ソフトウェアの提供 価値の提供
札幌で
ベストチーム365
5
チームワークを強化するオリジナル業務アプリ構築サービス
ベストチーム365
初回訪問・試作無料!
《¥89,890から始めるアプリ開発》
×
ベストチーム365 サービスプラン
【わくわくプラン】
¥89,890
【にこにこプラン】
¥252,500
 初回訪問・試作無料
 訪問改修1回
 初回訪問・試作無料
 訪問改修3回
 60日間の利用サポート
初回訪問・試作無料
6
リーズナブルな理由
 見積なし 見積作業をしている間にアプリができてしまうため、料金体系をメニュー化しました。
 仕様書なし 一般的なシステム開発作業で多くの時間を要する仕様書の作成を省きました。
 分業なし 営業、SE、プログラマという分業体制ではなく、一人の担当者が全ての作業を行います。
 サイボウズ社のkintoneを基盤としているため、短期間で複数のアプリを構築できます。
※金額は全て税別です。
※別途kintoneの利用契約が必要となります。
※札幌市内及び近郊のお客様を想定しています。遠方のお客様の場合、Skypeによる
ネットミーティングにて対応させていただきます。
kintoneプラグイン《カレンダーPlus》
7
累計400DL
突破!
カレンダーplus
kintoneプラグイン《カレンダーPlus》
8
試用ライセンス 有償ライセンス
アプリ起動時や予定登録時に
警告表示
警告表示なし
サポートあり
アップデート通知
サポートなし
期間制限・機能制限無し
http://radical-bridge.com/product/calendarPlus.html
1~20名 ¥39,800
21~50名 ¥59,800
51~100名 ¥79,800
101~200名 ¥99,800
201~500名 ¥119,800
501~1000名 ¥139,800
1001名~無制限 ¥159,800
累計400DL
突破!
買切価格/全て税別
カレンダーplus
どこでもコールセンター
9
kintoneでコールセンター
・着信・発信、CTI機能、クリックトゥコール機能
・さっと立ち上げて・さっとやめられる(専用機材不要、短期導入◎)
オールクラウドだから場所を選ばない
・在宅でもコールセンターのオペレーターができる(テレワーク)
・地域間格差のない仕事を実現、転勤しても続けられる
http://www.e-cometrue.com/callcenter/
販売元:株式会社イー・カムトゥルー 開発元:ラジカルブリッジ
どこでもコールセンター
デモ
050-31xx-xxxx
10
Twilioと言えば電話&SMS
11
たった数行のコードで電話/SMSとつながる
クラウドAPIサービス
http://twilio.kddi-web.com/
Twilioと言えば電話&SMS
12
たった数行のコードで電話/SMSとつながる
クラウドAPIサービス
http://twilio.kddi-web.com/
今日はTwilioの
電話以外のサービスを
お話します!
Twilio Video(BETA) & IP Messaging(BETA)
13
PC・スマホ同士でビデオ会議
・Webブラウザ(JavaScript SDK)
・iOS SDK
・Android SDK
PC・スマホ同士でチャット
・Webブラウザ(JavaScript SDK)
・iOS SDK
・Android SDK
百聞は一見にしかず
Video & IP Messaging
デモ
14
今日はIPメッセージングについて掘り下げます
15
PC・スマホ同士でビデオ会議
・Webブラウザ(JavaScript SDK)
・iOS SDK
・Android SDK
PC・スマホ同士でチャット
・Webブラウザ(JavaScript SDK)
・iOS SDK
・Android SDK
IPメッセージングでできること
16
• チャンネルの作成、破棄、および取得
• プライベートとパブリックのチャンネルタイプ
• メンバーの追加、招待、削除、および取得
• チャンネルへの参加および参加解除
• メッセージを送信および受信する
• メッセージの編集および削除
• ユニークでアドレス可能なチャンネル名
• 複数のデバイスの内容の同期
• オフラインメッセージのサポート(オフラインメンバーが接続したときにメッ
セージを配信)
• イベントのコールバックと webhook
• タイピングインジケーター
• ロールとパーミッション
• iOS、Android、および JavaScript 用のクライアント SDK
• iOS 用の APN プッシュ通知サポート
• Android 用の GCM プッシュ通知サポート
• JavaScript 用のメッセージ配信ステータス(他のメンバーのメッセージ「読み込
みステータス」)
• JavaScript 用の消費位置管理(全デバイスで同期した自分のメッセージ「読み込
みステータス」)
公式APIリファレンス
には色々書いてます…
精査して
お伝えします
17
IPメッセージングでできること
18
• チャンネルの作成、破棄、および取得
• プライベートとパブリックのチャンネルタイプ
• メンバーの追加、招待、削除、および取得
• チャンネルへの参加および参加解除
• メッセージを送信および受信する
• メッセージの編集および削除
• ユニークでアドレス可能なチャンネル名
• 複数のデバイスの内容の同期
• オフラインメッセージのサポート(オフラインメンバーが接続したときにメッ
セージを配信)
• イベントのコールバックと webhook
• タイピングインジケーター
• ロールとパーミッション
• iOS、Android、および JavaScript 用のクライアント SDK
• iOS 用の APN プッシュ通知サポート
• Android 用の GCM プッシュ通知サポート
• JavaScript 用のメッセージ配信ステータス(他のメンバーのメッセージ「読み
込みステータス」)
• JavaScript 用の消費位置管理(全デバイスで同期した自分のメッセージ「読み込
みステータス」)
今日は太字の機能を
解説します
IPメッセージングの特長
19
 自分でリアルタイム処理サーバーを立てなくても良い
• Socket.IO等でサーバーサイド処理を書かなくても良い
• サーバーのスケールのことなど気にしなくても良い
 クライアントの実装は自分自身でやる必要がある
• メッセージング処理
• 表示周り
特定のクライアントアプリに縛られることなく、
メッセージング機能を自身のアプリに組み込める。
プラットフォーム
20
 SDK
• JavaScript SDK
• iOS SDK
• Android SDK
 API
• REST API
プラットフォーム
21
 SDK
• JavaScript SDK
• iOS SDK
• Android SDK
 API
• REST API
今日はJavaScriptの
実装例を解説します
ざっくりとしたイメージ
22
①AccessToken取得
②Channelの生成 or 参加
③メッセージのやり取り等
①AccessToken取得
②Channelの生成 or 参加
③メッセージのやり取り等
Webサーバー
・ACCOUNT SID
・AUTH TOKEN
・SERVICE SID
・Endpoint ID
を使ってAccessTokenを取得。
※これらは非公開情報のためサー
バー上に定義しておく
チャット機能の実装の大まかな流れ
23
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
チャット機能の実装の大まかな流れ
24
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
1.Twilio管理画面(認証情報の収集)
25
1.Twilio管理画面(認証情報の収集)
26
1.Twilio管理画面(認証情報の収集)
27
1.Twilio管理画面(認証情報の収集)
28
 Endpoint IDとは?
・どのチャットアプリに(appName)
・誰が(identity)
・どのデバイスから(device)
の3要素で定義されるユニークなID。
ユニークさを保証できればフォーマットは自由。
例)
$endpointId = $appName . ’:’ . $identity . ’:’ . $device
=> ‘myChatApp:Alice:Chrome’
チャット機能の実装の大まかな流れ
29
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
2.SDK, ヘルパーライブラリの設置
30
<script src="https://media.twiliocdn.com/sdk/js/common/v0.1/twilio-
common.min.js"></script>
<script src="https://media.twiliocdn.com/sdk/rtc/js/ip-
messaging/v0.10/twilio-ip-messaging.min.js"></script>
 JavaScript SDK
https://github.com/twilio/twilio-php/archive/master.zip
※ /Serviceディレクトリをサーバーに設置
 PHPヘルパーライブラリ
チャット機能の実装の大まかな流れ
31
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
3.AccessTokenの取得
32
$.getJSON('/token.php', {
identity: username,
device: 'browser'
}, function(data) {
var token = data.token;
});
 JavaScript
3.AccessTokenの取得
33
<?php
require_once('./Services/Twilio.php');
$account_sid = 'ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$auth_token = 'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy';
$service_sid = 'ISzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz';
$appName = 'TwilioChatDemo';
$identity = $_GET['identity'];
$deviceId = $_GET['device'];
$endpointId = $appName . ':' . $identity . ':' . $deviceId;
 token.php (1)
3.AccessTokenの取得
34
$client = new Services_Twilio($account_sid, $auth_token);
$key = $client->account->signing_keys
->create(array('FriendlyName' => $appName));
$signingKeySid = $key->sid;
$signingKeySecret = $key->secret;
$token = new Services_Twilio_AccessToken(
$account_sid,
$signingKeySid,
$signingKeySecret,
3600,
$identity
);
 token.php (2)
3.AccessTokenの取得
35
$ipmGrant = new Services_Twilio_Auth_IpMessagingGrant();
$ipmGrant->setServiceSid($service_sid);
$ipmGrant->setEndpointId($endpointId);
$token->addGrant($ipmGrant);
echo json_encode(array(
'identity' => $identity,
'token' => $token->toJWT()
));
 token.php (3)
チャット機能の実装の大まかな流れ
36
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
37
var accessManager = new Twilio.AccessManager(token);
var messagingClient = new Twilio.IPMessaging.Client(accessManager);
 JavaScript
チャット機能の実装の大まかな流れ
38
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
5.Channelの作成(既に存在している場合は不要)
39
messagingClient.createChannel({
uniqueName: 'general',
friendlyName: 'General Chat Channel'
}).then(function(channel) {
console.log('Created general channel:');
console.log(channel);
});
 JavaScript
チャット機能の実装の大まかな流れ
40
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
6.Channelへの参加
41
channel.join().then(function(channel) {
console.log('Joined channel ' + channel.friendlyName)
});
 JavaScript
チャット機能の実装の大まかな流れ
42
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
7.イベントハンドラーの定義 ①
43
// メッセージ受信時
channel.on('messageAdded', function(message) {
console.log(message.author, message.body);
// チャットエリアにメッセージを追記する処理を記述
});
// 招待された時
messagingClient.on('channelInvited', function(channel) {
console.log('Invited to ' + channel.friendlyName);
channel.join();
});
 JavaScript
7.イベントハンドラーの定義 ②
44
// メンバー入室時
channel.on('memberJoined', function(member) {
console.log(member.identity + 'has joined.');
});
// メンバー退室時
channel.on('memberLeft', function(member) {
console.log(member.identity + 'has left the channel.');
});
 JavaScript
7.イベントハンドラーの定義 ③
45
// タイピング開始時
channel.on('typingStarted', function(member) {
console.log(member.identity + 'is currently typing.');
// タイピング中表示の処理を記述
});
// タイピング終了時
channel.on('typingEnded', function(member) {
console.log(member.identity + 'has stopped typing.');
// タイピング中表示を停止する処理を記述
});
 JavaScript
7.イベントハンドラーの定義 ④
46
// メンバー情報変更時(メッセージ既読情報更新時など)
var members = myChannel.getMembers();
members.forEach(function(member) {
member.on('updated', function(updatedMember) {
console.log(updatedMember);
// 既読表示などの処理を記述
});
});
 JavaScript
チャット機能の実装の大まかな流れ
47
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
8.メッセージの取得
48
// メッセージの受信と出力
channel.getMessages().then(function(messages) {
var totalMessages = messages.length;
for (i=0; i<messages.length; i++) {
var message = messages[i];
console.log(message.author, message.body);
}
console.log('Total Messages:' + totalMessages);
});
 JavaScript
チャット機能の実装の大まかな流れ
49
1.Twilio管理画面(認証情報の収集)
2.SDKの設置
3.AccessTokenの取得
4.AccessTokenによるSDKの初期化
5.Channelの作成
6.Channelへの参加
7.イベントハンドラーの定義
8.メッセージの取得
9.アクションに関する処理
2.ヘルパーライブラリの設置
3.AccessTokenの取得
9.アクションに関する処理 ①
50
// メッセージの送信
var msg = $('#chat-input').val();
channel.sendMessage(msg);
----
// メンバーを招待する
channel.invite('elmo').then(function() {
console.log('Your friend has been invited!');
});
----
// 最終既読メッセージインデックスの更新
// ※クライアントから通知する必要がある(10秒間隔で通知)
// 相手側でmemberのupdatedイベントが発火
channel.updateLastConsumedMessageIndex(newestIndex);
 JavaScript
9.アクションに関する処理 ②
51
// タイピング開始の通知
// ※クライアントから通知する必要がある(5秒間隔で通知)
// ※相手側でchannelのtypingStartedイベントが発火
$('#chat-input').on('keydown', function(e) {
if (e.keyCode === 13) {
sendButton.click();
} else {
channel.typing();
}
});
 JavaScript
※タイピング終了時イベントはタイムアウトで自動発生するので
明示的に通知する必要は無い
既読通知・タイピング開始通知のインターバルについて
52
• 最終既読メッセージインデックスの更新通知間隔 = 10秒
• タイピング開始の通知間隔 = 5秒
 JavaScript SDKからはインターバル値の設定を変更でき
ない。
 変更したい場合はREST APIを利用するとできるが、間隔
を短くする際はトラフィックの増大に注意すること。
参考にすべき情報源
53
• APIリファレンス
https://jp.twilio.com/docs/api/ip-messaging
54
これで君も
IPメッセージングを
使って実装できる!
以上です!
55
告知!
56
• 6月10日(金)19:00~20:30
TwilioJP-UG 札幌 第4回
【Twilioハンズオン!初級編】
twilio 札幌 4回
https://twiliojp-ug.doorkeeper.jp/events/43495
電話アンケート
57
TwilioJP-UG 札幌 第3回の感想をお聞かせください。
050-31xx-xxxx
「本セッションの感想を1から4までの数字で
お答えください」
1.役に立った
2.まあ役に立った
3.あまり役にたたなかった
4.役に立たなかった
《終了後追加》アンケート結果をkintoneですぐに集計表示
58

More Related Content

PDF
ラクガキ忍者制作秘話
DOC
New master resume-rakesh
DOCX
Gene Furr - Linked
PPTX
Ireland’s Transboundary Monitoring Network and EMEP Strategy - Michael Geever...
PDF
Chris Hartley & Tara Dias presentation
DOCX
DW RESUME
PPTX
Caroline Atkinson & Judy Atkinson presentation
PDF
Twilio API を PHP で触ってみよう
ラクガキ忍者制作秘話
New master resume-rakesh
Gene Furr - Linked
Ireland’s Transboundary Monitoring Network and EMEP Strategy - Michael Geever...
Chris Hartley & Tara Dias presentation
DW RESUME
Caroline Atkinson & Judy Atkinson presentation
Twilio API を PHP で触ってみよう

Viewers also liked (9)

DOCX
Trabajo de-pausas-activas
PPTX
今日からでもできる!とある企業のtwilio活用方法
PDF
Minimal Techno in The Global City
PDF
僕がTwilioを使ってやりたいと思っていること 2016・夏
PDF
Brian Raymond Resume 8.25.14
PPTX
Emission measurement techniques in automobiles
PPTX
Wekerle CIHR Team - Physical and Mental Health of Sexually Abused Boys a Fiv...
PPTX
Wekerle CIHR Team - Post-Traumatic Growth 7 steps to G.R.A.C.E
PDF
Listino d max-fr_2015f1d80228-d0bf-46b2-b50d-4b28de7c9e87
Trabajo de-pausas-activas
今日からでもできる!とある企業のtwilio活用方法
Minimal Techno in The Global City
僕がTwilioを使ってやりたいと思っていること 2016・夏
Brian Raymond Resume 8.25.14
Emission measurement techniques in automobiles
Wekerle CIHR Team - Physical and Mental Health of Sexually Abused Boys a Fiv...
Wekerle CIHR Team - Post-Traumatic Growth 7 steps to G.R.A.C.E
Listino d max-fr_2015f1d80228-d0bf-46b2-b50d-4b28de7c9e87
Ad

Similar to IPメッセージングはこうやって実装するのだ! (20)

PDF
【B-1】kintoneでお手軽コールセンター!
PDF
Twilioが動いているところを見てみよう(仮)
PDF
30分で知るTwilio 2016
PDF
20130927 MA9 東京ハッカソン発表資料
PDF
Twilio x AITalk 勉強会資料
PDF
AWSアイデアソン20150509
PDF
Twilio jpug大阪(掲載用)20160227
PDF
日本語消えたスライド
PDF
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
PDF
第0回 Twilio勉強会 with JAWS UG in 福岡
PPTX
Twilio Meetup 2014/11/27
PDF
地方とTwilioJP-UGの素敵な関係
PPTX
twilio-ug福岡 twilio開発環境構築ハンズオン
PPTX
Bluemixユーザー会発表資料 - デモ付き
PPTX
IPメッセージング勉強会「WebのリアルタイムとIPメッセージング」
PDF
Twilio入門 -Web アプリ編-
PDF
TwilioJP-UG 大阪 第0回 「IoTな時代に向けて クラウドサービスで電話を使いたおそう」オープニング
PDF
Twilioビジネスセミナー Vol.5 - コールセンター
PDF
Twilio TBS - 20140301
PDF
Twilioハンズオン資料 鹿児島
【B-1】kintoneでお手軽コールセンター!
Twilioが動いているところを見てみよう(仮)
30分で知るTwilio 2016
20130927 MA9 東京ハッカソン発表資料
Twilio x AITalk 勉強会資料
AWSアイデアソン20150509
Twilio jpug大阪(掲載用)20160227
日本語消えたスライド
Twilio を使えば簡単にできる アプリケーションと電話/SMS連携
第0回 Twilio勉強会 with JAWS UG in 福岡
Twilio Meetup 2014/11/27
地方とTwilioJP-UGの素敵な関係
twilio-ug福岡 twilio開発環境構築ハンズオン
Bluemixユーザー会発表資料 - デモ付き
IPメッセージング勉強会「WebのリアルタイムとIPメッセージング」
Twilio入門 -Web アプリ編-
TwilioJP-UG 大阪 第0回 「IoTな時代に向けて クラウドサービスで電話を使いたおそう」オープニング
Twilioビジネスセミナー Vol.5 - コールセンター
Twilio TBS - 20140301
Twilioハンズオン資料 鹿児島
Ad

More from Sakae Saito (20)

PDF
プロジェクト管理ってなんだろう? ~kintoneを利用したプロジェクト進行イメージ~
PDF
kintoneで仕事も人生もグロースさせよう! ~kintone“発見”からの7年を振り返る~
PDF
『アップデートの波に乗り遅れるな!』 ~ここ最近のkintoneアップデートを振り返る~
PDF
kintoneではじめるビジネスインテリジェンス
PDF
Calendar Plus JavaScript APIをいじってみた
PDF
Alibabaのサーバーレスサービスと kintoneを連携してみた ~AWSのサーバーレスサービスとの違い~
PDF
非常時だからこそ活用したいkintone
PDF
kintoneとkintone Caféと私
PDF
創始者 kintone Caféを語る
PDF
Twilio Syncを使って積年の課題を解決!
PDF
Square利用者から見たStripe雑感
PDF
kintoneとMicrosoft Flowで学ぶイマドキのシステム間連携
PPTX
2017 エバ活動ふりかえり
PPTX
Kintone community based on empathy
PPTX
『繋がる』が生む 新しい生き方・働き方 ~クラウド活用実践事例~
PPTX
テトコちゃんがグスクくんに出会ってハッピーになったお話
PPTX
kintone伝道師より愛をこめて
PPTX
kintone Café JAPAN 2016 基調講演
PPTX
勉強会コミュニティ kintone Caféのご紹介
PDF
全俺が泣いた!kintone発見からの3年弱を振り返る
プロジェクト管理ってなんだろう? ~kintoneを利用したプロジェクト進行イメージ~
kintoneで仕事も人生もグロースさせよう! ~kintone“発見”からの7年を振り返る~
『アップデートの波に乗り遅れるな!』 ~ここ最近のkintoneアップデートを振り返る~
kintoneではじめるビジネスインテリジェンス
Calendar Plus JavaScript APIをいじってみた
Alibabaのサーバーレスサービスと kintoneを連携してみた ~AWSのサーバーレスサービスとの違い~
非常時だからこそ活用したいkintone
kintoneとkintone Caféと私
創始者 kintone Caféを語る
Twilio Syncを使って積年の課題を解決!
Square利用者から見たStripe雑感
kintoneとMicrosoft Flowで学ぶイマドキのシステム間連携
2017 エバ活動ふりかえり
Kintone community based on empathy
『繋がる』が生む 新しい生き方・働き方 ~クラウド活用実践事例~
テトコちゃんがグスクくんに出会ってハッピーになったお話
kintone伝道師より愛をこめて
kintone Café JAPAN 2016 基調講演
勉強会コミュニティ kintone Caféのご紹介
全俺が泣いた!kintone発見からの3年弱を振り返る

IPメッセージングはこうやって実装するのだ!