【问题标题】:Making Server and Client program制作服务器和客户端程序
【发布时间】:2020-09-21 06:22:11
【问题描述】:

我想做一些服务器和客户端类型的程序,但我不知道该怎么做。我将在下面描述它:

它将在 Windows 上有一个 GUI,当我在那里输入一些文本并单击发送时,它会首先检查我的手机是否与它连接(通过蓝牙或 WiFi 或任何电缆),如果它已连接,它将发送该消息发送到我手机中的应用程序或程序。如果我的手机没有直接连接,它将通过互联网(假设我的 PC 和手机都具有活动的互联网连接)将该消息发送到我的特定手机。这应该是双向沟通。

我不想尽可能长时间地使用任何第 3 方 API 或软件。 这样的事情可能吗?我怎样才能实现它? 或者我应该学什么来做这样的事情?

【问题讨论】:

  • 您能描述一下服务器-客户端项目的目的吗?这将有助于我们为您提供更好的答案。你打算用什么编程语言,项目中连接手机和PC最方便的方法是什么?
  • 目的:我使用 python 开发了一个个人助理,它可以自动执行我的一些任务,告诉我时间、电池状态等。我也可以使用 Android 为我的手机制作同样的东西,但我想要一个它们之间的双向通信。比如,如果我使用笔记本电脑,而我的手机放在客厅并处于静音状态。如果我接到电话,那么我手机中的一个程序将检查它是否连接到我的笔记本电脑,如果是,它将向我的笔记本电脑发送一条带有来电者姓名的消息,我的个人助理将为我读出来电者姓名。
  • 另外,如果我想向某人发送短信。我将命令我的私人助理,它将消息连同接收者的姓名一起发送到我的手机,然后我手机中的程序将相应地发送消息。
  • 我现在知道 Python、Android、MySQL,如果需要其他语言来实现,我也可以学习。谈到移动设备和 PC 之间的连接类型,这取决于。如果我在家,它们将通过蓝牙或 wifi 连接。如果设备相距很远,则应通过 Internet 进行通信(假设两个设备都具有活动的 Internet 连接),并且我不想为此目的使用任何 3rd 方 API 和应用程序(如果可能没有它们)。

标签: server client


【解决方案1】:

您似乎不需要学习另一种语言来执行此操作,也不必使用外部应用程序和 API。您的项目从主/从架构中受益匪浅。

该项目将包含 3 个系统

  • 移动设备:这将是从设备。您想要拦截 SMS 和电话以将该信息转发到计算机。除此之外,您还希望从计算机接收命令,例如:计算机命令手机向呼叫者/联系人发送 SMS。这需要一个可以监听安卓事件的应用程序来电和短信。使用 Android 编程很容易做到这一点。

  • 计算机:您可以制作一个连接到 API 的 GUI 应用程序,并可以通过 API 向移动客户端发送和接收数据。 Python 可以完成这项工作,如果它也是用 Python 编写的,您可以连接到您的个人助理。这将是主设备。

  • 服务器 API: 电脑和手机不会直接相互通信。服务器 API 将成为他们进行通信的网关,您所需要的只是两个设备的互联网连接。这消除了使用其他类型的连接(例如蓝牙和 USB)的需要,并且您不需要将设备放在附近。如果需要实现邻近性,这将不是问题。该 API 可以使用 Python 作为推送 API 制作。一旦检测到来电或当您想通过手机从计算机发送短信时,您可以立即通知计算机。推送 API 的替代方案是 REST API 和 TCP 套接字通信的组合。

好处是:

  • 实时接收短信和电话
  • 不依赖外部应用程序和第三方 API
  • 您可以坚持使用您已经知道的编程语言
  • 轻松扩展:您可以添加更多手机

以下是系统如何通信的快速说明:

将短信/通话中的数据发送到计算机后,您可以转发信息并让个人助理处理。

您可以通过多种方式开发此项目,这是您可以进行的一种方式。

【讨论】:

  • 非常感谢。是的,我明白了,你解释得很好。我将立即开始实施。再次感谢您的精彩解释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多