2014年9月11日木曜日

Open VBX 日本語化 成功 次は料金設定と徴収はどうする?

日本語化ファイルでは、細かいディテールがわかりにくいので、少しこだわってやっていると、日本語化に思った以上に時間がかかってしまった。


日本語が難しいのか直訳では意味がわからないところが多くて、結局はほとんど手作業になってしまう。たとえばnumber(ナンバー)がたくさん出てくるのだが、日本語で「番号」では意味がわかりにくい、これは電話番号と変更したり、Sendと書いてあっても意味的には送るというよりも、日本人的には受信するの方がしっくりきたりするところもあり、やはりプロに任せるべきだったと1日過ぎた頃に思った。


その分、ソースやフレームワークやpluginの構造まで熟知できたので、それは収穫として重宝してる部分だ。

例えば、フローの部分だけでは、正直、機能が足りない。
最初に戻るやグループの範囲などは、英語のドキュメントを見るよりソースコードで製作者の意図を汲み取ったほうが早い。

ただ、その方法だとクライアントや遠隔地の方に説明するときに困ってしまうので、実機ありきでガンガン使って慣れるしかないというのが現段階での実感です。

今後の課題は、通話料の課金設定と請求について。

 通話料に自社分を課金すると自社で請求しなければならない

方法として

  1. 月管理費として定額を請求する
  2. 通話料ではなくコール回数に課金する
  3. APIから請求書発行までのシステムで自動化する
  4. 前金制、デポジットを預かり、利用にあわせて減っていくシステムを構築する
 いずれにしても、具現化までは問題が山積している。一番シンプルで簡単なのが1,2だけど、利用者に料金バッファを持っていくため利用者に対して明瞭会計ではない。対Bにはこれの方がいいだろう。
3,4は、開発費を先払いになるのでダブルリスクを負うことになるので困ったものだ。

Twilio自体がチョイ足し系で利用者迷わず使えて使っていることを意識しないということを考えると、他のサービスと一緒にして請求書も一緒にしてしまうのがベターかもしれない。

2014年9月10日水曜日

Open VBX の基本構造

OpenVBXはPHPフレームワークをもとに作成されているので、基本構造はMVCで考えるとわかりやすい。

smarty
phpunit
mozila


フレームワークを早足で理解するには
http://www.slideshare.net/NEKOGET/php-51


libraries内にいろいろはいってるよ

Open VBX 日本語化




top-OpenVBX-email.php

$config['smtp_port'] = '25';    // SMTP Port.
$config['smtp_port'] = '587';    // SMTP Port.

--------------------------------------------
top - OpenVBX - config - pagination.php

htmlの記述あり
ページの「NEXT」「PREF」

--------------------------------------------

 top - OpenVBX - config - routes.php

ルートURI
予約ルート

 許可なし直接スクリプトアクセス

--------------------------------------------
top - OpenVBX - config - smileys.php

絵文字


--------------------------------------------
top - OpenVBX - config - template.php

アクティブテンプレート


----------------------------------------------------------------------------------------
top - OpenVBX - controllers - auth

ユーザー関連(ログイン・ログアウト・リセット・ユーザ検証)
--------------------------------------------

top - OpenVBX - controllers - auth - connect.php


--------------------------------------------

top - OpenVBX - controllers - auth - login.php


--------------------------------------------

top - OpenVBX - controllers - auth - logout.php


--------------------------------------------

top - OpenVBX - controllers - auth - reset.php

リセット、


----------------------------------------------------------------------------------------
top - OpenVBX - controllers - messeges 

ユーザー関連(受信ボックス・テキスト・インデックス・コール・)


----------------------------------------------------------------------------------------
top - OpenVBX - controllers -setting

ユーザー関連(受信ボックス・テキスト・インデックス・コール・)
--------------------------------------------

top - OpenVBX - controllers - setting - caches.php


--------------------------------------------

top - OpenVBX - controllers - setting - site.php

私たちが成功したGitHubのAPIライブラリを使用することができます乗り切る
--------------------------------------------


----------------------------------------------------------------------------------------
top - OpenVBX - controllers - unit

 API関連へのアクセス
重要な設定をおこなう

----------------------------------------------------------------------------------------
top - OpenVBX - controllers

コントロールフォルダ直下
管理画面の英語表示を修正することができる

top - OpenVBX - controllers - acount.php
top - OpenVBX - controllers - acounts.php
top - OpenVBX - controllers - audiofiles.php
top - OpenVBX - controllers - client.php

top - OpenVBX - controllers - devices.php
top - OpenVBX - controllers - dialog.php
top - OpenVBX - controllers - external.php
top - OpenVBX - controllers - flows.php
top - OpenVBX - controllers - hook.php
top - OpenVBX - controllers - iframe.php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - .php
top - OpenVBX - controllers - install.php



--------------------------------------------


top - OpenVBX - controllers - install.php

インストール時の画面

--------------------------------------------

top - OpenVBX - controllers - iphone.php

 iphone設定関連

--------------------------------------------

top - OpenVBX - controllers -PHP

各種設定、必要具材組み合わせ
API・Twiml ・

numbers.php
page.php
support.php
twiml.php
upgrade.php
voicemail.php
welcome.php




-------------------------------------------------------------------------------------------
top - OpenVBX - errors

各種エラー

-------------------------------------------------------------------------------------------
top - OpenVBX -helpers

各種ヘルプ

-------------------------------------------------------------------------------------------
top - OpenVBX - hooks

-------------------------------------------------------------------------------------------
top - OpenVBX -language



 言語関連
--------------------------------------------


top - OpenVBX -language - english - datamapper.php
top - OpenVBX -language - english - openid_lang.php

各種アラートと、ユーザー登録の設定補助




-------------------------------------------------------------------------------------------
top - OpenVBX -libraries

 ライブラリ
--------------------------------------------

top - OpenVBX -language - english - datamapper.php
top - OpenVBX -language - english - openid_lang.php

各種アラートと、ユーザー登録の設定補助


-------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------

top - OpenVBX -libraries - AppletUI


  1. アプレットapplet)とは、他のアプリケーションの中に組み込まれて実行される小さなプログラムとのことである。 多くの場合、アプレットを動作させるアプリケーションはWebブラウザである。 アプレットという用語はJavaアプレットの略称として用いられることも多い。
--------------------------------------------

top - OpenVBX - libraries - AppletUI - templates - AudioSpeechPickerTemplate.php
top - OpenVBX - libraries - AppletUI - templates - DropZoneTemplate.php
top - OpenVBX - libraries - AppletUI - templates - TimeRangeTemplate.php
top - OpenVBX - libraries - AppletUI - templates - UserGroupPickerTemplate.php
 
各種入力フォーム htmlと組み込みPHP

 --------------------------------------------


top - OpenVBX - libraries - AppletUI - AppletUIWidget.php
top - OpenVBX - libraries - AppletUI - AudioSpeechPickerWidget.php
top - OpenVBX - libraries - AppletUI - DropZoneWidget.php
top - OpenVBX - libraries - AppletUI - init.php
top - OpenVBX - libraries - AppletUI - TimeRangeWidget.php
top - OpenVBX - libraries - AppletUI - UserGroupPickerWidget.php

 
ウィッジット(小物アクセサリ)の組み合わせ、組み込みPHP


-------------------------------------------------------------------------------------------

top - OpenVBX -libraries -Cashes

 ローカル向け各種設定ファイル
 APC DB

-------------------------------------------------------------------------------------------

top - OpenVBX -libraries - fooStack



top - OpenVBX -libraries - fooStack







一時中断2014/9/10











2014年9月9日火曜日

Open VBX インストール レンタルサーバ(Xserver) by Twilio 日本語で説明

Twilioを使いサービスを提供するのに、数行書けば簡単な操作なら問題なくできるが、あまり大掛かりなプログラムを書かない分、小さな指示を出す小さなソースコードが点在するスパゲティーソースのような状態になる。

そこでOpenVBXを入れようと思ったが日本語で説明しているサイトが見当たらないので備忘録としてきろくする。
 OPEN VBX(英語のみ)
http://www.openvbx.org/

まずは一式DownLoad
ダウンロード



















ローカルにXampp +Apache+MySQLで入れるとPHPのバージョンの問題で途中でエラー。

レンタルサーバ(XSERVER エックスサーバ)の環境が適していたのでインストールした手順
参考にしたサイト
http://www.openvbx.org/install/

 【準備】
  • Web Server (※今回はエックスサーバX10)
  • MySQL 5+
  • PHP 5.2+
  • Twilio Account



 PHPは5.3.3(デフォルト)MYSQLも5.(デフォルト)

FTPでサーバにアップロード、ブラウザ(Chrome)でアップしたフォルダにアクセス
iいくつかの項目の「いいえ」は無視しました。「NEXT」オス

「NEXT」

Twilioの管理画面へログインし、必要な情報をコピーしてインストール画面へ入力








 ログイン画面登場
管理画面登場!!電話もSMSも無事送受信できました!
これでスパゲティーソースから開放された。

APIから料金の請求や管理画面の作成が難しいという意見が多いようなのでOPEN VBXを使って作成してみます。

まずは日本語化したほうが一つ一つの作業効率は上がるし、他人に説明しやすいので日本語化が必要だな。






Xserverでの、ドメインメールのSPF設定でキャリア(携帯会社)の迷惑メール分類を回避

美容室や保育園の100通程度のメールマガジンを発行が目的 でメールスタンドを設置することにしました。
アマゾンかさくら辺りのVPSに設定するつもりだったが、サイトを納品後にメールスタンドの受注だったので、Xserverレンサバから実験的にPHPで送信してみた。

これで問題が無ければそのまま納品だったが、やはりau、Gmailは迷惑メールに分類された。
メール登録の際に、ドメインメールの受信設定をお願いする方向 だったが、「空メール登録」がしたいとのこと

以前利用していたヘテムルでは自分で調べてやる分には自由ですよ的なスタンスだったのでりようしたことがなかった。
◆メールサーバーの番号の確認
コントロールパネル→ドメイン・メール設定→詳細を見る→メールアドレス設定
レコード設定はネームサーバーの提供元サービスにて設定変更ください。
設定方法につきましては、ヘテムルではサポート範囲外とさせていただいております。
↑ヘテムル


やはりVPSでIP固定でいくしかないかと思ったが、一応Xserverを調べると、SPFが設定できる
しかも簡単だ!ことのほかXserverはかゆい所に手が届く。

簡単なTXTの設定でGmail、au,docomoを含む一斉送信メールが 届き空メールの自動返信も問題ない。
 その設定の際、少しつまずいたので下記ブログを参考にした。
http://webcre-archive.com/2014/07/25/xserver_gmail_spf/
送信フォームに入力されたメールアドレスがGmailの場合、
自動送信メールが迷惑メール判定となり迷惑メールフォルダに入ってしまうようです。
それを回避するためにXserver側では
SPF(Sender Policy Framework)の設定を行ってくださいとアナウンスがあります。
http://www.xserver.ne.jp/manual/man_domain_dns_setting.php
Xserverが指定している方法は、DNSの追加で、
ホスト:空白(入力なし)
種別:TXT
内容:v=spf1 +ip4:xxx.xxx.xxx.xxx ~all
優先度:0
とあるのですが、なぜかうまくいきませんでした。
SPF設定で検索すると、ドメインに対しても設定すれば回避できるとあり、
早速設定してみるとこれがズバリ的中し迷惑判定から外れました。
設定方法は、
ホスト:空白(入力なし)
種別:TXT
内容:v=spf1 +ip4:xxx.xxx.xxx.xxx +a:sv###.xserver.jp +mx ~all
優先度:0
###はサーバ番号です。
サーバ番号は、Xserver管理画面「サーバ情報」より確認できます。

2014年7月14日月曜日

ネットワークの接続。すぐに切れる、wifi、繋がらない【解決法】

NECのワープスター(AtermWR8370N)で接続がすぐに切れる原因と解決法。

無線ランの数分から10数分ごとに接続が切れ接続を押しなおすと接続されるがまたすぐに切れる

Windows7のPCを数台利用しているのだが、FUJITSUのライフブック13.3インチモニターの小柄なやつだけWifi接続してもすぐに接続が切れてしまう。


以前も何度か解決を試みたが断念、しかし、メインマシンの故障!そしてKDDIのTwilioという電話を制御するのPHPプログラムでのブラウザ電話が必須となり、途切れたら繋げればいいとゆう騙し騙しではダメな状況に陥ってしまった。


Wifiが切れるとブラウザ電話も切れるでは話にならない、どうしても安定してFUJITSUのラップトップ(ノートパソコン)にWifi通信をしなければならない。


●試みたしたこと
  • 付属のCDのよるかんたん接続をしたが変化なし
  • ネットワークの共有センターから考えられる設定を変更。
  • セキュリティーの種類をWAP/WAP2/WEPなど変えてみるも効果なし
  • エコモード設定変更するも効果なし
  • ウィンドウズ7自体のセキュリティーやファイヤーウォール設定を変更しても変化なし
  • 「ネットワークと共有センターを開く」内をいじるも効果なし
●効果があったこと
完璧な結果とは言えないが、いくつかの方法でWIFIを安定確立できた。

ケース1:セキュリティーをスルッスルにして野良WIFIにする。
当たり前だが誰も何の警告もしてこなくなるが、さすがにPC内やWifi内の一般公開はリスクが高すぎるので却下!ので納期などの関係で最悪の事態にのみ使用することに

ケース2:これが実質的な解決法だと思う対象ネットワークがプライマリ(WARPSTAR-xxxxC7)とセカンダリ(WARPSTAR-xxxxC7-Wと)がある。
その他にも「ネットワークと共有センター」から増やすことができるのでWARPSTAR-xxxxC7-W 23と数字が増えてネットワークも増えていく。


これが曲者で、放っておくと使用する暗号化キーをすべて1番で自動的に作成されていく。
これがぶつかったときにセキュリティーの問題でWifi接続が途切れるのが原因


●解決法
Wifiネットワークをプライマリとセカンダリの二つに限定する。そして暗号化キーを1番と2番でぶつからないようにする。そして、無駄に増えすぎたWifiネットワークを削除してしまう。
この方法で問題なく接続が維持され、再起動しようがユーザーを変更しようがセキュアなWifiが永続的に確立できる。

●具体的に

1.ワープスターの管理画面192.168.0.1のURLを入力セキュリティー画面「admin」と設定したパスワードを入力してログイン


2.左メニューの「無線ラン設定」から「無線ラン設定」を選択




3.下記のように設定
対象ネットワークを選択:プライマリWARPSTAR-xxxxC7
暗号化モード:WEP:128bit:英数字13ケタ:
暗号化キー番号:1番
暗号化キー(WEPキー)1番:E9749AC0F0055




4.次にセカンダリも設定
対象ネットワークを選択:プライマリWARPSTAR-xxxxC7-W
暗号化モード:WEP:128bit:英数字13ケタ:
暗号化キー番号:2番
暗号化キー(WEPキー)2番:DGT49AC0F0055




5.不要なネットワークの削除(これ大事!)
右下のアンテナから「ネットワークと共有センター」→「ワイヤレスネットワークの管理」不要なものを選択、右クリック→削除

ポイント。
暗号化キーを重複させないことと、不要なネットワークは削除すること

これにより1週間が経過したが2度とWifiネットワークが途切れていない。
メモまでに

2014年1月16日木曜日

お名前サーバ(共用サーバーSD)からヘテムルへ移管 その2 まとめ

昨日に引き続き、「お名前サーバ(共用サーバーSD)からヘテムルへ移管」をしている。






ムームードメインからメールがくる


info@muumuu-domain.com
To:

 info@xxxxxx.co.jp
日付: 2014年1月15日 17:26
件名: 【重要】トランスファー承認手続きのお願い



本文中のURLへ飛び、承認すると、数時間すると次にお名前.comから同様のものがきて承認する。


すると、ムームードメインの管理画面内に移管したいドメインが表示されるので、クリックして一年分のドメイン管理費を支払う。




ヘテムルにドメインを追加して、ここからがサーバ移行をして結構嫌なところ。
ブラウザサイトだけのhtml+css程度のサイトならばいいのでけれど、CMSがお手軽に使える時代なのでサーバサイドの設定やMySqlバックアップの反映、呼び出しDBの変更などが面倒くさい上に知らないところでエラーの原因になる。


やはり、サーバの移行はしたくないとヒシヒシと思う瞬間です。
ヘテムルのサーバにも前サーバと同じ設定が出来たらムームードメインのネームサーバをヘテムルを選択して変更、この辺でヘテムルとムームーがごっちゃになりやすいので注意。




しばらくするとヘテムルに変更されています。
※すぐには反映されません。


結局、待ち時間が多いので、複数業務をこなしつつ2日にわたってのドメイン移管とサーバの移行が終了。


移行したことで、大きめのDBを利用した表示速度は早くなり、拡張子.htmlのPHP化も.iniの設定も簡単に出来、というか設定を特にしなくても快適な状態になっていることが素晴らしい!
”本当に気が利く人は「気を使っている事」を気づかせない”って聞いたことがあるが、まさにその状態でしす。
ここに労力と時間がかかっていたお名前サーバは、たとえ機能に問題がなくてもやはり何か違うと思う。まぁ、月間数百円

2014年1月15日水曜日

お名前サーバ(共用サーバーSD)からヘテムルへ移管

ヘテムルサーバでは「サブドメインにwwwが付けられない」や再販禁止などの問題から、ヘテムルサーバからGMOのお名前サーバの共用サーバへ移管した。
 
お名前サーバはシンプルな管理画面で、機能的にもそろっているのですが、プラスαのサービスが少ないので、いちいち手間がかかってしまい、ヘテムルサーバの時に予想の工程の倍以上の手間がかかることがザラにあったし、当然無料と考えていたものが有料だったりするので業務の効率化を優先してヘテムルに戻すことにした。
 
ちなみに時間がかかったことと言えば
  • phpmyadminの手動インストール
  • Whois情報公開代行
  • 管理者アカウントが自動で振り当てられる(ランダム英数)
  • PHP化した拡張子htmlが使えない(この変更が面倒くさかった)
  • ↑ちなみにSEO的にhtaccessで403転送をかけた
  • php.iniの設定
  • Wordpress等のかんたんインストールでのデータベース名が指定できないので、MySqlの名前から作り直し
  • FTPアカウントをディレクトリごとに作成したのも面倒
それと、理由はもう一つあって、モバイル転送がキャリアごとだったり、アクセスカウンターのたぐいの古臭いCGIの簡単設定機能がそのままにされていたりと、何だか時代遅れのホテルのような「これって何のために使うの?」的なものがたくさんあり、少しの敗北感のようなものを感じていた。
 
そしてこの度、PHPライブラリのPearを使おうとしたのですが、なんと手動にてインストールが必要との事で、「もうええわ!」と古巣のヘテムルに戻ることにしました。
 
 
-----------------------------ここから手順

お名前.comにログイン
Naviトップタブ
移管するドメイン名をクリック
テーブルの中のAuthcodeをコピーしておく




ムームードメインにログイン
↓ドメイン移管手続
↓質問に答え進む
移管申請完了
メールで申請内容を確認




ここから数時間から48時間以内に「トランスファー承認手続き」メールを待ちメールが来ればそれに従い移管手続をすすめる。


という事で、本日できることはここまでです。
ムームードメインからの応答がある後日、続けます。
まぁ、一日でサーバの移行やドメインの移管は難しい上にメールの設定や、ネームサーバの設定の影響でNotFoundになるリスクを考えると、サーバ管理を請け負うのは採算が取れない。


それでもクライアントのスキルによってはせざるを得ないことになることがほとんどだと思うので、最初の時点で明確にクライアントのサーバと自社サービスのサーバは分ける方が管理も精神衛生上もいい。
また、再販可能なGMOのレンサバだとしても、年間数千円程度で借りられるのでクライアントにサーバー維持費を請求しても普通に払ってくれる。

サイトの制作者がセコイ根性を出して自社とクライアントを一緒に管理することで年間数千円を節約しようとすると、自分にも制限がかかってしまいクライアントにもリスクを負わすことになるのでお勧めしない。

2014年1月14日火曜日

urlencode

PHP覚書

urlencode(
の文字をブラウザがGETで飛ばす際に自動的にurldecode(するため、文字化けの原因になっている。

セキュリティーの面でも、出来るだけ2バイト文字は使わないか、使う場合は細心の注意が必要。

メンテナンス向上の意味からも設計段階でしっかりと決めておく。