【このファン】トロール襲来!~雪山パニック~

いきなりですが、

ボスバトル超級2に勝利しました。

このイベント、オイラの勝ちです。

イベント「リーン」をゲットしましたが、メインの主力は★3のメンバー。

それらをMAXまで鍛え上げました。

★4を一人鍛え上げるよりも、★3をたくさん鍛え上げた方がスタートダッシュが早いことが証明されました。

さらなる強化には★4も揃える必要がありましたが、イベント周回も効率よく行えるようになったので、イベント報酬もたくさんもらえるようになり、さらに強化することができるんです。

やっぱりスタートダッシュは大事。

これが分かればリセマラなんてやる必要は無いです。

【Laravel】【ホテル予約管理】解錠APIを追加する

前回までの状況はこちら。

最新ソースはこちら(gitHub)

https://github.com/takishita2nd/hotel-mng

さて、前回からだいぶ期間が空いてしまいましたが、

続きやります。(思い出すのに時間かかった)

今回は、前回メールに添付したQRコードに書かれた解錠コードを使って解錠する処理を実装するのですが、

実際に解錠を行うのは、外部のデバイスを使用する、という前提として考え、ここではデバイスに入力した解錠コードをサーバに送信し、照合結果を返すAPIを実装します。

このAPIのレスポンスをデバイスが受信して、デバイスが実際に解錠を行います。そういう想定で実装します。

まず、APIのルーティングを作成します。

routes配下のapi.phpに以下を追加します。

Route::group(['middleware' => ['api']], function(){
    Route::post('/unlock', 'Api2Controller@unlock');
});

なぜ、今までのようにweb.phpではないかというと、web.phpには

Auth::routes();

がかかれてあり、ログイン状態でアクセスしなければAPIは受け付けられません。

デバイス側にログイン状態というのは意識できないので、この制約が入らないルートに設定しなければなりません。

では、コントローラーを作成します。

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use App\Repository\RegisterManagementRepository;
use App\Repository\RoomRepository;
use App\Repository\UserRepository;

class Api2Controller extends Controller
{
    public function __construct()
    {
        $this->registerManagement = new RegisterManagementRepository();
        $this->room = new RoomRepository();
        $this->user = new UserRepository();
    }

    public function unlock(Request $request)
    {
        \Log::debug(print_r($request->input('number'), true));
        \Log::debug(print_r($request->input('room'), true));

        $registers = $this->registerManagement->getItemsByDate(date('Y-m-d'));
        if(is_null($registers) == false)
        {
            foreach ($registers as $register)
            {
                $room = $register->rooms()->first();
                if(is_null($room) == false)
                {
                    if($room->id == $request->input('room') &&
                        strcmp($register->lock_number, $request->input('number')) == 0)
                    {
                        return response()->json(['result' => true]);
                    }
                }
            }
        }
        return response()->json(['result' => false]);
    }
}

Api2Controller.phpを追加しました。

ApiController.phpでは、コンストラクタに

        $this->middleware('auth');

と記述しているため、これも上記と同じ理由で使用できません。

入力は部屋番号と解錠コードをjsonで入力します。

現在の日付から予約情報を取得し、部屋番号を解錠コードの比較を行い、一致したときにtrue、一致しない場合はfalseを返します。

思ったように動いているようです。

ただし、このままだと誰でもアクセスできてしまうので、セキュリティ的にガバガバ状態です。

デバイス情報を登録して、それも入力情報に含めるようにしましょうか。

次回やります。

北海道でも5Gサービスが始まるらしい。

元ネタはこちら

https://k-tai.watch.impress.co.jp/docs/news/1241563.html

ドコモの公式発表によると、全国の特定スポットにて5Gサービスが提供されます。

https://www.nttdocomo.co.jp/area/5g/?icid=CRP_menu_to_CRP_AREA_5g

その中には北海道も含まれています。

しかし、本当にとあるポイント周辺に限られているので、いつでも5Gが使えるわけではありません。

では、北海道ではどこで5Gが使えるのか。

PDFファイルにも書いてあるのですが、

  • 札幌ドーム( 観客席、ドーム前広場周辺 )
  • JR札幌駅( 南口広場周辺、北口(東)周辺 )
  • 札幌駅前通地下広場 ( 北大通交差点広場(西)周辺 )
  • 大通公園西12丁目広場
  • 大通公園西9丁目広場
  • 一部のドコモショップ店内

本当に特定ポイントやね。

5Gを利用するためには、対応端末が必要です。(知ってると思うけど)

全国で使用できるには、少なくとも1年は待つ必要はあります。

なので、今焦って買う必要は無いと思います。

5G試せる人は一部のガジェットマニアぐらいか・・・

ようやく!光回線が開通しました!

ごついモデムが来ました。

引っ越しが完了してから1ヶ月経ちましたが、ようやく光回線が開通しました。

かなり大がかりな宅内工事もやってもらい、電話線の穴から光ケーブルを通してもらい、ネット接続まで設定して貰いました。

このモデムは無線ルータとしての機能も搭載されていて、自前の無線ルータを使わなくてもwifi接続でき、裏面にはLANポートも4つ付いています。

LANは早速メインPCに接続しました。

ちょっとケーブルの長さが長すぎるので、短いLANケーブルを発注しています。

さて、速度はどれくらい出るのか?

ビジモネットの実力を見せて貰おう。

比較のために、同じサイトで測定した、引越し前での測定結果のリンクも貼り付けます。

やはり、IPv6ではないので、若干速度が遅いです。

うーん、プロバイダを@niftyに戻すか???

でも、モバイルwifiの、ネットの速度遅い問題が解決されました。

ご苦労さん。

ちなみに、このモデム、

前面にUSBポートが付いているのですが、使い方がわかりません。

ネットワークドライブとして使えるのか?と思ったのですが、マニュアルを見た限りそのような説明は一切ありませんでした。

さらに、ルータの設定を変えようと思っても、設定を変更する画面に入るための管理者パスワードを一切知らされていないので、設定を弄ることもできません。

いろいろモリモリなモデムですが、便利なのか、不便なのか・・・

まぁ、いいか。

そして、早速ひかりTVを発注しました。

早く器材来い~

【モラタメ】ネスカフェ 香味焙煎

オイラはどちらかというと、インスタントよりもドリップするタイプの方が好きなんですが。

というのも、コーヒーメーカーを買って、専門店でミルされたコーヒーを使って飲んでみたら、まぁ、美味いこと。

しかし、会社で飲む用にインスタントコーヒーを買って飲んでも、あまり美味しくなかった。

ただ、このとき使用したコーヒーはコンビニの安物だったので、

ネスカフェさんの本気を見せて貰おうと。

ダメ元で買ってみました。

量的には、コーヒー一杯当たり、小さなスプーンで一杯ぐらい。

悪くないね。

これなら普通に飲める。

味の細かな違いは全くわかりませんが美味しく飲めます。

でもやっぱり高いな・・・

リピ買いするかは、全て飲みきってから考えます。

ビジモネットを使って気がついたこと。

光回線が開通して2日が経過したのですが、一つだけ気がついたことがありまして、

やっぱり光回線は早いですよ。

YouTubeも高画質で見ることできますし。

ポケットWi-Fiは地域判定が東京になってますし。

しかし、

radikoの地域判定が東京のままになってる。

これはプロバイダーの問題なのか?

フレッツ光側の問題なのか?

そもそも、固定回線はどうやって場所の特定を行っているのだろう???

Googleマップはちゃんと今の住所がデフォで表示されるけど。

とりあえず、radiko側に地域判定の修正依頼を出してみました。

そういえば、Alexaさんもradikoの地域判定がきちんとされていたかったな。

エリアフリーに登録しているから北海道のラジオ聞けるけれども。

悲報、いくつかのデバイスが逝ってしまいました。

なんでだろうなー。

引越しで雑な扱いされたのだろうかー???

まず、いままで開発で使用していたLinuxPCが逝きました。

本体は動いてるっぽいけど、HDMI出力が正しく行われません。

この本体は前から色々と壊れていまして、本当は無線LAN内蔵されているけど、動いていないと言う状況でした。

まぁ、今はHyper-Vに開発環境を構築したのでなんとか開発は引き継げます。

壊れる直前に環境移行済ませておいて良かったー。

もう一つはハードディスク1台。

結構昔に買った物で、この中には、いままで溜めていたメディアファイルやDVDから抽出したisoファイルなどが入っていました。

まぁ、メディアファイルは全てクラウド上に待避させておいたので、それが唯一の救いです。

このためのバックアップよ。

おそらく原因は排熱が上手くいっていなかったんだと思います。

みんなもデバイスの発熱には注意した方が良い。

換気の良いところに設置するべし。

最後に、Blu-rayレコーダー。

これは10年ぐらい前、鬱病になったのをきっかけに、深夜番組を録画するために購入したものです。

これも映像出力ができなくなりました。

録り溜めていた番組が全部パーですが、1ヶ月前の古い物ですので、まぁいいか。

Blu-rayの再生はPS4があるし。

録画する機能なら、テレビに接続したHDDがまだ動いているし、これから届くであろうひかりTVならBSも録画できます。

いままで稼働してくれてありがとう。

燃えないゴミに出します。

【Laravel】まっさらな状態のLinuxから環境構築

この記事、定期的にアップデートしていこう。

MySQLのセットアップ

composerのインストール

$ sudo apt-get install composer

phpの足りないモジュールをインストール

$ sudo apt-get install php7.2-mbstring
$ sudo apt-get install php7.2-xml
$ sudo apt-get install php7.2-zip
$ sudo apt-get install php7.2-gd
$ sudo apt-get install php7.2-mysql

nginxのインストール

Laravelの設定

$ composer global require "laravel/installer"
$ cd /var/www
$ sudo chmod 777 html
$ cd html

リポジトリからLaravelのソースをclone

$ git clone リポジトリのURL
$ chmod 777 storage/
$ chmod 777 bootstrap/cache/

.envを作成して、設定を記入

$ composer install
$ php artisan key:generate

node.jsのセットアップ

$ sudo apt-get install npm
$ sudo apt-get install libpng-dev
$ npm install
$ npm run dev

データベースを設定

$ php artisan migrate
$ php artisan db:seed --class=実行するseederクラス

【Linux】mysqlをセットアップしたら躓いたので

忘れないようにメモしておく。

MySQLのインストール

$ sudo apt-get install mysql-server

rootパスワード設定

$ sudo mysql_secure_installation

問い合わせはすべてyを入力。

rootでログインを確認

$ sudo mysql -u root -p

MySQLにユーザーを追加

mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY 'password'

ユーザーに権限を設定

mysql> GRANT all ON *.* TO 'user'@'localhost'

Hyper-Vで仮想マシンにLinuxを動かす

そういえば、今使っているPCのWindows10がProなので、デフォで仮想環境が使える、と言うことに気がついたので。

これを使えば、VMwareとか、Virtual Boxとか使わなくても仮想環境を構築することができる。

参考にしたサイトはこちら。(Microsoftのヘルプページ)

https://docs.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

Hyper-Vを有効にして、Hyper-Vマネージャーから仮想マシンを作成すると、すでにUbuntu18.04のテンプレートが用意されているので、これを選択すると、自動的にisoイメージのダウンロード、インストールまで完了します。

注意するところは、リモートデスクトップで接続しないこと。

そりゃそうだ。インストール直後のUbuntuはリモートデスクトップを許可していないので。接続できるはずがありません。

リモートデスクトップ接続をキャンセルすれば、仮想マシンのデスクトップを直で表示されます。

ただ、このままだと、画面解像度的に使いづらいので、解像度の設定を書き換えます。

参考にしたサイトはこちら。(Qiita)

https://qiita.com/mizutoki79/items/6122455bfa2755942488

$ sudo vi /etc/default/grub

で設定ファイルを開いて、以下のように書き換えます。

GRUB_CMDLINE_LINUX_DEFAULTの行にvideo=hyperv_fb:[変更したい解像度]を書き足します。

1920×930程度にしておけば、フルHDのデスクトップにちょうど収まります。

そして以下のコマンドで設定を反映。

$ sudo update-grub

間違えてFedoraのコマンドを使用すると起動不能になる。(やらかした)

使ってみた感じでは、非常に快適です。

これなら本当にVMwareとかいらないかも。

メモリも32GBと余るほどあるので、半分の16GBをHyper-Vに割り当てても余裕。

まずい、これは本当にLinux PCいらないぞ。

とりあえず、開発環境をセットアップして見ようか。