L is Bエンジニアブログ

ビジネス用メッセンジャーdirectのエンジニアによるブログ

LisBエンジニアブログ

ビジネスチャットdirectのエンジニアブログ

RxSwiftを部分的に導入してみてわかった3つの効果と4つのハマりどころ

directのiOSアプリを開発している吉岡(@rikusouda)です。最近は try! Swiftというカンファレンスの開催が間近になってきたのでそわそわしています。

directのiOSアプリにRxSwiftを部分的に導入しましたが、どのような効果があってどのようなはまりどころがありどのように解決したのかを紹介します。

続きを読む

Spring による Reactive WebSocket

f:id:mike_neck:20180221140954p:plain

こんにちは、directのサーバーエンジニアをしている持田(@mike_neck)です。 会社ブログに初めて記事を書くので、非常に緊張しておりま…せん。

Spring Framework 5 がリリースされて少し経ち、僕も素振りに余年がありませんが、今回も素振りがてら Spring の Reactive websocket を使って簡単な websocket サーバーを書いてみました。 direct でも websocket を利用していますが、 Spring の WebFlux framework でどのように扱うのか非常に気になります!

続きを読む

コードベースのiPhone X対応で行った5つのこと

iOSアプリエンジニアの吉岡です。 最近はブームに乗り遅れてスプラトゥーン2を始めたり、ガルパンを見たりしました。

弊社は direct というビジネスチャットを提供しており、そのiOSアプリをiPhone X対応してリリースしました。 対応記事はすでに世の中にあふれているように思いますが、どんなことをしたのかはアプリの事情ごとに異なると思います。似たような事情の方の参考になるかもしれないと思い、私がやったことを書きます。

ちなみに、現状で弊社アプリではStoryboardやxibを使ったViewが少ないこともあり、Interface Builderを使った対応についてはこの記事では触れません。コードベースでレイアウトしているアプリでの対応実例です。

続きを読む

チャットボットでAsync/Awaitを使ってみました

こんにちは。相変わらずチャットボットのコードばかり書いている鍋山です。
チャットボットはNode.jsで書いていますが、その他には最近はGolangを少し書いたりしていて、同僚から型のある言語はいいだろうと言われました。
ちょっとだけいいなと思いました。

はじめに

さて、Node.js v7の途中から追加されたAsync/Awaitを使ってHubot(daab)を書いてみました。
(Async/AwaitはJavaScriptの標準仕様のECMAScript2017(ES2017)で追加された新仕様です)
Promise登場前のコールバックが連続するようなコードから逃れ、Promise登場によってチェインでつなぐというコードが書けるようになりました。
それでもまだスッキリとしたコードを目指すために、Async/Awaitを使います。

この記事で検証したプラットフォームはdirectです。

direct4b.com

使用したNode.jsのバージョンはv8.1.2です。
(2017.6現在は、v8.x.xの本番利用は推奨されていません)

https://nodejs.org/en/

続きを読む

fastlaneとBitriseでiOSアプリのCI始めました

iOSアプリを開発している吉岡です。少し前にdaabを使ったチャットボットのハッカソン会場にお邪魔してチャットボット開発の雰囲気を楽しんだりしているこの頃です。

はじめに

directというサービスのiOSアプリをビルドするためにfastlaneを使用しています。しかしいままではずっと開発者のマシンで実行していて、ビルドにリソースがとられて他の作業ができないなどの問題をかかえていたのでCIサービスでビルドできるようにしました。ついでにPull Requestと連携したテストを実行するようにもしました。ベストプラクティスでは無いかもしれませんが、実際の現場でCIを導入した例として参考にしていただければと思います。

続きを読む

連絡ツールの枠を越え、directを活用したチャットボットハッカソンに発展

2017年6月10日~11日、directをご利用いただいている専修大学ネットワーク情報学部にて、direct上で動作するチャットボットのハッカソンが開催されました。 今回はその様子をご紹介します。

f:id:AKNz:20170629151835j:plainf:id:AKNz:20170629151828j:plain

続きを読む

daab sdk 0.1.26 バージョンアップのおしらせ

daab をご利用いただきありがとうございます。

この度、以下の内容で daab sdk をバージョンアップいたしました。

  • 端末制限に対応。
  • メールアドレスを利用しないアカウントに対応。
  • その他、不具合修正。

更新は必須ではありません。更新しない場合は、これまで通りご利用いただけます。

続きを読む

社内LT大会を開催しました!

はじめに

こんにちは、弊社サービスの direct のサーバーサイドの開発を担当しております飯田と申します。この度、初めて L is B のエンジニアブログを書かせて頂きます。よろしくお願いします。

(実は以前、何故か僕の一日が紹介されたこともあります…)

blog.lisb.direct

さて、先月の4/4(火)に社内で LT 大会を開催しました。 今回はその時の様子をご紹介したいと思います。

続きを読む

お弁当注文ボットを作成してみました。

最近、L is Bのボットエンジニアになった宮下です。

L is Bでは毎日、お弁当を注文しているのですが、その注文作業を自動化したいという要望がありました。 そこで、今回「毎日お弁当の注文を取ってくれるボット」を作成してみました。

続きを読む