首页 > 其他分享 >成功实现FaceTime拨打,FaceTime数据筛选,检测手机号是否开通FaceTime的原理

成功实现FaceTime拨打,FaceTime数据筛选,检测手机号是否开通FaceTime的原理

时间:2023-07-27 13:33:48浏览次数:46  
标签:FaceTime set end 手机号 file 筛选 tell target

FaceTime是苹果公司iOS和macOS(以前称Mac OS X或OS X)内置的一款视频通话软件,通过Wi-Fi或者蜂窝数据接入互联网,在两个装有FaceTime的设备之间实现视频通话。其要求通话双方均具有装有FaceTime的苹果设备,苹果ID以及可接入互联网的3G/4G/5G或者Wi-Fi网络。

 

一、Windows电脑上部署苹果系统(Mac OS)来实现FaceTime的正常使用:
/* 苹果的生态是一套完整的闭环,每一个苹果硬件产品都有独一无二的序列号、主板序列号和 UUID,它们都有和机型ID对应的编码规则,这点是非常确定的,所以三码不能胡乱套用,换句话说,不论是本地电脑U盘安装苹果系统、镜像恢复安装苹果系统、Vmware安装苹果系统,你所安装的苹果系统都必须和你当前电脑的机型、CPU架构、主板、显卡等硬件配套,并且与机型 ID 匹配。否则你将无法使用App id激活iMessage、FaceTime、App Store等应用 或 App id登录iMessage应用后提示鉴定错误、激活后闪退、激活imessage后无法发送、发送几封后无法送达等等问题。*/
1.U盘安装苹果系统,刻录U盘进行安装是主流选择,这样安装调试好的黑苹果Mac os问题最少,也较为稳定: 下载黑苹果安装镜像 → 刻录到U盘 → 调整配置文件 → 格式化准备好的硬盘 → 重启修改BIOS设置 → 使用U盘引导 → 安装黑苹果到目标硬盘 → 进入系统后调试

2.镜像恢复安装苹果系统,在Windows下使用镜像恢复软件安装:下载恢复版镜像 → 重启修改BIOS设置 → 安装镜像恢复软件 → 格式化准备好的硬盘 → 拷贝EFI文件 → 执行镜像恢复 → 添加UEFI启动项 → 进入系统后调试。

3.Windows下通过安装Vmware虚拟机,在Vmware虚拟机下安装Mac OS苹果系统,通过特定工具以及技术洗白苹果(安装的苹果系统都必须和你当前电脑的机型、CPU架构、主板、显卡等硬件配套,并且与机型 ID 匹配。否则你将无法使用App id激活FaceTime应用或App id登录FaceTime应用后提示鉴定错误、无法登陆、、无法拨打等等问题。)

 

 
二、FaceTime激活、检测指定的数据是否开通了Facetime
1.激活FaceTime应用
(1)首先确定你的苹果系统能正确的加载并识别音响、耳机、摄像头等硬件设备。

(2)使用app id登录FaceTime应用

 

(3)确认App id是否正确且成功的激活了Mac OS苹果系统上的 FaceTime应用

(4)输入开通了FaceTime应用的手机号或邮箱号app id进行语音或者视频通话.

 

2.实现全自动检测手机号或邮箱号App ID是否启用或开通FaceTime(自动检测导入的txt数据, 开通的数据自动保存,有偿提供源码或脚本程序联系纸飞机:@fz66168 )
/*  注意:检测不同国家手机号需要在手机号的前缀 +国家代码即可 */
电脑版检测脚本代码示例:
  1 --get_ui()
  2 facetime()
  3 
  4 
  5 --获取facetime应用所有ui
  6 on get_ui()
  7     tell application "FaceTime" to activate
  8     tell application "System Events"
  9         tell process "FaceTime"
 10             tell window 1
 11                 entire contents
 12             end tell
 13         end tell
 14     end tell
 15 end get_ui
 16 
 17 
 18 
 19 on facetime()
 20     tell application "Finder" to activate
 21     
 22     tell application "Finder"
 23         set chosenfile to (choose file)
 24     end tell
 25     
 26     
 27     tell application "FaceTime"
 28         tell application "FaceTime" to activate
 29         
 30         set phoneData to read chosenfile
 31         set cards to paragraphs of phoneData
 32         repeat with phone in cards
 33             
 34             set num to the length of phone
 35             if (num > 0) then
 36                 my check_data(phone)
 37                 delay 1
 38             end if
 39         end repeat
 40         
 41     end tell
 42 end facetime
 43 
 44 
 45 # 检测数据是否开通或启用facetime
 46 on check_data(phone)
 47     tell application "System Events"
 48         tell process "FaceTime"
 49             --核心代码...
 50         end tell
 51     end tell
 52 end check_data
 53 
 54 
 55 
 56 -- 记录有效数据
 57 on WritePhone(the_phone)
 58     set num to the length of the_phone
 59     if (num > 0) then
 60         set fileName to date string of (current date)
 61         set logFilePath to my current_folder_path() & "success/检测成功的FaceTime数据.txt"
 62         set this_file to (POSIX file logFilePath as string)
 63         set this_story to the_phone & "
 64 "
 65         try
 66             set fp to open for access this_file
 67             set myText to read fp
 68             
 69             if (myText does not contain the_phone) then
 70                 my write_to_file(this_story, this_file, true, true)
 71             end if
 72         on error
 73             my write_to_file(this_story, this_file, true, true)
 74         end try
 75     end if
 76 end WritePhone
 77 
 78 
 79 
 80 -- 写入文件
 81 on write_to_file(this_data, target_file, append_data, append_end)
 82     try
 83         set the target_file to the target_file as text
 84         set the open_target_file to ¬
 85             open for access file target_file with write permission
 86         
 87         if append_data is false then
 88             set eof of the open_target_file to 0
 89             write this_data to the open_target_file starting at eof
 90         else if append_end is false then
 91             try
 92                 set fp to open for access target_file
 93                 set myText to read fp
 94                 set eof of the open_target_file to 0
 95                 write this_data to the open_target_file starting at eof
 96                 write myText to the open_target_file starting at eof
 97             on error
 98                 write this_data to the open_target_file starting at eof
 99             end try
100         else
101             write this_data to the open_target_file starting at eof
102         end if
103         
104         close access the open_target_file
105         return target_file
106     on error
107         try
108             close access file target_file
109         end try
110         return false
111     end try
112 end write_to_file
113 
114 
115 -- 获取当前文件的父文件夹路径
116 on current_folder_path()
117     set UnixPath to POSIX path of ((path to me as text) & "::")
118     return UnixPath
119 end current_folder_path

(1)检测导入的数据文件默认0.5秒-1秒检测一条数据,有意者可联系.

 

标签:FaceTime,set,end,手机号,file,筛选,tell,target
From: https://www.cnblogs.com/bf66168/p/17584632.html

相关文章

  • java手机号正则
    /**是否有效手机号码@parammobileNum@return*/publicstaticbooleanisMobileNum(StringmobileNum){if(null==mobileNum){returnfalse;}returnmobileNum.matches("^((13[0-9])|(14[0-9])|(19[0-9])|(16[0-9])|(15[^4,\\D])|(17[0-9])|(18......
  • DataFrame筛选多行和多列
    Dataframe筛选多行在实际数据筛选的时候,有时候需要选择多行,例如,有一个列表数据,需要在Dataframe里筛选,某列中在列表数据中的行。在这种情况下可以使用isin语法。具体如下:obj_df=df[df['obj_col'].isin(obj_list)]#筛选的行non_obj_df=df[~df['obj_col'].isin(obj_list)]......
  • 基础手札丨筛选(修订)
    ——“虽然辛苦,我还是会选择那种滚烫的人生。”——北野武继续做**@新云**大佬留的题目——常见的筛选套路。如图,一共是三个数据表格,分别是产品表、分店表以及销售明细表。题目一:筛选出销售明细表中的商品名称。仔细看数据其实不难发现,有很多重复值......
  • 销售需求丨多列判定筛选(三)
    哈喽,小伙伴们,大家好啊~本期呢,咱们来继续研究多列判定筛选。可能有的小伙伴说了,咦?这个话题不是之前已经说过两期了么?怎么这次还继续呢?严格来说,这个话题虽然说了两期了,但是还没结束,因为延伸出来的东西比较多。话不多说,数据图如下:依然采用之前的案例数据。需求还是一如既往:根据每个人......
  • 阅读圣经丨筛选上下文与行上下文
    最近白茶在读《圣经第二版》,再加上有很多小伙伴问过白茶总计栏显示不合理的地方,白茶决定抽出一期来描述一下上下文。(坦白说,这个地方不太好说,因为白茶对于一些地方理解的也不是很到位,只能说是一家之言。小伙伴们权当白茶瞎咧咧就好,别去较真,也请各位大佬收起手中的大刀。)先来看看本期......
  • element-ui表格实现表头快速筛选
        filterChange(obj){console.log('obj',obj)constkeys=Object.keys(obj)constvalues=Object.values(obj)console.log('keys',keys)console.log('values',values)letpltKeys=......
  • LECTOR 621阅读器用于料盘读码和筛选调试实例
    第一部分:现场需求/问题描述 客户样品为卷料盘,料盘上有一张白色标签和一个粉色标签,白色标签上有4个一维码及一个二维码(QR码),粉色标签上有一个一维码 客户要求静态读取粉色标签上一维码和白色标签QR码,客户要求在没有粉色标签的时候输出二维码,在有粉色标签的情况下既输......
  • antd+vue3 tree-select 组件库 筛选结果不正确的问题
    第一次遇到这种带搜索框的下拉树状列表搜索关键字的时候出现我不想要的结果。我感觉组件它只是搜索一级列表而没有搜索二级列表,然后一节列表把它整个的二级列表带出来了。二级列表里边包含搜索关键字的所有item才是我想要的。相关代码:1<!--页面名称-->2<div......
  • java验证手机号码是否正确的代码
    用Java验证手机号码是否正确在现代社会中,手机号码已经成为我们日常生活中不可或缺的一部分。为了确保输入的手机号码的有效性,我们通常需要对其进行验证。在本文中,我们将学习如何使用Java编写一个简单的程序来验证手机号码的有效性,并提供一些常见的验证技巧。验证手机号码格式首......
  • ASP.NET Core SignalR 系列(四)- 中心筛选器
    本章将和大家分享ASP.NETCoreSignalR中的中心筛选器。本文大部分内容摘自微软官网:https://learn.microsoft.com/zh-cn/aspnet/core/signalr/hub-filters?view=aspnetcore-7.0废话不多说,下面我们直接进入本章主题。中心筛选器:在ASP.NETCore5.0或更高版本中可用。允许......