初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-03-09 11:39:46

naokin
Member

オブジェクト(音声)の再生について

受付番号の呼出システムを作成しています。
環境はServer12+Pro13(Mac)+iPadです。
Serverに格納したメインファイルをMacのPro13で開き、番号操作をiPadで行うというものです。
Macにて呼出音声を再生したく、オブジェクトフィールドにwmaを格納しています。
流れとしては・・・
iPadにて表示番号指示⇒Macにて番号表示+音声再生
ですが、iPadにて指示を出すとiPad上で音声が再生され、Mac側では反応しません。
イメージとしてはiPadがリモコン、Macがテレビのように使用したいのですが、可能でしょうか?

初心者のため、質問内容もわかりにくいと思いますが、アドバイスいただければと思います。

Offline

#2 2017-03-09 12:28:41

honda
Member

Re: オブジェクト(音声)の再生について

あるクライアントが別のクライアントを操作できてしまうのは、FileMakerのようなシステムでは通常目的としていません。
似たような動作は、精々サーバーからの通知程度でしょうか。
そのためそもそもFileMakerに向かない用途ですが、FileMakerで実現する場合を。

-

各クライアントは個々に動作しており、これらに別のクライアントから、
任意の動作を実行させるような機構はありません。
その代わりに、全てのクライアントはデータを共有しているため、これを使った工夫が必要です。

たとえば、"呼び出し音再生タスク"のようなテーブルを用意します。
このテーブルはその名の通り、実行すべき呼び出し音再生のタスクを保持します。

iPadのクライアントから呼び出しボタンが押されたら、
このテーブルに対象の番号と日時などを持ったレコードを作成します。
そしてMac側はこのテーブルを監視します。

こういったデータ監視の場合、OnTimerによるスクリプトの実行が一般的です。
ただし間隔の指定はバランスが難しいです。
あまり間隔が長いと、iPadでボタンを押してからのラグが大きいです。
かといって短いと、Mac側の負荷が大きくなりすぎます。
受付番号呼び出しの目的と、Macの他の用途などによって、適した間隔は変わってきます。

Mac側でOnTimerによるスクリプトでタスクレコードを検出したら、
Mac側でスクリプトによる音声の再生と番号の表示を行います。
そして完了したタスクレコードは、削除するか、完了フラグなどで処理対象から除外します。

考慮すべき点は他にも色々ありそうですが、概ねこういった構成で実現できます。

Last edited by honda (2017-03-09 12:30:15)

Offline

#3 2017-03-09 12:34:36

honda
Member

Re: オブジェクト(音声)の再生について

あ、よく考えたら、fmpプロトコルで一発ですね。

■ URL を使用してリモートから共有データベースを開く
http://www.filemaker.com/help/12/fmp/jp … .16.7.html

先ほどの内容は、旧来のFileMakerの場合です。
fmpプロトコルは、実際RPCとして使えるので、今回の目的はあっさり実現できそう。
しかもポーリングも不要なので、こちらの方がはるかに良い実装です。

Offline

#4 2017-03-09 14:20:23

Moz
Member

Re: オブジェクト(音声)の再生について

fmpプロトコルで呼び出しても実行されるのは呼出元(FileMaker Go)だと思いますが
呼出先の FileMaker Pro を操作する方法があるのでしょうか?

Last edited by Moz (2017-03-09 14:22:16)

Offline

#5 2017-03-09 14:37:45

qb_dp
Member

Re: オブジェクト(音声)の再生について

MacにWEBサーバーをたて、
「FileMaker Go] → [WEBサーバー] → [(fmpプロトコル)FileMaker Pro]
という感じにすれば、実行出来るのでは。

Offline

#6 2017-03-09 14:51:19

Moz
Member

Re: オブジェクト(音声)の再生について

なるほど。
間に何も挟まずに実現できる方法があるのかなと期待しています。

Offline

#7 2017-03-09 15:16:18

honda
Member

Re: オブジェクト(音声)の再生について

一発という表現が誤解させてしまいました。qb_dpさんの仰る構成です。

プリントの処理に、レコードによるタスクキューから、
fmpプロトコル叩く方式に変えた案件あったので、端折って書いてしまいました。
実際にはRPC振り分け用のWebサーバー立ててます。

Offline

#8 2017-03-09 15:35:19

qb_dp
Member

Re: オブジェクト(音声)の再生について

以前から試してみようかと思っていたことをやってみました。
この方法なら[WEBサーバー]なしで、別PCのFileMakerのスクリプトを実行できます。
動作検証は、少なめです。何か予期しない不具合があるかも?

テーブルを一つ作成し、

テーブル:Command
フィールド:Target
フィールド:Source

ターゲットのテーブルと

デカルト積[X]のリレーションを設定します。

ターゲットのテーブルがあるレイアウトのヘッダーに
WEBビューアを設置
式:
If (  FilterValues ( Get ( システム IP アドレス ) ; Command::Target ) ; "Data:text/html," & Command::Source ; "" )



iPad(FileMaker Go)で、
フィールド:Target
値:操作したいPCのIPアドレス

フィールド:Source
値:
<script>
location.href = "fmp://$/{ファイル名}?script=receive&$argu=012345あいうえお";
</script>


上記のようにすると、
フィールド:Target
または、
フィールド:Source
を書き換えるたびに、ターゲットのPCで「"fmp://$/{ファイル名}?script=receive&$argu=012345あいうえお"」が実行されます。

Offline

#9 2017-03-13 10:24:08

naokin
Member

Re: オブジェクト(音声)の再生について

私の技術不足により、Webサーバー・qb_dp様どちらのやり方も実現させることができませんでした。
たくさんのアドバイスありがとうございました。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 522 KiB (Peak: 526.91 KiB) ]