Slide 1

Slide 1 text

Notes と IBM Connections Cloud を 連携してみた 2016年12月16日 中野晴幸 @harunakano ノーツってヤッぁ..二児の父の苦悩つ

Slide 2

Slide 2 text

コミュニティー管理者は悩んでいた どうすれば皆がコミュニティーへ投稿する? インセンティブを与えれば? 投稿状況を調べたら相当な手間がかかってしまった…

Slide 3

Slide 3 text

投稿の状況を調べる方法は? ➢コミュニティーへの投稿をもれなく見る ➢ジャーナル(ログ) ➢IBM Connections API

Slide 4

Slide 4 text

ジャーナル(ログ) 膨大。コミュニティー管理者が投稿の状況を調べる手間は変わらない 欲しい部分を我々(Connections Cloud 管理者)がジャーナルから抽出する手間は避けたい 今日の投稿が明日の午後まで調べられない

Slide 5

Slide 5 text

投稿の状況を調べる方法は? ➢コミュニティーへの投稿をもれなく見る ➢ジャーナル(ログ) ➢IBM Connections API

Slide 6

Slide 6 text

IBM Connection API ✓欲しい情報(リソース)を示す「URI」にパラメータをくっつけると、URLのできあがり ✓URLを投げるとテキストが返ってくる ✓ブラウザの拡張機能(RESTクライアント)を使って試せる

Slide 7

Slide 7 text

投稿の状況を調べる方法は? ➢コミュニティーへの投稿をもれなく見る ➢ジャーナル(ログ) ➢IBM Connections API

Slide 8

Slide 8 text

URLはこんな感じ https://apps.ap.collabserv.com/communities/service/atom/community/forum/topics?communityUuid=[コミュニティーのID] コミュニティーからフォーラム・トピックのリストを取るURI パラメータに コミュニティーのID 参考: Connections Cloud API documentation アジア・パシフィック の Connections Cloud

Slide 9

Slide 9 text

URLを投げる url = “https://apps.ap.collabserv.com/uri?param=...” Set xhr = CreateObject("Microsoft.XMLHTTP") Call xhr.Open("GET", url, False) Call xhr.Send() response = xhr.responseText ※LotusScriptです

Slide 10

Slide 10 text

返ってくるテキスト(XML) トピックのタイトル 2016-12-15T02:24:30.601Z HOGEHOGE TARO 000000000 ※内容の一部です

Slide 11

Slide 11 text

テキスト(XML)の内容 トピックのタイトル 2016-12-15T02:24:30.601Z HOGEHOGE TARO 000000000 ※内容の一部です トピックに「いいね!」は2件 トピックのタイトル このスレッド全体に「いいね!」は4件 投稿日時 投稿者ID 返信は4件

Slide 12

Slide 12 text

XMLを “XmlNodeReader” で解析 参考: nsftools ※LotusScriptです

Slide 13

Slide 13 text

“XmlNodeReader” 使用例 参考: nsftools Dim reader As New XmlNodeReader Call reader.ReadText( response ) arr = reader.getNodeReaders("feed.entry") Forall nr In arr v = nr.get("title") End Forall タイトルA タイトルB タイトルC XML LotusScript 例)投稿のタイトルを取り出す

Slide 14

Slide 14 text

連携の概要 Notesアプリ Connections Cloud コミュニティー 投稿状況収集 マイル変換 次の投稿に対応 ➢ ファイル ➢ フォーラム ➢ ブログ

Slide 15

Slide 15 text

マイルについて コミュニティーへの投稿をマイルに換算 アクション マイル 投稿する 100 返信する 10 「いいね」する 1 「いいね」される 2 1回の投稿(アクション)あたりのマイル(フォーラム):

Slide 16

Slide 16 text

Notes アプリ

Slide 17

Slide 17 text

表示内容 ユーザー(Notes アカウント)の Common Name マイル数 マイル数上位 10名のリスト 投稿サマリーへのリンク ランク Connections Cloud へのリンク

Slide 18

Slide 18 text

まだ改良の余地が… ➢毎回すべての投稿を取ってくる ➢ 前回からの「更新分だけ」取ってくる、そんなパラメータが欲しい ➢いいね!した日時が取れない ➢ 月間ランキングを作れない ➢ 「いいね!」した日付は毎日処理すれば良いが、時刻がわからない ➢ SRへ改善を要望した ➢処理を自動化しづらい ➢ アカウント・パスワードの期限切れへの対応 ➢処理時間が長い ➢ 1リクエストあたりのレスポンスに含まれる投稿の数を増やし、リクエスト数を減らしたい ➢ 9桁の投稿者IDから Notes アカウントへの変換が必要 などなど…