通过IP /端口发送消息计算机

时间:2015-09-21 20:03:37

标签: powershell vbscript sms-gateway

我遇到了一些麻烦,很难用语言解释问题,但我会尽我所能。

我想从另一台计算机向计算机发送一条简单的消息。没有什么花哨。我做了一些研究,很多消息来源说创建一个脚本来访问Windows中的内置MSG.EXE函数(我目前在Windows 10上)但是,这似乎只能在连接到LAN的机器上运行。 / p>

根据我收集的内容,我需要创建一个处理请求的网站:从计算机A获取消息并将其发送到计算机B.我是否可以执行此操作(在Powershell或VBS中)而无需专门制作网站对吗?

我想要的是什么: 我希望计算机A向计算机B发送纯文本消息。优选地,当消息成功发送时,将出现一个消息框,显示“从:(任何人)和消息。使用MSG.EXE执行我想要的操作但是,它只适用于连接局域网的设备。我可以使用静态IP吗?如果是这样,怎么办?

其他信息:

这两台计算机不在LAN上,但已连接到Internet。

计算机A(发件人)和计算机B(收件人)各自都有一个静态IP地址,但这显然可以改变。

每台计算机都有端口。

我有一个Raspberry Pi,如果需要的话可以充当服务器“中间人”。

非常明确:有很多帖子谈论通过LAN发送消息。我不是想通过局域网发送消息。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

你为什么要这么做以及你想要它做什么,你会很模糊;主要的问题是家庭互联网连接是为连接的东西而构建的,没有什么可以连接的。

修正:

  • Port forwarding您说"传入的连接将转到此计算机或该计算机。

  • 建立双方"连接的服务,即您在互联网上的某个地方托管的网站。一台计算机连接发送消息,另一台连接以检查消息。

除此之外,下一个问题是知道要连接到互联网的哪个位置。

修正:

  • 硬编码终点。静态IP对此有好处,因为the definition of a static IP是一个不会改变的地址。神秘的是,你有静态的IP可以改变,你认为这很明显'。 (??)

  • 您注册域名的DNS,计算机会查看域名以了解其中的连接位置。您使用当前IP更新DNS。

  • 您使用a free DNS service on someone else's name的DNS,并且您的服务侦听器会在其IP更改时更新。

之后,大多数人的计算机/笔记本电脑/手机大多数时间都处于关机状态或低功耗状态,而且他们的互联网连接相对不可靠,因此任何随机消息都可能赢得了回答。

修正:

  • 使用严肃的网站服务
  • 运行永远在线的计算机作为该服务
  • 处理它处于脱机状态并且消息正在消息
  • 使用电子邮件等存储转发系统,排队和重试,如电子邮件和即时消息
  

从计算机A获取消息并将其发送到计算机B.我是否可以执行此操作(在Powershell或VBS中)而无需专门为其创建网站?

是。快速回答:选择一个端口,配置站点B的调制解调器/路由器将端口转发到计算机B.打开计算机B防火墙上的端口。在计算机B上写some kind of TCP socket listener,在计算机A上写入发件人,连接到站点B的公共IP地址。

答案很长:然后喜欢编写自己的消息传递协议,错误处理,消息验证等。

替代方案:做同样的事情但转到你的rPi。听它说。不是在powershell(遗憾地)或vbscript(幸运的是),并且它通过HTTP / JSON提供消息,两个计算机都调用webrequest或invoke-restmethod并通过定期轮询发布/获取它们。