您的位置:首页 > 运维架构

IPhone手机利用Siri自动化运维思路

2019-06-23 22:13 3295 查看

前言

最近研究智能家居与Siri结合,突发奇想:运维是否也可以通过Siri去下指令?

那答案当然是肯定,简单测试一番,大概是这样的画风:

对着Siri说相对应的执行对象与方法,脚本执行后,返回结果,Siri读出执行返回结果。

思路

  • 使用Apple

    快捷指令
    做脚本逻辑。

  • 脚本执行触发现有运维平台,平台根据内容去做运维处理操作。

实现

打开

快捷指令

编辑流程

  • 听写文本

    语言 中文
    停止聆听

    较短暂暂停之后

  • 获取变量

    变量

    听写的文本

  • 文本

    输入

    运维平台
    API

  • 获取URL内容

    方法POST
    POST内容使用:

    听写的文本

  • 从HTML制作多信息文本
  • 朗读文本

代码部分

简单的Demo(使用

Django
做简单的API,为演示方便,直接返回结果)

class Siri(APIView):
def post(self, request):
# 引入正则
from re import compile

# 正则
_re_server = compile(u'(?<=查看)\d+(?=服务器)')
_re_func   = compile(u'(?<=服务器)\S+')

# 获取参数
request_data = request.data.get('data','')
try:
server     = _re_server.search(request_data).group()
func       = _re_func.search(request_data).group()
if func == u"磁盘空间":
request_info  = "%s服务器磁盘空间可用率百分之百" % server
return HttpResponse(request_info)
except:
return HttpResponse('error')

快捷指令POST后,data文本内容为

查看xxx服务器磁盘空间

用正则截取服务器。
同样用正则截取服务器后面的方法。
直接返回。

后记

配置好

快捷指令
绑定为
自动化运维
,这样你对Siri说出
自动化运维
时,它会执行脚本,脚本执行后,再把需要执行的东西转化为数据POST到后端运维平台。

至此以后运维画风可能是这样:

  • 某天健身房跑着步,收到电话告警,发现是某某服务挂了,对着Siri喊一下

    重启某某服务
    ,服务就这样重启了,从此简单故障不需要带笔记本外出。

  • 每天早晨起床,对着Siri喊一下
    查询昨天凌晨告警
    ,Siri就自动报告昨天夜里凌晨发生的事情。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: