Chatserver auf Mac und Client auf Android

Startseite Foren Deutsches LiveCode-Forum Chatserver auf Mac und Client auf Android

Schlagwörter: 

Ansicht von 7 Antwort-Themen
  • Autor
    Beiträge
    • #15738
      Torsten
      Teilnehmer

      Hi,

      ich versuche gerade folgendes: auf dem Mac läuft ein Chatserver und ich möchte auf einem Android-Gerät einen Client laufen lassen, der sich mit dem Server über einen Socket verbindet.

      Wenn beide auf dem Mac laufen ist alles ok, der Client verbindet sich über localhost:port

      Wenn aber der Android-Client sich verbinden soll, braucht er ja die IP vom Mac.

      1. Problem: es gibt zwei IPs, eine von innen und eine aussen:
      innen: put the hostNameToAddress of the hostName –> 172.16.48.48
      aussen: https://wtfismyip.com/text –> 141.76.179.3

      Welche soll ich nehmen? Ich habe beide ausprobiert, aber keine Verbindung klappt.

      2. Problem: Die Verbindung der beiden geht ja nicht innerhalb meine WLANs, sondern wahrscheinlich über das Internet. Kann es sein, dass der Mac oder die Firewall des Hosters von aussen kommende Verbindungen abblockt? Wie kann man die Ports dann öffnen, so dass der Server auf dem Desktop auch von aussen erreichbar ist?

      Bin sehr dankbar für die Antworten,
      Torsten

      Kann es sein

    • #15740
      Werner
      Teilnehmer

      Hallo Torsten,

      Die Verbindung kann über ide interne und die externe IP laufen. Bei der internen ist sie dann aber auf dein privates Netzwerk beschränkt. Die einzelnen Chatteilnehmer müssen aber immer die selbe IP bekommen. Das kann man im Router einstellen.
      deine IP-Adresse „von aussen“ dürfte vermutlich schon nicht mehr stimmen. Üblicherweise bekommst du einmal am Tag eine neue IP. Die Lösung hat neben der Festlegung der internen IP zwei Punkte:

      • zunächst brauchst du eine feste IP-Adresse von aussen. Die bekommst du z. B. über DynDNS oder, wenn du eine Fritzbox hast, auch über MyFritz.
      • dann brauchst du noch eine Portweiterelitung innerhalb deines Routers.
    • #15746
      Werner
      Teilnehmer

      Kleine Ergänzung:

      Wenn alle Chatteilnehmer von aussen erreichbar sein sollen, wie z. B. bei WhatsApp, dann müssen auch alle eine eigene feste äussere IP haben. Da müsstest du also jedem per DynDNS eine eigene IP besorgen.
      Möglich wäre auch ein Server, der bei der Anmeldung der einzelnen Chatteilnehmer die IP des jeweiligen Teilnehmers entgegennimmt. Interessante Programmieraufgabe 😉

    • #15803
      Torsten
      Teilnehmer

      Ich hab’s hinbekommen.

      In der Kürze: Es ist kein Problem, wenn man in einem gemeinsamen WLAN ist.
      Für meine jetzigen Zwecke reicht das erstmal aus.

      Ist aber ein spannendes Thema, in der Tat 🙂

    • #15805
      Klaus Major
      Verwalter

      Björnkes Chatserver hast Du Dir schon mal angeschaut?
      https://bjoernke.com/?target=chatrev

    • #15822
      Torsten
      Teilnehmer

      Hi Klaus,

      stimmt, den hatte ich vor langer Zeit mal auf dem Schirm. Ich guck mir jetzt mal an, wie er das mit externen IPs genau gemacht hat.

      Merci vielmals!

      PS: kennst Du noch andere Ansätze, die einen Server aufgesetzt haben?

    • #28659
      Torsten
      Teilnehmer

      Ha, meine Ermittlung der internen IP über hostname hat gar nicht funktioniert (keine Ahnung, warum ich das geschieben habe). Hier also nun der funktionierende Weg (beim Mac), wie man an die lokale IP (unter der der Rechner z.B. als Server für andere Geräte im eigenen WLAN erreichbar ist) bekommt:

      put "ifconfig -a | grep" && quote & "inet " & quote into tCommand
      put shell(tCommand) into tIP
      put word 2 of line 2 of tIP into tInternal_IP

      Happy Coding
      Torsten

    • #28661
      Torsten
      Teilnehmer

      Jou, und hier ist das Script für Windows:

      set the hideconsolewindows to true
      put shell("ipconfig") into tData
      put line lineoffset("IPv4",tData) of tData into tData
      put the last word of tData into tInternal_IP

      Happy Coding
      Torsten

Ansicht von 7 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.