[mythtv-users] Linphone + Myth = MythPhone

warpme warpme at o2.pl
Thu Feb 3 09:21:17 UTC 2011


It is wonderful somebody started to think about integration of myth and communication services.  

I'm greatly interested in integration of myth and home phone system (e.g. my home VoIP).

Sometime ago I started to do simple integration with help of perl.
So for my conceptual considerations led me to following solution definition (and partial implementation):

A: myth as slave(snooping) system to home voip system.

In such scenario, voip and myth are loosely coupled, where myth is slave to voip system, working more as snooping than controlling component.
In such case I would consider following functionality:
1.it should be able pause/resume when SIP calls are incoming/ended;
2.it should present via MythUI calling/caller numbers, picture of caller, details about call duration, statistics, etc. When calls ends, it should present call duration/costs;
3.It would be nice to have - at call ringing - ability to refuse, hold with voice IVR or redirect to voice mail via keys on remote. MythUI can show small help screen where user will see "press 1 to refuse call, 2 for hold, 3 for record, 4 for redirect";
4.When call is ongoing it would be nice when user will be able to switch from currently running SIP UA to myth as UA (speakers will be used for listening, attached to fe mic - for speaking);

B: myth is home voip system
In such scenario, voip and myth are tightly coupled, where myth BE is main home SIP proxy and is controlling whole home voip services.
In such case I would consider following, additional functionality:
-all features from scenario A;
1.possibility to initiate SIP calls;
2.dictionary for SIP calling (with pictures);
3.voice mail function;
4.voice mails list presentation and play;
5.video calls reception;
6.video calls initiation;
7.all other function requested by other users;

As You see - I purposely divide solution definition into 2 categories, as from implementation perspective there is huge difference.
I believe scenario A can be quite quickly implemented with small myth plugin code doing MythUI and integrated with linphonecsh as VoIP component.
For my home system I already implemented steps 1-2 with help of perl. Steep 3,4 seems to be easy but I'm stuck on lack of myth presentation functionality (MythUI pop-up with possibility of displaying given graphic layout).

Scenario B probably needs more work but it looks linphone might be perfect tool also for this scenario.

From architectural point of I would consider distributed implementation based on agent & server concept. Agent (running on FE) can be for scenario A, and can be UA  representing FE to the main home SIP proxyo. Server (running on BE) can realize functions present in B scenario and can cooperate with agents for functions of scenario A.


More information about the mythtv-users mailing list