kintoneGeeks blog

kintoneに関連する情報を発信しています

【イベント報告】kintoneのVket初出展でVRChat連携を紹介!

はじめに

サイボウズは Virtual Market 2022 Winter でkintoneのVRブースを出展しました。kintone API とVRChat*1の連携を案内したり、kintone同人誌の立ち読みコーナーを設置したり、エンジニア向けの集会イベントを開催しました。

この記事は、ブースでの取り組みや来場者の反応について報告します。

Virtual Market 2022 Winterのサイボウズのkintoneブース

Virtual Market とは

Virtual Market (通称Vket)とは、VR法人 HIKKY がVRChat上で主催するバーチャル即売会です。VRChat上で使用出来るアバターやアイテムのVRマーケットプレイスであり、世界最大のVRイベントです。ここ数年は毎年2回開催され、Vket 2022 Winter は2022年12月3日から12月18日までの16日間に開催されました。

kintoneブースの紹介

我々サイボウズのDeveloper Pioneerチーム*2は、企業向けVRChatワールド【パラリアル札幌】にて、kintoneブースを出しました。

エンジニアの部屋を巨大なスケールで再現し、来場者には筋斗雲のギミックを次々と乗り移ってもらいながら、コンテンツを展示しているデスクの上まで登って頂きました。

筋斗雲から筋斗雲に乗り移ってデスク上まで登るVRブース

デスクの上にはkintone同人誌の立ち読みコーナーがあり、来場者は手に取って内容をその場で読むことが出来ました。また、デスク上のパソコンのモニターでは可愛いキャラ*3によるkintone の紹介ビデオが流れており、kintone初心者にもわかりやすく1分で製品の説明をしてくれました。

デスクの上には同人誌コーナーやkintoneの紹介ビデオが流れている

kintone x VRChat の技術同人誌

技術同人誌コーナーでは、kintoneと技術を組み合わせたエンジニア向けの本を紹介しました。その中でも注目の技術本は「[VRChat本]OSCでWebDBを喰らうど!」。こちらはkintoneとVRChatの連携について案内している本です。

kintoneの技術同人誌がその場でピックアップして読めました

VRChatは2022年から、OSC*4経由で外部からVRChatへのデータの送受信が出来る機能を追加しました。本書籍の前半ではそのデータ送受信の方法について分かりやすく案内し、後半ではkintoneデータベースとの連携方法について案内をしています。

例えば、下記のようなpythonコードを準備し、VRChatをプレイ中にコンソールで実行したとします。

import argparse
import time
from pythonosc import udp_client
import requests

def Get_Unfinished_Todos():
 URL = "https://{ サブドメイン }.cybozu.com/k/v1/records.json"
 APP_ID = "{ アプリ ID}"
 API_TOKEN = "{API トークン }"
 QUERY = "todo_status in (\" 未対応 \")"
 HEADERS = {"X-Cybozu-API-Token":API_TOKEN}

 REQUEST_URL = URL + "?app=" + APP_ID + "&query=" + QUERY
 REQUEST_URL = REQUEST_URL + "&totalCount=true"
 print(" リクエスト先の URL:" + REQUEST_URL)

 resp = requests.get(REQUEST_URL, headers=HEADERS)
 resp = resp.json()
 return resp

if __name__ == "__main__":
 parser = argparse.ArgumentParser()
 parser.add_argument("--ip", default="127.0.0.1",
 help="The ip of the OSC server")
 parser.add_argument("--port", type=int, default=9000,
 help="The port the OSC server is listening on")
 args = parser.parse_args()

 client = udp_client.SimpleUDPClient(args.ip, args.port)

while True:
 tasks_not_started = Get_Unfinished_Todos()
 text_to_dsplay = " 未対応 " + tasks_not_started["totalCount"] + " 件 "
 print(text_to_display)
 client.send_message("/chatbox/input", [text_to_display, True])
 time.sleep(5)

すると、指定したアプリの中のレコードを集計し、集計結果をアバターのチャットボックスに表示することが出来ます。

VRChat上にkintoneアプリの集計結果を表示するサンプル

このような集計結果の活用方法や、アバターの行動のログの取り方などの連携について本書籍で解説しています。

なお、本書籍はこちらのリンクから購入することが出来ます。200円の本に84ページ詰まっています!

kintone-labo.booth.pm

Vket 2022 Winterに出展してみて

数多くのVRChatのユーザにサイボウズのkintoneブースに来て頂いて、大変感謝しています。サイボウズ社員もVRブースでの接客対応をしたことで、数々のユーザと直接お話することが出来ましたし、YouTube Liveの配信でブースで楽しんで頂けた様子も多く見かけることが出来ました。

Twitter上の反応でも、ブースのアクション要素やOSCに興味を持ってくださったり

ブーススタッフのVR接客について取り上げて頂いたり

色々と面白い反応を投稿して頂けたので、1つ1つの投稿を見るのがDeveloper Pioneerチームでとても楽しめました*5

これからも我々は積極的にVRイベントにkintoneをプッシュしていきたいと思います。

最後に

私たちは、様々な技術とkintoneと組み合わせることで 「こんな可能性が生まれる!」「面白いことが創れる!」と思って頂けるような、 心を動かすコンテンツを届ける活動をしています。 一緒に働く仲間も募集しています。興味のある方はぜひご連絡ください!

cybozu.co.jp

企画やコラボをご希望の方は、お問い合わせフォームからご連絡をください。

*1:VR空間内で多人数でコミュニケーションが出来るVRSNS

*2:エンジニアへのkintoneの認知活動をしている部隊

*3:オレンジ髪の子が出雲沙斗美(いずもさとみ)ちゃん、青い髪の子が才木望帆(さいきみほ)さんです。今後の活動にも出てくるので、ぜひ覚えておいてください!

*4:Open Sound Controlの略。VRChat界隈では「おすし」と呼ばれている

*5:@IHP2_77 様、@HayaTikaze 様 からツイートの掲載許可を頂いています