gpt4 book ai didi

python - 通过电子邮件使用 RPC?

转载 作者:太空宇宙 更新时间:2023-11-03 15:27:55 25 4
gpt4 key购买 nike

谁能告诉我他们是如何以某种形式做到这一点的,无论是 XML-RPC、SOAP、定制等。不要太担心数据包格式。

我有兴趣通过电子邮件执行某种 RPC,设置一个程序以通过电子邮件从另一个应用程序或订阅列表中的用户接收命令。基本上这个想法是你给某人一个电子邮件地址,然后将消息发送到事件命令,并且响应返回到电子邮件中。一个很好的例子可能是国际象棋程序,其中时间无关紧要,但交付就是一切,而且移动的顺序是给定的。

我最感兴趣的是其他人的经历,尤其是电子邮件的性质以及我应该注意的任何特殊行为。

我对 RPC over Message Queues 和异步传递有相当多的经验,但我想提出一个解决方案,将通信转移到 hotmail 或 gmail,释放我的服务器和异步内部通信的麻烦.

最佳答案

我已经在使用 Google AppEngine 和 Python 执行此操作。这真的很简单。

在您的 app.yaml 文件中,您需要设置您将使用电子邮件服务并管理它们:

application: appname
version: 1
runtime: python
api_version: 1

handlers:
- url: /_ah/mail/.+
script: mail.py
login: admin

inbound_services:
- mail

然后创建一个 mail.py 文件,内容如下:

#!/usr/bin/env python

import rfc822
import logging

from google.appengine.ext import db
from google.appengine.ext import webapp
from google.appengine.ext.webapp.mail_handlers import InboundMailHandler
from google.appengine.ext.webapp.util import run_wsgi_app

class LogSenderHandler(InboundMailHandler):
def receive(self, message):
service_name, service_email = rfc822.parseaddr(message.to)
service_request = service_email.split('@').pop(0)
sender_name, sender_email = rfc822.parseaddr(message.sender)

logging.info('Service `%s` activated by `%s`.' % (service_request, sender_email))

if __name__ == '__main__':
application = webapp.WSGIApplication(
[LogSenderHandler.mapping()])
run_wsgi_app(application)

您只需发送一封电子邮件至 servicename@appname.appspotmail.com。瞧!

关于python - 通过电子邮件使用 RPC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4066513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com