月別アーカイブ: 2017年11月

HDMI VGA 変換アダプタ を使う

amazonで購入した、「UGREEN HDMI VGA 変換アダプタ 1080P 3.5mm ステレオ音声出力 TV Stick対応 Micro USB給電可能 Active式」
https://www.amazon.co.jp/gp/product/B00NBUTHJG/ref=oh_aui_search_detailpage?ie=UTF8&psc=1
をRaspberry PIで利用できるように設定します。
/boot/config.txtを編集します
$sudo /boot/config.txt
17インチのVGAモニタの場合ですが下記を追加または変更します。

hdmi_force_hotplug=1
hdmi_ignore_edid=0xa5000080
hdmi_group=2
hdmi_mode=16
hdmi_drive=2

解像度が異なる場合modeを変更します。
modeについては
https://elinux.org/RPi_Configuration
を参照して下さい。

raspberry pi にsambaをインストール

raspberry pi にsambaをインストールしてファイルを共有します。
設定やアプリ開発をリモートで行えるように全てのファイルをroot権限でアクセス出来るようにしてしまいます。
ファイルサーバにする予定はないので、自動起動はせずに必要なときのみ起動するようにします。

$sudo apt-get install samba
設定を変更
$vi /etc/samba/smb.conf

[global]セクションに以下を追加

unix charset = UTF-8
dos charset = CP932

末尾に以下を追加
[x$]
path = / # 設定ファイルなども操作したいので、/を共有
read only = No # 書き込みを許可
guest ok = No   # 指定したユーザにのみアクセスを許可
valid users = pi, # 許可するユーザーを,区切りで列記
force user = root # 設定ファイルなども操作したいのでユーザはrootに

$sudo service samba restart
で再起動。
Unit samba.service is masked.などが出て再起動に失敗する場合
smbd と nmbd を個別で実行する。

$sudo service smbd restart
$sudo service nmbd restar

Sambaのユーザ登録を行う
次にSambaにユーザ登録します。
例えばpiユーザをSambaに登録します。2回パスワードを聞かれますので、piユーザと同じパスワードを入力します。

$sudo smbpasswd -a pi

WEBアプリの作成

raspberry pi(linux) CakePHP でWEBアプリを作ってみます。
サンプルとして顧客管理システムを作成します。
主なものとして次の機能の実装を予定しています。
1 顧客情報、対応履歴
2 ユーザ管理・ログイン・アクセス権の設定
3 IP-PBX Asteriskと連動し、発着信履歴、着信時に顧客情報をポップアップ表示

CakePHPはウィキペディアでは次のように紹介されています。
CakePHP(ケイクピーエイチピー)とは、PHPで書かれたオープンソースのWebアプリケーションフレームワークである。先行するRuby on Railsの概念の多くを取り入れており、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークと言われている。MITライセンスの元でフリーで配布されている。

CakePHPはbakeというコマンドがあり、規約に従ったテーブルを作成すると、このコマンドを実行することでModel、View、Controllerの基本的なファイルを生成する事ができます。
一覧、表示、編集、追加、削除機能が実装できます。
このままでも、十分実用的ですが、デザインを変更したり、機能を追加すると、市販のWEBアプリと見紛うようなアプリが作成できます。
CakePHPについての詳細は他の記事を参照して下さい。

今回はbakeで利用されるテンプレートをカスタマイズして、標準の機能より高機能なページを短時間で作成できるようにします。
動作環境として、RaspberryPIについて紹介しますが、CakePHPの環境が構築すれば、他のlinux,Mac、windowsでも同様に作成できます。