[WebService] General Media Access Webservice (1 Viewer)

Prospero

Portal Member
May 14, 2011
14
0
I just tried installing the latest version 0.3, and although the service starts it doesn't appear to be listening. not on port 44321 nor anywhere else.

I noticed that in the file GmaWebService.CoreService.exe.config there is a line which says

<add baseAddress="http://localhost:4321/GmaWebService/MediaAccessService"/>

Shouldn't that be 44321, not 4321? Also, when I installed the latest version of Ampdroid and went into the advanced client configuration the default port that appeared for the GMAWebService was also 4321, not 44321. I thought 4321 was for the TV4Home service.

Tried uninstalling all versions of GMAWebService and reinstalling the lastest version 0.3 and still no luck.
 

Mike Lowrey

Portal Pro
February 4, 2009
638
124
Berlin
Home Country
Germany Germany
We changed the port to 4321 in the latest release because the usage of unique names like "GmaWebService/MediaAccessService" allows using the same port like other services without interfering with them.
 

Mike Lowrey

Portal Pro
February 4, 2009
638
124
Berlin
Home Country
Germany Germany
Please check whether the service is started and if it is started upload your log files from C:\ProgramData\GmaWebservice
 

unclesam87

Portal Member
May 16, 2011
8
0
AW: [WebService] General Media Access Webservice

service is started,
i just saw that you meant programmdata, there is no gmawebservice.
this file i found under programm/gmawebservice
edit: i saw under program removal that gmawebservice was installed twice, so i deinstalled and now it seems to work. thx
 

Prospero

Portal Member
May 14, 2011
14
0
We changed the port to 4321 in the latest release because the usage of unique names like "GmaWebService/MediaAccessService" allows using the same port like other services without interfering with them.
Thanks for quick reply Mike. I figured as much, and tried stopping the TV4Home service, when the GMAWebservice then started working on 4321.

However, I'm not quite sure why you needed to change this. My Windows XP box doesn't seem to support two services listening on the same port, and in any case the client-server architecture of Mediaportal means that the server and client aren't necessarily running on the same machine. When they are running on different machines behind a firewall, the user will have configured port forwarding for ports 4321 and 44321 to the different respective machines.

After installing the new release the above configuration will be broken, and the user will have to either reprogram the firewall port forwarding to translate incoming port 44321 to port 4321 on the destination machine, or else edit the .config file for GMAWebService (as I have done) so that the service runs on 44321 as before.

In any case, I think the change needs to be flagged up in the documentation with instructions for changing the port, as I can imagine there will be a lot of users who have spent a while setting up a finely tuned system only to find it broken by this update.
 

Mike Lowrey

Portal Pro
February 4, 2009
638
124
Berlin
Home Country
Germany Germany
However, I'm not quite sure why you needed to change this.
I changed it because it needs less configuration for the user:
Less firewall rules, less NAT settings(if single seat if not it's irrelevant) and that's what most user talk about "ah it's complex", "can you not make it easier"
I personally don't see how it is hard to install 2 different services with nearly zero configuration while setting up MP requires much more work, but hey i'm just the dev ;)

My Windows XP box doesn't seem to support two services listening on the same port, and in any case the client-server architecture of Mediaportal means that the server and client aren't necessarily running on the same machine.
I'm only using Windows 7 so i can't test the features in XP since i'm just using plain .Net methods which should be supported on all platforms.

When they are running on different machines behind a firewall, the user will have configured port forwarding for ports 4321 and 44321 to the different respective machines.
Yeah that might be a problem, but as i said above i haven't changed it because i needed it but because a certain amount of user were interested in this change.

After installing the new release the above configuration will be broken, and the user will have to either reprogram the firewall port forwarding to translate incoming port 44321 to port 4321 on the destination machine, or else edit the .config file for GMAWebService (as I have done) so that the service runs on 44321 as before.
We are talking about beta software and i believe you are aware of that. It is in constant development so there are things which will change and i'm quite sure there will be more changes than that.
And changing the ports will not work, since as far as i know aMPdroid is hard coded on port 4321 isn't it?

In any case, I think the change needs to be flagged up in the documentation with instructions for changing the port
Should i interpret this as a demand?
 

Prospero

Portal Member
May 14, 2011
14
0
Mike - no demands, only suggestions which I hope may be of help to others.

I understand that the software is only at beta stage, but the point of that is to flag up possible issues at this time. Fortunately Ampdroid DOES allow you specify different ports for the different services when you use the advanced configuration option. This is ESSENTIAL when running the TV4Home and GMAWebService services on different machines behind a firewall (as would often be the case with MediaPortal), because the firewall can only forward the requests to the appropriate machines based on the incoming port.

So, even if the two services are running on different machines and both using the same 4321 port, as now seems to be the default, it would be necessary to configure Ampdroid to make the connections via different ports and configure the firewall to forward them accordingly to the respective machines, translating the port to 4321 where necessary.

This kind of scenario would probably be even more confusing for the average user who doesn't really understand port forwarding, which is why I suggest some documentation might be necessary.
 

Oxan

Retired Team Member
  • Premium Supporter
  • August 29, 2009
    1,730
    1,124
    Home Country
    Netherlands Netherlands
    Let me, as another GMA developer, jump in here. I understand both sides; and I'm not totally happy with the current situation either. I see why you need them to run on different ports (I've done it myself for a while too). The case is that most of the users are running a single seat installation, and we want to make it the easiest for them. As we're introducing another service in the next release, we definitely need to improve things here. The current plan is to introduce a universal installer, which allows the user to choose which services to install and configures them. I'm even playing around with the idea of generating a QR-code which can be scanned by aMPdroid for advanced configuration. For on the local wifi things will be pretty smooth then: run the server & client installer, and you're done.

    For external access, the big problem is that port forwarding can't be done programatically. The user needs to this himself. We can provide some documentation on which ports to forward to which IPs, but we can't take much work out of the users hands.

    As for documentation, it currrently is virtually non-existent. We're all volunteers though and at least I prefer coding above writing documentation. That doesn't say that it'll never be written, just that it needs someone who's willing to do the work, or some more time.
     

    Prospero

    Portal Member
    May 14, 2011
    14
    0
    I think the installer approach is a good one. Maybe rather than worrying about documentation, the answer is to build the instructions into the installer itself.
     

    Users who are viewing this thread

    Top Bottom