运行python函数的slackbot
我正在创建一个Slack机器人,我已经成功地安装了它,尽管我不能100%确定当我在本地运行节点服务器时,ngrok如何运行它。我有 我有一个python脚本:运行python函数的slackbot,python,node.js,slack,ngrok,Python,Node.js,Slack,Ngrok,我正在创建一个Slack机器人,我已经成功地安装了它,尽管我不能100%确定当我在本地运行节点服务器时,ngrok如何运行它。我有 我有一个python脚本: 连接到数据库 下载整个表并创建一个数据框 在脚本中,我声明了许多变量,这些变量从数据帧获取特定信息 例如: monday_sales = sum((df['sale_event_time']>=week) & (df['sale_event_time']<=today_real) & ((df['sale_ev
monday_sales = sum((df['sale_event_time']>=week) & (df['sale_event_time']<=today_real) & ((df['sale_event_time'].apply(lambda x:x.isoweekday()))==1))
然后我在本地运行节点服务器(?)
当我在slack中运行/ngrok
时,它会打印出“我的机器人是AliiIveeeee的,尽管只有我可以看到”
因此,这个问题可以分成几个部分:
非常感谢您的建议。我认为您最好的选择是放弃本教程和节点,因为您似乎只将其用作
ngrok
包装器。相反,由于您的bot的其余部分是用Python编写的,所以只需使用pyngrok
(完全公开,我是开发人员),它是ngrok
的Python包装器。它让你可以通过程序访问隧道和其他一切
如果这解决了您的用例,您可以查看文档。ngrok只需将本地主机转发(隧道)到您的网络之外即可访问。ngrok为您提供一个url,您可以访问该url以远程访问服务器。该指南适用于node.js,但您不需要node来运行slackbot。可以很好地使用纯Python。以下是指南:如果你想像@Joel解释的那样在本地运行你的机器人,你确实需要ngrok。Slack的许多功能都需要向您的机器人发出HTTP请求。只有当你的机器人可以从互联网上访问时,这才有效。
./ngrok http 4390
var http = require('http');
const PORT=4390;
function handleRequest(request, response){
response.end('My bot is ALIIIIIIVEEEEE');
}
var server = http.createServer(handleRequest);
server.listen(PORT, function(){
console.log("Server listening on: http://localhost:%s", PORT);
});